Flume

Flume clouder公司开源的产品
Flume 公司设计的目标
可靠性:当节点发生故障时候,日志能够被传送到其他节点而不丢失,Flume提供三种可靠性保障:
1.end-to-end(exactly once)
2.store on failure(当数据接收方crash时,将数据写到本地,带恢复后,继续发送)
3.best effort (数据发送到接收方后,不会进行确认)
可扩展性:采用三层架构
source,channel,sink 每一层军可以水平扩展
可管理性:均由agent 管理
类似的开源系统有 logstash,fluentd,chukwa,scrib和kafka
logstash主要和elasticsearch,kibana结合使用俗称elk框架
logstash 主要负责将数据源的数据转换成elasticsearch 认识的索引结构kibana查询
fluentd 和flume内部结构一样,使用ruby开发,但存在跨平台性
flume 能够支持多种数据源并且输出到多种输出源,支持多种数据格式
source主要链接输入源
channel 是flume内置数据传输通道
sink 用来链接数据源

输入源可以但不仅限于此:
avro :apache 旗下用于序列和反序列化的,rpc 工具
thrift:facebook 开源的RPC的工具
EXEC:unix命令的输出
JMS: java message service
KAFKA
netcat
syslog :记录系统的日志
等等

sink 输出源
hdfs
hive
avro:序列与反序列,RPC工具
thrift:RPC 工具
file Roll:存储到文件
Hbase
elasticSearch 不如logstash 丰富
kafka
自定义的等等

你可能感兴趣的:(Flume)