Kafka与Flume的异同点

Kafka和flume作为数据采集通道的区别:
将数据从某一个数据源导入HDFS或者HBase,Kafka是一个半成品,需要自己完成消费者程序的编写,而flume只需要改配置就可以导数据进入HDFS或者HBase,相当于Flume自身包含了消费者程序,不需要程序员去开发。另外,Flume自带的interceptors也可以用来处理数据,而Kafka如果要处理数据还需要接入外部流处理系统,比如storm,spark等。

所以实际生产中,通常是外部数据源采数据到Kafka,Kafka再通过Flume导数据到HDFS。为什么不直接将外部数据源接入Flume,这是因为Kafka可以实现多生产者和多消费者,可以接入外部各种各样的数据源,同时Kafka可以同时接入Flume之外的其他数据导入系统,这样以后扩展更灵活。

你可能感兴趣的:(大数据,Kafka,Flume,Kafka与Flume,Flume与HDFS,Flume与HBase)