Flume学习笔记01
一. 简介
Flume是apache的一个数据收集框架;
Source——channel——sink
生产者——仓库——消费者
二。具体概念定义:
-
Client:生产数据,运行在一个独立的线程
-
Event:=一个数据单元=消息头+消息体(例如:Avro对象,日志记录)
-
Flow:Event从源点到目的点的迁移的抽象(过程)
-
Agent:一个独立的Flume进程;组件有Source,sink,Channels;
-
Source:数据收集的组件;从client获得数据传递给Channel;
数据类型:avro,thrift, exec, jms, spooling dtrectory, netcat, sequence generator, syslog, http, legacy ,自定义。 -
Channel:中转Event的一个临时存储;Channel链接Source和sink; 存储地:memory , jdbc, file等
7.Sink:从Channel中读取并转移数据,把Event传递给FlowPipeline中的下一个Agent(如果有,Sink从Channel收集数据,运行在一个独立线程) 要把数据送到目的地:
目的地:hdfs, logger, avro, thrift, ipc, file, null, Hbase, solr, 自定义