当前位置: 移动技术网 > IT编程>数据库>其他数据库 > Flume 初探

Flume 初探

2019年09月24日  | 移动技术网IT编程  | 我要评论
Apache 是一个高可用、高可靠的,分布式的海量日志采集、聚合、传输系统,基于流式架构,灵活简单。 Flume 最主要的作用就是实时读取服务器本地磁盘的数据,将数据写入HDFS中。 Flume组成架构详解: Source输入端常用的类型有:spooling directory、exec、avro、 ...
apache 是一个高可用、高可靠的,分布式的海量日志采集、聚合、传输系统,基于流式架构,灵活简单。 flume 最主要的作用就是实时读取服务器本地磁盘的数据,将数据写入hdfs中。 flume组成架构详解: source输入端常用的类型有:spooling directory、exec、avro、syslog、netcat 等 put事务的流程: doput:将批数据先写入临时缓冲区putlist docommit:检查channel内存队列是否足够合并 dorollback;channel内存队列空间不足,回滚数据 channel是位于source和sink之间的缓冲区,flume自带两种channel:memorychannel和filechannel memorychannel是基于内存的缓存,在不需要关心数据丢失的情景下使用。 filechannel是flume的持久化channel,系统宕机不会丢失数据。 take事务: dotake:先将数据取到临时缓冲区takelist docommit:如果数据发送成功,则清除临时缓冲区的takelist dorollback:数据发送过程中如果出现异常,rollback将临时缓冲区takelist中的数据归还给channel内存队列 sink组件常见的目的地包括: hdfs、kafka、avro、logger、file、自定义。 sink不断地轮询channel中的事件且批量地移除它们,并将这些事件批量写入到存储或索引系统、或者被发送到另一个flume agent。 sink是完全事务性的。在从channel批量删除数据之前,每个sink用channel启动一个事务。批量事件一旦成功写出到存储系统或下一个flume agent,sink就利用channel提交事务。事务一旦被提交,该channel从自己的内部缓冲区删除事件。 sink组件目的地包括hdfs、logger、avro、thrift、ipc、file、null、hbase、solr、自定义。 agent是一个jvm进程,是flume数据传输的基本单元 agent主要有3个部分组成,source、channel、sink。

如您对本文有疑问或者有任何想说的,请 点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网