Flume原理
来源:互联网 发布:成年后不喜欢读书 知乎 编辑:程序博客网 时间:2024/05/22 21:12
Point 1:什么是Flume?
Flume是Cloudera公司的一款高性能、高可能的分布式日志收集系统。现在已经是Apache Top项目。Github地址。同Flume相似的日志收集系统还有Facebook Scribe,Apache Chuwka,Apache Kafka(也是LinkedIn的)
Point 2:
Flume传输的数据的基本单位是event,如果是文本文件,通常是一行记录,这也是事务的基本单位。
Point 3:Flume的组成部分
flume运行的核心是agent。它是一个完整的数据收集工具,含有三个核心组件,分别是source、channel、sink。Event从Source,流向Channel,再到Sink,本身为一个byte数组,并可携带headers信息。Event代表着一个数据流的最小完整单元,从外部数据源来,向外部的目的地去。
Source:完成对日志数据的收集,分成transtion 和 event 打入到channel之中。
Channel:主要提供一个队列的功能,对source提供中的数据进行简单的缓存。
Sink:取出Channel中的数据,进行相应的存储文件系统,数据库,或者提交到远程服务器。通过这些组件,event可以从一个地方流向另一个地方,如下图所示。
Point 4:
Source消费从外部流进的Events,如AvroSource接收外部客户端传来的或是从别的agent流出来的Avro Event。Source可以把event送往一个或多个channel。channel是一个队列,持有event等待sink来消费,一种Channel的实现:FileChannel使用本地文件系统来作为它的存储。Sink的作用是把Event从channel里移除,送往外部数据仓库或给下一站agent的Source,如HDFSEventSink送往HDFS。同个agent下的source和sink是异步的
Point 5:
多agent模式:
多对一模式:
一对多模式:
- Flume原理
- Flume原理
- Flume 原理和使用
- Flume-ng原理
- Flume内部原理
- flume介绍及其原理
- Flume运行原理
- flume介绍与原理
- flume-ng原理介绍
- flume介绍与原理
- flume介绍与原理
- flume 介绍与原理
- Flume-ng ThriftSource原理分析
- flume的原理和使用
- flume的原理和使用
- flume的原理和使用
- flume介绍及原理总结
- Hadoop-->Flume原理与应用
- Linux内核之双向通信Socketpair
- Faster RCNN算法详解
- bootstrap-datetimepicker年视图中endDate设置之后比正常时间提前两个月
- mybatis报Could not find result map java.lang.String
- android recyclerview
- Flume原理
- BZOJ4815: [Cqoi2017]小Q的表格
- Unity3D 如何在退出运行模式后保存修改数据
- CSUACM小组的成绩排名(用qsort函数对double排序需谨慎)
- Android 同步和消息机制
- 心电图各波及波段的组成
- 内存碎片/内存空洞
- UESTC 数据结构专题训练 D,E,F
- 【STM32F103攻城笔记】STM32之MDK(Keil)环境搭建(一)