
Flume
flume是一个分布式、可靠、和高可用的海量日志采集、聚合和传输的系统。支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(比如文本、HDFS、Hbase等)的能力 。
围城客
coder
展开
-
Flume Sink组、Sink处理器
Flume Sink组、Sink处理器前言Sink运行器(Sink Runner)运行一个Sink组(Sink Group),Sink组可以含有一个或多个Sink。如果组中只存在一个Sink,那么没有组将会更有效率。Sink运行器仅仅是一个询问Sink组(或Sink)来处理下一批事件的线程。每个Sink组有一个Sink处理器(Sink Processor),处理器选择组中的Sink之...原创 2019-11-13 22:34:43 · 1018 阅读 · 0 评论 -
Flume的Channel分类
channel可以理解为一种临时的存储,source将event放入channel ,sink取走它。flume提供了四种可以用于生产环境的channel。1.Memory Channel基于内存的channel,实际就是将event存放于内存中一个固定大小的队列中。其优点是速度快,缺点是可能丢失数据。可配置属性如下:属性 默认 说明 type – 这里为...原创 2019-11-13 22:30:17 · 6778 阅读 · 0 评论 -
Flume的Sink类型
1、HDFS Sink该sink把events写进Hadoop分布式文件系统(HDFS)。它目前支持创建文本和序列文件。它支持在两种文件类型压缩。文件可以基于数据的经过时间或者大小或者事件的数量周期性地滚动。它还通过属性(如时间戳或发生事件的机器)把数据划分为桶或区。上述配置会将时间戳降到最后10分钟。例如,带有11:54:34 AM,June 12,2012时间戳的event将会造成...原创 2019-11-13 22:23:21 · 6427 阅读 · 0 评论 -
Flume的source类型
1、Avro类型的Source:监听Avro端口来接收外部avro客户端的事件流。avro-source接收到的是经过avro序列化后的数据,然后 反序列化数据继续传输。所以,如果是avro-source的话,源数据必须是经过avro序列化后的数据。利用Avro source可以实现多级流动、扇出流、扇入流等效果。接收通过flume提供的avro客户端发送的日 志信息。2、Ex...原创 2019-11-13 21:55:50 · 6905 阅读 · 0 评论 -
Flume的事务和可靠性级别
1.Flume的事务Flume使用两个独立的事务分别负责从soucrce到channel,以及从channel到sink的事件传递。一旦事务中所有的事件全部传递到channel且提交成功,那么source就将该文件标记为完成。同理,事务以类似的方式处理从channel到sink的传递过程,如果因为某种 原因使得事件无法记录,那么事务将会回滚。且所有的事件都会保持到channel中,等待重新传递。...原创 2019-11-12 23:09:09 · 334 阅读 · 0 评论 -
日志采集Flume介绍
Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统。Flume基于流式架构,灵活简单。Flume的优点可以和任意存储进程集成。 输入的的数据速率大于写入目的存储的速率,flume会进行缓冲,减小hdfs的压力。 flume中的事务基于channel,使用了两个事务模型(sender + receiver),确保消息被可靠发送。Flum...原创 2019-11-12 22:07:59 · 161 阅读 · 0 评论