flume-ng1.4安装配置记录一下flume-ng的安装配置三个基本概念source:数据源channel:数据传输通道sink:数据目的地,如存储在hdfs配置:flume.conf#defineagent1.sources=source1agent1.channels=channel1agent1.sinks=sink1#agent1.sources.source1.type=spooldiragent1.sour..
分类:
其他好文 时间:
2014-06-27 06:41:36
阅读次数:
221
本篇分析加载配置文件后各个组件是如何运行的?
加载完配置文件订阅者Application类会收到订阅信息执行:
@Subscribe
public synchronized void handleConfigurationEvent(MaterializedConfiguration conf) {
stopAllComponents();
startAll...
分类:
编程语言 时间:
2014-06-24 17:24:59
阅读次数:
445
本节分析配置文件的解析,即PollingPropertiesFileConfigurationProvider.FileWatcherRunnable.run中的eventBus.post(getConfiguration())。分析getConfiguration()方法。此方法在AbstractConfigurationProvider类中实现了,并且这个类也初始化了三大组件的工厂类:this...
分类:
编程语言 时间:
2014-06-24 17:21:53
阅读次数:
547
从bin/flume 这个shell脚本可以看到Flume的起始于org.apache.flume.node.Application类,这是flume的main函数所在。
main方法首先会先解析shell命令,如果指定的配置文件不存在就甩出异常。
根据命令中含有"no-reload-conf"参数,决定采用那种加载配置文件方式:一、没有此参数,会动态加载配置文件,默认每30秒...
分类:
编程语言 时间:
2014-06-24 17:13:22
阅读次数:
387
org.apache.flume.sink.AvroSink是用来通过网络来传输数据的,可以将event发送到RPC服务器(比如AvroSource),使用AvroSink和AvroSource可以组成分层结构。它继承自AbstractRpcSink extends AbstractSink implements Configurable这跟其他的sink一样都得extends Abstract...
分类:
编程语言 时间:
2014-06-24 16:01:30
阅读次数:
303
org.apache.flume.source.SpoolDirectorySource是flume的一个常用的source,这个源支持从磁盘中某文件夹获取文件数据。不同于其他异步源,这个源能够避免重启或者发送失败后数据丢失。flume可以监控文件夹,当出现新文件时会读取该文件并获取数据。当一个给定的文件被全部读入到通道中时,该文件会被重命名以标志已经完成。同时,该源需要一个清理进程来定期移除完成...
分类:
编程语言 时间:
2014-06-24 15:59:37
阅读次数:
287
前话
Flume OG 也就是 Flume original generation 由 Cloudera公司开发,最新版本是0.9.4。而Flume NG 就是 Flume next generation, 大概在2011年6月份由 Cloudera贡献给开源社区,目前属于Apache的一个incubator project。官网:http://flume.appache.org/...
分类:
移动开发 时间:
2014-06-22 10:33:01
阅读次数:
266
要在一个Flume Agent中定义数据流,你需要通过一个Channel将Source和Sink连接起来。你需要列出给定Agent的Source、Sink和Channel。一个Source可以指定多个Channel,但是一个Sink只能指定一个Channel。...
分类:
其他好文 时间:
2014-06-18 06:30:34
阅读次数:
306
flume-ng
是一个分布式,高可用的日志收集系统。主要用来将分布在不同服务器上的业务日志汇总在一个集中的数据存储中心一
安装与环境配置下载地址http://flume.apache.org/download.html,下载Apache Flume
binary至目标服务器解压运行环境java版本...
分类:
其他好文 时间:
2014-06-10 21:03:30
阅读次数:
451
按理说,应该在sink端限制数据的发送速度,但flume-ng提供了非常便利的interceptor模式,因此本文,就只是在source端简单的实现了对数据发送速度的限制。...
分类:
其他好文 时间:
2014-06-10 18:01:51
阅读次数:
1183