1. HDFS Sink: 将Event写入HDFS文件存储,能够有效长期存储大量数据。
2. Kafka Sink: Flume通过Kafka Sink将Event写入到Kafka中的主题,其他应用通过订阅主题消费数据。kafka.producer.acks可以设置Producer端发送消息到Broker之后不需要等待Broker返回成功送达的信号。
0表示 Producer 发送消息到 Broker 之后不需要等待 Broker 返回成功送达的信号,这种方式吞吐量高,但存在丢失数据的风险。
1表示 Broker 接收到消息成功写入本地 log 文件后向 Producer 返回成功 接收的信号,不需要等待所有的 Follower 全部同步完消息后再做回应,这种方式在数据丢失风险和吞吐量之间做了平衡。
-1表示Broker接收到Producer的消息成功写入本地log并且等待所有的 Follower成功写入本地log后向Producer返回成功接收的信号,这种方式能够保证消息不丢失,但是性能最差(层层递进)。