一、背景
1.使用场景
Flume和Kafka都是Apache的开源项目。
(1) Flume
支持的数据源较多、可自定义网络请求的安全配置(filter)
适合下游数据消费者不多的情况;(一个消费者开一个channel) 适合数据安全性要求不高的操作;(数据没有备份、没有副本) 适合与Hadoop生态圈对接的操作。(HDFS、Hbase等)
(2) Kafka
高负载、高可用、数据安全性高
适合数据下游消费众多的情况;(kafka从磁盘读,并且只找Leader读) 适合数据安全性要求较高的操作,支持replication(多副本)
2.只使用Flume的缺点
(1) 没有提供高可用机制(整合ZooKeeper)。当然,可以自行实现,但增加了成本
(2) 多数场景是配置成把数据保存在内存,如果内存爆了或突然宕机,数据容易丢失
(3) 如果配置成把数据保存在硬盘,没有分区(Partition)和冗余副本(Replication),大数据场景不适合单独使用
3.只使用Kafka的缺点
(1) 旧版本的Kafka的接收端性能比Flume差
(2) 支持接收的数据源没Flume多
(3) 没有内置的过滤器(filter),例如,请求的过滤器。当然,可以自行实现,但增加了成本
二、预安装和部署
1.Flume的安装与部署
https://www.cnblogs.com/live41/p/15554223.html
2.Kafka的安装与部署
https://www.cnblogs.com/live41/p/15522443.html