Flume
Regan_Hoo
这个作者很懒,什么都没留下…
展开
-
Flume_Source
source的生命周期source被命名为像其他任何部件一样通过配置文件进行配置的组件。配置系统一旦验证通过一个source,就会实例化并且由configurationProvider进行配置。source一旦成功配置,flume的生命周期管理系统将会尝试启动source。只有agent自身停止或被杀死、或者agent被用户重新配置,source才会停止。Avro SourceFlume主要的RP原创 2017-12-06 10:04:05 · 467 阅读 · 0 评论 -
Flume_Channel
事务工作流Flume Channel是事务性的,由于性能的原因总是推荐每个事务有相当大数量的事件,批量写入Channel是很重要的,尤其是持久的Channel。如果sink读取完一个事件,该事件对于其他sink就是不可用的,除非回滚该sink事务。单个事务不能同时写入和读取事件。这保证了source只能往channel中放入事件,sink只能从channel中取走事件。flume自带的channe原创 2017-12-06 10:33:29 · 647 阅读 · 0 评论 -
Flume_Sink
概述从Flume Agent移除数据并写入到另一个Agent或数据存储或一些其他存储系统的组件被称为sink。Sink不断的轮询channel中的事件且批量的移除它们。这些事件批量写入到存储或索引系统,或者被发送到另一个Flume Agent。Sink是完全事务性的。在从channel批量移除数据之前,每个sink用channel启动一个事务。批量事件一旦成功写出到存储系统或下一个Flume Age原创 2017-12-06 10:45:30 · 1946 阅读 · 0 评论 -
Flume_拦截器、选择器、Sink组
拦截器(interceptor)拦截器是简单插件式组件,设置在Source和Source写入数据的Channel之间。每个拦截器实例只处理同一个Source接收到的事件。因为拦截器必须在事件写入channel之前完成转换操作,只有当拦截器已成功转换事件后,channel(和任何其他可能产生超时的source)才会响应发送事件的客户端或sink,因此在拦截器中进行大量重量级的处理并不是一个好主意。如果原创 2017-12-06 11:16:45 · 3042 阅读 · 0 评论 -
发送数据到Flume
Flume有两类发送数据到Flume Agent的程序性方法:Flume SDK和Embedded Agent API。Flume也自带有log4j appender,可以用来从应用程序发送数据到Flume Agent。1、构建Flume事件事件是Flume中数据的基本表现形式,每个Flume事件包含header的一个map集合和一个body,是表示为字节数组的有效负荷。 Event接口: Ev原创 2017-12-06 11:34:06 · 2998 阅读 · 0 评论 -
规划、部署、监控Flume
规划一个Flume部署修复时间 有两个类型的上限:MaxTTR,单个服务器的最大故障时间; MTSR,存储或索引集群的最大故障时间Flume Channel需要多少容量假设所有应用服务器事件的综合生产能力在高峰小时是每秒Pmax个事件,那么在这个时期产生事件的总数为:Tmax=Pmax * MaxTSR 这是应该缓冲在整个Flume部署中的事件总数。但没有考虑托管Flume Agent的机器原创 2017-12-06 11:43:54 · 512 阅读 · 0 评论 -
Flume_概述
flume概述flume是分布式的日志收集系统,它将各个服务器中的数据收集起来并送到指定的地方,比如送到HDFS,简单来说flume就是收集日志的。 flume的核心是把数据从数据源(source)收集过来,再将收集到的数据送到指定的目的地(sink)。为了保证输送的过程一定成功,在送到目的地(sink)之前,会先缓存数据(channel),待数据真正到达目的地(sink)后,flume再删除己缓原创 2017-12-06 09:35:26 · 1227 阅读 · 0 评论