flume组件汇总 source、sink、channel
Flume Source
| Source类型 | 说明 |
| Avro Source | 支持Avro协议(实际上是Avro RPC),内置支持 |
| Thrift Source | 支持Thrift协议,内置支持 |
| Exec Source | 基于Unix的command在标准输出上生产数据 |
| JMS Source | 从JMS系统(消息、主题)中读取数据,ActiveMQ已经测试过 |
| Spooling Directory Source | 监控指定目录内数据变更 |
| Twitter 1% firehose Source | 通过API持续下载Twitter数据,试验性质 |
| Netcat Source | 监控某个端口,将流经端口的每一个文本行数据作为Event输入 |
| Sequence Generator Source | 序列生成器数据源,生产序列数据 |
|
Syslog Sources syslogtcp multiport_syslogtcp syslogudp |
读取syslog数据,产生Event,支持UDP和TCP两种协议 |
| HTTP Source | 基于HTTP POST或GET方式的数据源,支持JSON、BLOB表示形式 |
| Legacy Sources |
兼容老的Flume OG中Source(0.9.x版本) |
| Avro Legacy Source |
|
| Thrift Legacy Source |
|
| Scribe Source |
|
| Custom Source |
自定义Source |
Flume Sink
| Sink类型 | 说明 |
| HDFS Sink | 数据写入HDFS |
| 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,试验性质的 |
| Custom Sink | 自定义Sink实现 |
Flume Channel
| Channel类型 | 说明 |
| Memory Channel | Event数据存储在内存中 |
| JDBC Channel | Event数据存储在持久化存储中,当前Flume Channel内置支持Derby |
| File Channel | Event数据存储在磁盘文件中 |
| Spillable Memory Channel | Event数据存储在内存中和磁盘上,当内存队列满了,会持久化到磁盘文件(当前试验性的,不建议生产环境使用) |
| Pseudo Transaction Channel | 测试用途 |
| Custom Channel | 自定义Channel实现 |
Channel Selector
Sink Processor
Event Serializer
Event Deserializers
在source组件上指定,反序列化,将输入(文件、流)解析成event的方式,
| Deserializer类型 | 说明 |
| LINE | 默认值,将文本输入的每行转换成一个event |
| AVRO | 读取avro文件,将其中的每条avro记录转换成一个event,每个event都附带着模式信息 |
| BlobDeserializer | 将整个二进制大数据转换成一个evnt,通常一个BLOB就是一个文件,比如PDF、JPG |
比如:
|
1
2
|
a1.sources=s1a1.sources.s1.deserializer=LINE |
注意:
LINE有个设置每行字符个数的属性:deserializer.maxLineLength,默认是2048,大于这个字符数的行将被截断。
BlobDeserializer有个设置文件大小的属性:deserializer.maxBlobLength默认是100000000(大约95M),大于这个值的文件将被拆分成多个文件。
Event Serializers
在sink组将上指定,序列化,将event对象转换成文件的方式。
| Serializer类型 | 说明 |
| TEXT(Body Text Serializer) | 默认值,将event中body里的数据不做改变的转换成输出流,event的header将被忽略 |
| AVRO_EVENT(Avro Event Serializer) | 将event转换成avro文件 |
| BlobDeserializer | 将整个二进制大数据转换成一个evnt,通常一个BLOB就是一个文件,比如PDF、JPG |
Interceptor
拦截器可以修改或删除event。
拦截器可以组成拦截器链,中间用空格分隔,拦截器的配置顺序即是它们的执行顺序。
| Handler类型 | 说明 |
| Timestamp Interceptor |
向event header中添加了timestamp变量,值是时间戳 |
| Host Interceptor |
向event header中添加了host变量,可以通%{host}引用(比如在HDFS sink中的路径占位符) |
| Static Interceptor |
配置一个静态的值到event header里,多个静态值需要配多个static interceptor |
| UUID Interceptor |
向event header里添加变量id,值是随机生成的uuid,可以用这个唯一标识一个event |
| Morphline Interceptor |
使用morphline配置文件过滤event。 |
| Regex Filtering Interceptor |
使用正则表达式过滤(include或exclude)event。 |
| Regex Extractor Interceptor | 使用正则表达式来向header中添加key、value。 |
配置实例:
|
1
2
3
4
5
6
|
a1.sources=s1...a1.sources.s1.interceptors=i1 i2a1.sources.s1.interceptors.i1.type=hosta1.sources.s1.interceptors.i1.hostHeader=hosta1.sources.s1.interceptors.i2.type=timestamp |
type可以是全限定类名或者是别名
flume组件汇总 source、sink、channel的更多相关文章
- Flume组件汇总2
Component Interface Type Alias Implementation Class org.apache.flume.Channel memory org.apache.flume ...
- Flume组件
1.什么是Flume:apache顶级项目,主要用来做数据采集.分布式.高可用,将海量日志进行采集.聚合.传输的系统.能够对数据进行简单处理在发送到接收方. 2.Flume组件:source.chan ...
- Flume NG中的Kafka Channel
kafka(官网地址:http://kafka.apache.org)是一款分布式消息发布和订阅的系统 在Flume中的KafkaChannel支持Flume与Kafka整合,可以将Kafka当做ch ...
- Hadoop生态圈-Flume的组件之自定义Sink
Hadoop生态圈-Flume的组件之自定义Sink 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客主要介绍sink相关的API使用两个小案例,想要了解更多关于API的小技 ...
- Hadoop生态圈-Flume的主流source源配置
Hadoop生态圈-Flume的主流source源配置 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客只是配置的是Flume主流的Source,想要了解更详细的配置信息请参 ...
- Flume实时监控目录sink到hdfs,再用sparkStreaming监控hdfs的这个目录,对数据进行计算
目标:Flume实时监控目录sink到hdfs,再用sparkStreaming监控hdfs的这个目录,对数据进行计算 1.flume的配置,配置spoolDirSource_hdfsSink.pro ...
- 【Hadoop】10、Flume组件
目录 Flume组件安装配置 1.下载和解压 Flume 2.Flume 组件部署 3.使用 Flume 发送和接受信息 Flume组件安装配置 1.下载和解压 Flume # 传Flume安装包 [ ...
- Flume 组件安装配置
下载和解压 Flume 实验环境可能需要回至第四,五,六章(hadoop和hive),否则后面传输数据可能报错(猜测)! 可 以 从 官 网 下 载 Flume 组 件 安 装 包 , 下 载 地 址 ...
- 泛函编程(36)-泛函Stream IO:IO数据源-IO Source & Sink
上期我们讨论了IO处理过程:Process[I,O].我们说Process就像电视信号盒子一样有输入端和输出端两头.Process之间可以用一个Process的输出端与另一个Process的输入端连接 ...
随机推荐
- 声反馈抑制使用matlab/simulink仿真
第一份工作时做啸叫抑制的仿真,调大0.3可以有大的啸叫产生,下图的SIMULINK仿真模型 实现移相有多种方法: 1.iir实现 2.FFT实现 3.使用FIR实现 所有信号均可以由正弦信号叠加而成.
- C语言中全局结构体指针隐含的错误
前天在嵌入式系统上,调试一个数组的全局变量时,发现该变量一直会动态变化.深入分析, 才发现该全局结构体没有申请内存,而是用了一个指针.这种情况编译器是检查不出来的,在linux 上运行会挂掉,但是在裸 ...
- NHibernate删除数据时遇到deleted object would be re-saved by cascade级联问题
今天在处理数据时遇到了这个问题,数据是一对多的关系,A包含多个B,想将某个B从A中移除,在保存时抛出如标题的问题,查找了下资料得知:由于在配置文件中设置了cascade为all,A和B存在级联关系,那 ...
- Spring Boot定制启动图案
启动图案 Spring Boot在启动的时候会显示一个默认的Spring的图案,对应的类为SpringBootBanner. . ____ _ __ _ _ /\\ / ___'_ __ _ _(_) ...
- Keras 资源
Keras中文文档 github Keras example 官方博客 A ten-minute introduction to sequence-to-sequence learning in Ke ...
- [CTSC1999] 家园
使用并查集判断无解. 令月球是n+1,地球是0 枚举时长t,将点(地球.月球以及太空站)i拆为t个点(i,j)表示第j时刻的点i. 对于太空船云云建图,容量是h[i]. 源点S和(0,0)连边,容量k ...
- Oracle.ManagedDataAccess 提示ORA-01017 错误【解决方案】
Oracle.ManagedDataAccess 提示ORA-01017 错误[解决方案] Oracle.ManagedDataAccess 提示ORA-01017 错误[解决方案] [HKEY_LO ...
- Spring Boot + Spring Cloud 实现权限管理系统 后端篇(二十四):权限控制(Shiro 注解)
在线演示 演示地址:http://139.196.87.48:9002/kitty 用户名:admin 密码:admin 技术背景 当前,我们基于导航菜单的显示和操作按钮的禁用状态,实现了页面可见性和 ...
- solr单机部署tomcat
所需软件:solr4.8.1.Tomcat7 下载完相应软件后开始单机部署(windows下) 在F盘根目录创建solr文件夹,并解压solr4.8和tomcat7到该文件夹 在F盘根目录创建solr ...
- BizTalk 新增/修改/删除 XmlDocument 名字空间的高效方法
新增一个名字空间 public class AddXmlNamespaceStream : XmlTranslatorStream { private String namespace_; priva ...