flume的各个组件及整体工作流程

简介:

flume的主要组件包括:

Source,SourceRunner,Interceptor,Channel,ChannelSelector,ChannelProcessor,Sink,SinkRunner,SinkProcessor,SinkSelector等

工作流程包含两个部分:

source->channel,数据由source写入channel,主动模式,主要步骤如下:
一个SourceRunner包含一个Source对象,一个Source对象包含一个ChannelProcessor对象,一个ChannelProcessor对象包含多个Interceptor对象和一个ChannelSelector对象
1)SourceRunner启动Source,Source接收Event
2) Source调用ChannelProcessor
3)ChannelProcessor调用Interceptor进行过滤Event操作
4)ChannelProcessor调用ChannelSelector对象根据配置的策略选择Event对应的Channel(replication和multiplexing两种)
5)Source将Event发送到对应的Channel中
channel->sink,数据由sink主动从channel中拉取(将压力分摊到sink,这一点类似于kafka的consumer)
一个SinkRunner对象包含一个SinkProcessor对象,一个SinkProcessor包含多个Sink或者一个SinkSelector
1)SinkRunner启动SinkProcessor(DefaultSinkProcessor,FailoverSinkProcessor,LoadBalancingSinkProcessor 3种)
2)如果是DefaultSinkProcessor的话,直接启动单个Sink
3)FailoverSinkProcessor,LoadBalancingSinkProcessor对应的是SinkGroup
4)FailoverSinkProcessor从SinkGroup中选择出Sink并启动
5)LoadBalancingSinkProcessor包含SinkSelector,会根据SinkSelector在SinkGroup中选择Sink并启动
6)Sink 从Channel中消费Event信息



本文转自菜菜光 51CTO博客,原文链接:http://blog.51cto.com/caiguangguang/1617762,如需转载请自行联系原作者

相关文章
|
18天前
bigdata-12-Flume核心组件
bigdata-12-Flume核心组件
20 0
|
6月前
|
数据采集 消息中间件 监控
大数据组件-Flume集群环境搭建
大数据组件-Flume集群环境搭建
108 0
|
6月前
|
Oracle 大数据 关系型数据库
大数据组件-Flume集群环境的启动与验证
大数据组件-Flume集群环境的启动与验证
92 0
|
11月前
|
存储 数据采集 缓存
大数据数据采集的数据采集(收集/聚合)的Flume之基本组件的Channel:临时存储数据的管道
在Flume中,Channel是数据采集和传输过程中的一个重要组件。它负责存储从Source获取的数据,并将其转发给Sink进行处理和存储。
105 0
|
11月前
|
存储 数据采集 JSON
大数据数据采集的数据采集(收集/聚合)的Flume之基本组件的Source:数据的收集端
在Flume中,Source是数据采集和传输过程中的一个重要组件。它负责从生产者获取数据并将其发送到Channel缓冲区中,为后续的数据处理和存储提供支持。
144 0
|
数据采集 JSON 监控
网站流量日志Flume收集--新组件taildir source介绍| 学习笔记
快速学习网站流量日志Flume收集--新组件taildir source介绍
140 0
网站流量日志Flume收集--新组件taildir source介绍| 学习笔记
|
存储 大数据
|
存储 JSON 负载均衡
java大数据组件Flume
flume是一个分布式、可靠、和高可用的海量日志采集、聚合和传输的系统。支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(比如文本、HDFS、Hbase等)的能力
139 0
java大数据组件Flume
|
大数据
大数据组件Flume总结(原创)
1)见思维导图         https://share.mindmanager.com/#publish/H_yLoCb7JMY6Qh6unY5qw4wtlpbDjA8xCIqlxYGd
802 0
|
Java 数据库连接 Apache
flume - 组件对象初始化过程(2)
概述  虽然在上一篇博文《flume - 启动过程分析(1)》我们已经了解了flume相关组件的配置的加载以及启动过程,但却遗漏了组件初始化的过程,也就是说缺少了根据配置生成组件的过程,这篇文章就是为了弥补这个过程。
1103 0