同样是流式数据采集框架,

flume一般用于日志采集,可以定制很多数据源,减少开发量,基本架构是一个flume进程agent(source、拦截器、选择器、channel<Memory Channel、File Channel>、sink),其中传递的是原子性的event数据;

使用双层Flume架构可以实现一层数据采集,一层数据集合;

Flume的概念、基本架构

kafka一般用于日志缓存,是一个可持久的分布式消息队列,自带存储,提供push和pull两种存储数据功能;包括producer、kafkaCluster(broker:topic、partition)、consumer,依赖于Zookeeper(brokerid、topic、partition元数据存在ZNode,partition选举leader依赖Zookeeper);

Kafka的概念、基本架构

区别点一:
flume和kafka的侧重点不同,

而flume追求的是数据和数据源、数据流向的多样性,适合多个生产者的场景;flume有自己内置的多种source和sink组件,具体操作方式是编写source、channel和sink的.conf配置文件,开启flume组件的时候用命令关联读取配置文件实现;


# 开启flume的脚本部分:$FLUME_HOME/bin/flume-ng
agent-c $FLUME_HOME/conf-f $JOB_HOME/flume-hdfs.conf-n agent-hdfs-Dflume.root.logger=info,console >$FLUME_HOME/logs/flume-hdfs.log  2>&1 &-c:flume启动读取的配置文件flume-env.sh(指定JDK路径)存储在/conf目录中
-f:编写好source、interceptor、selector、channel和sink的配置文件flume-hdfs.conf的存储目录
-n:表示给flume-hdfs.conf中的agent起名为agent-hdfs
--------------------以下可不写-------------------
-D:表示flume运行时动态修改flume.root.logger参数属性值,并将控制台日志打印级别设置为INFO级别。日志级别包括:log、info、warn、error,仅为Debug使用,生产环境一般不用

# 开启flume的脚本部分:
 
$FLUME_HOME/bin/flume-ng 
agent
 -c $FLUME_HOME/conf
 -f $JOB_HOME/flume-hdfs.conf
 -n agent-hdfs
 -Dflume.root.logger=info,
 console >$FLUME_HOME/logs/flume-hdfs.log  2>&1 &
 
-c:flume启动读取的配置文件flume-env.sh(指定JDK路径)存储在/conf目录中
-f:编写好source、interceptor、selector、channel和sink的配置文件flume-hdfs.conf的存储目录
-n:表示给flume-hdfs.conf中的agent起名为agent-hdfs
--------------------以下可不写-------------------
-D:表示flume运行时动态修改flume.root.logger参数属性值,并将控制台日志打印级别设置为INFO级别。日志级别包括:log、info、warn、error,仅为Debug使用,生产环境一般不用
console:打印日志发送路径
kafka追求的是高吞吐,高负载,同一topic下可以有多个partition,由于是pull模式拉取数据,因此适合多个消费者的场景;kafka没有内置的producer和consumer组件,需要自己编写代码。

区别点二:
flume和kafka的定位有所不同:

1. flume

cloudera公司研发,适合多个生产者;

适合下游数据消费者不多的情况;(一个消费者开一个channel)

适合数据安全性要求不高的操作;(数据没有备份、没有副本)

适合与Hadoop生态圈对接的操作。(HDFS、Hbase等)

适合生产和收集数据

2. kafka

linkedin公司研发,适合多个消费者;

适合数据下游消费众多的情况;(kafka从磁盘读,并且只找Leader读)

适合数据安全性要求较高的操作,支持replication(多副本)。

适合消费数据

因此工作中常用的一种模型是:

线上数据 --> flume --> kafka --> HDFS --> hive/MR计算

--> SparkStreaming计算

也有kafka与springboot组合,采集数据后交给sparkStreaming进行流式计算

Flume和Kafka的区别与联系相关推荐

  1. flume消费kafka数据太慢_kafka补充01

    为什么高吞吐? •写数据 –1.页缓存技术 •kafka写出数据时先将数据写到操作系统的pageCache上,由操作系统自己决定什么时候将数据写到磁盘上 –2.磁盘顺序写 •磁盘顺序写的性能会比随机写 ...

  2. 大数据开发超高频面试题!大厂面试必看!包含Hadoop、zookeeper、Hive、flume、kafka、Hbase、flink、spark、数仓等

    大数据开发面试题 包含Hadoop.zookeeper.Hive.flume.kafka.Hbase.flink.spark.数仓等高频面试题. 数据来自原博主爬虫获取! 文章目录 大数据开发面试题 ...

  3. flume与kafka应用场景解析

    今天也要努力学习 flume与kafka是同级的一个消息传输通道:但是有各自的定位 1:kafka定位消息队列,它可以有许多的生产者和消费者,并可以共享一个主题topic队列.而flume是定位数据传 ...

  4. 大数据流处理:Flume、Kafka和NiFi对比

    在构建大数据流水线时,我们需要考虑处理数据的数量,种类和速度,这些数据通常出现在Hadoop生态系统的入口.在决定采用哪种工具来满足我们的要求时,都会考虑到可扩展性.可靠性.适应性.开发时间方面的成本 ...

  5. Kafka实战-Flume到Kafka

    1.概述 前面给大家介绍了整个Kafka项目的开发流程,今天给大家分享Kafka如何获取数据源,即Kafka生产数据.下面是今天要分享的目录: 数据来源 Flume到Kafka 数据源加载 预览 下面 ...

  6. Flume整合Kafka采集滚动的日志

    背景: 从Nginx中间件采集web项目产生的滚动日志.通过本地服务器(简称:A服务)的Flume采集日志,然后传输到另外一台服务器(简称:B服务器)的Flume上,然后暂存到 B服务器 的Kafka ...

  7. kafka数据到flume_大数据摄取:Flume,Kafka和NiFi

    kafka数据到flume 初赛 在构建大数据管道时,我们需要考虑如何吸收出现在通常是Hadoop生态系统大门口的数据量,多样性和速度. 在决定采用哪种工具来满足我们的要求时,诸如可伸缩性,可靠性,适 ...

  8. 大数据摄取:Flume,Kafka和NiFi

    初赛 在构建大数据管道时,我们需要考虑如何吸收出现在通常是Hadoop生态系统大门口的数据量,多样性和速度. 在决定采用哪种工具来满足我们的要求时,诸如可伸缩性,可靠性,适应性,开发时间成本等方面的初 ...

  9. Flume与Kafka整合案例详解

    环境配置 名称 版本 下载地址 Centos 7.0 64x 百度 Zookeeper 3.4.5   Flume 1.6.0   Kafka 2.1.0   flume笔记 直接贴配置文件 [roo ...

最新文章

  1. 关于“我的边栏,我做主”——Windows Vista Gadgets大赛报名
  2. 青龙羊毛——果园合集(快手+抖音)(教程)
  3. Shell脚本攻略01-简介/终端打印
  4. 二十一 JDK注解注解案例
  5. Mac鼠标增强软件Bettertouchtool
  6. Linux软连接 删除/查看
  7. 物联网通信技术期末复习6:第六章-应用传输技术
  8. asp 服务器文件重命名,aspupload文件重命名及上传进度条的解决方法附代码
  9. Firefox 火狐下自动刷新的插件 ReloadEvery
  10. CI、CD、Pipeline 概念
  11. php计算面积,PHP中长方形的面积怎么求
  12. Java结合腾讯云实现短信验证码的发送
  13. 低版本360浏览器下,PDF.js部分文字显示不全的问题
  14. vue3-HTTP请求
  15. QingCloud Insight 2016 | 科技,洞见未来
  16. [CTF]-反弹shell[2]
  17. 怎么让input输入框最右侧一直默认有百分号
  18. 群晖NAS 7.X搭建本地web服务器并实现公网访问 1/3
  19. java 笔试题一套_软世通分享一套Java笔试题
  20. Powershell 脚本创建 iso 映像文件

热门文章

  1. 7.5kW开关磁阻电机性能及其波形
  2. 四川大学计算机研究生学习氛围,川大清退上百名研究生,校方回应
  3. python自动控制桌面_如何使用Python自动控制windows桌面
  4. 强制双休!腾讯调整加班机制,21点前必须离开工位
  5. 外贸专员简历表-Word简历可编辑下载
  6. heroku搭建邮件服务器,在Heroku上搭建简单的Python Web 应用
  7. 计算机应用基础知识点讲解微课,计算机应用基础教学应用微课的思考
  8. android打印机没反应了,安卓微信小程序蓝牙连接打印机,代码执行成功,打印机没有响应,苹果可以正常使用...
  9. LaTeX使用入门_Win10_TeXstudio
  10. gcc编译c++文件