Flume和Kafka结合使用的分析
来源:互联网 发布:软件打不开闪退怎么办 编辑:程序博客网 时间:2024/06/05 09:00
转载地址:
https://www.zhihu.com/question/36688175/answer/68692597
http://blog.csdn.net/crazyhacking/article/details/45746191
采集层 主要可以使用Flume, Kafka两种技术:
Flume:Flume 是管道流方式,提供了很多的默认实现,让用户通过参数部署,及扩展API。
Kafka:Kafka是一个可持久化的分布式的消息队列。
Kafka 是一个非常通用的系统。你可以有许多生产者和很多的消费者共享多个主题Topics。相比之下,Flume是一个专用工具被设计为旨在往HDFS,Hbase发送数据。它对HDFS有特殊的优化,并且集成了Hadoop的安全特性。所以,Cloudera 建议如果数据被多个系统消费的话,使用kafka;如果数据被设计给Hadoop使用,使用Flume。正如你们所知Flume内置很多的source和sink组件。然而,Kafka明显有一个更小的生产消费者生态系统,并且Kafka的社区支持不好。希望将来这种情况会得到改善,但是目前:使用Kafka意味着你准备好了编写你自己的生产者和消费者代码。如果已经存在的Flume Sources和Sinks满足你的需求,并且你更喜欢不需要任何开发的系统,请使用Flume。Flume可以使用拦截器实时处理数据。这些对数据屏蔽或者过量是很有用的。Kafka需要外部的流处理系统才能做到。Kafka和Flume都是可靠的系统,通过适当的配置能保证零数据丢失。然而,Flume不支持副本事件。于是,如果Flume代理的一个节点奔溃了,即使使用了可靠的文件管道方式,你也将丢失这些事件直到你恢复这些磁盘。如果你需要一个高可靠行的管道,那么使用Kafka是个更好的选择。Flume和Kafka可以很好地结合起来使用。如果你的设计需要从Kafka到Hadoop的流数据,使用Flume代理并配置Kafka的Source读取数据也是可行的:你没有必要实现自己的消费者。你可以直接利用Flume与HDFS及HBase的结合的所有好处。你可以使用Cloudera Manager对消费者的监控,并且你甚至可以添加拦截器进行一些流处理。
Flume和Kafka可以结合起来使用。通常会使用Flume + Kafka的方式。其实如果为了利用Flume已有的写HDFS功能,也可以使用Kafka + Flume的方式。
0 0
- Flume和Kafka结合使用的分析
- Flume+Kafka+Strom基于分布式环境的结合使用
- Flume+Kafka+Strom基于伪分布式环境的结合使用
- Flume+Kafka+Strom基于伪分布式环境的结合使用
- Spark Streaming和Flume的结合使用
- kafka和flume的区别和对比使用
- kafka和flume的对比
- Flume 与 kafka 配置和使用
- 日志采集系统flume和kafka有什么区别及联系,它们分别在什么时候使用,什么时候又可以结合?
- flume+kafka+storm的集成使用
- flume-ng和kafka集成的配置
- flume+kafka使用
- 使用Kafka与Flume
- kafka和flume整合
- flume和kafka区别
- Flume和Kafka整合
- flume和kafka对接
- 集成kafka和flume
- 数据结构学习(三)
- Java--JDBC连接数据库
- Lua代码翻译及预编译字节码
- vim配置及插件安装管理(超级详细)
- mybatis和hibernate本质区别和应用场景
- Flume和Kafka结合使用的分析
- 共享单车靠什么赚钱?
- LeetCode-Easy部分标签为LinkedList 83. Remove Duplicates from Sorted List
- (转)DeepMind 的下一场博弈:用机器学习颠覆资产管理?
- 来淄博旅游
- 二叉树、二叉排序树及相关遍历java实现
- 简明 VIM 练级攻略
- mysql 性能-优化服务器配置
- 基于浏览器的网站红包功能设想