flume基础(二)

Flume 的 Source、Channel和Sink的内置类型如下:

(可参考官网修改配置  http://flume.apache.org/FlumeUserGuide.html)

Flume Source

Source类型

说明

Avro Source

支持Avro协议(实际上是Avro RPC),内置支持

Thrift Source

支持Thrift协议,内置支持

Exec Source

扫描二维码关注公众号,回复: 5396326 查看本文章

基于Unixcommand在标准输出上生产数据

JMS Source

JMS系统(消息、主题)中读取数据,ActiveMQ已经测试过

Spooling Directory Source

监控指定目录内数据变更

Taildir Source

 

Twitter 1% firehose Source

通过API持续下载Twitter数据,试验性质

Kalfka Source

支持Kafka

Netcat Source

监控某个端口,将流经端口的每一个文本行数据作为Event输入

Sequence Generator Source

序列生成器数据源,生产序列数据

Syslog Sources

读取syslog数据,产生Event,支持UDPTCP两种协议

HTTP Source

基于HTTP POSTGET方式的数据源,支持JSONBLOB表示形式

Stress Source

 

Legacy Sources

兼容老的Flume OGSource0.9.x版本)

Custom Source

自定义Source实现

Scribe Source

 

注:在1.6.0版本才加入了Kafka Source。

source是被动接收数据的。

 

Flume Channel

Channel类型

说明

Memory Channel

Event数据存储在内存中

JDBC Channel

Event数据存储在持久化存储中,当前Flume Channel内置支持Derby

Kafka Channel

Event数据存储在Kafka cluster

File Channel

Event数据存储在磁盘文件中

Spillable Memory Channel

Event数据存储在内存中和磁盘上,当内存队列满了,会持久化到磁盘文件(当前试验性的,不建议生产环境使用)

Pseudo Transaction Channel

测试用途

Custom Channel

自定义Channel实现

注:flume的处理文件的速度大概在十几M每秒。

Flume Sink

Sink类型

说明

HDFS Sink

数据写入HDFS

Hive Sink

 

Logger Sink

数据写入日志文件

Avro Sink

数据被转换成Avro Event,然后发送到配置的RPC端口上

Thrift Sink

数据被转换成Thrift Event,然后发送到配置的RPC端口上

IRC Sink

数据在IRC上进行回放

File Roll Sink

存储数据到本地文件系统

Null Sink

丢弃到所有数据

HBase Sink

数据写入HBase数据库

Morphline Solr Sink

数据发送到Solr搜索服务器(集群)

ElasticSearch Sink

数据发送到Elastic Search搜索服务器(集群)

Kite Dataset Sink

写数据到Kite Dataset,试验性质的

Kafka Sink

数据写入Kafka topic

Custom Sink

自定义Sink实现

另外还有ChannelSelector、Sink Processor、EventSerializer、Interceptor等组件,可以参考官网提供的用户手册。

存储到hdfs,要注意存储速度,几十M/s。条测性能的可以扩大机器数。

 

Flume Interceptors

Interceptor类型

说明

Timestamp Interceptor

在event的header中添加一个key叫:timestamp,value为当前的时间戳。

Host Interceptor

在event的header中添加一个key叫:host,value为当前机器的hostname或者ip。

Static Interceptor

可以在event的header中添加自定义的key和value。

UUID Interceptor

 用于在每个events header中生成一个UUID字符串,生成的UUID可以在sink中读取并使用

Morphline Interceptor

 http://kitesdk.org/docs/current/morphlines/morphlines-reference-guide.html
基本相当于一个ETL 工具

Search and Replace Interceptor

Regex Filtering Interceptor

通过正则来清洗或包含匹配的events。

Regex Extractor Interceptor

通过正则表达式来在header中添加指定的key,value则为正则匹配的部分。

 

Flume Channel Selectors

If the type isnot specified, then defaults to “replicating”.

猜你喜欢

转载自blog.csdn.net/u010170616/article/details/80841001