Flume
逐浪_一生悬命
一生悬命
展开
-
【Java】【Flume】Flume-NG源码阅读之AvroSink
org.apache.flume.sink.AvroSink是用来通过网络来传输数据的,可以将event发送到RPC服务器(比如AvroSource),使用AvroSink和AvroSource可以组成分层结构。它继承自AbstractRpcSink extends AbstractSink implements Configurable这跟其他的sink一样都得extends Abstract原创 2014-06-24 13:48:57 · 3416 阅读 · 0 评论 -
【Java】【Flume】Flume-NG启动过程源码分析(一)
从bin/flume 这个shell脚本可以看到Flume的起始于org.apache.flume.node.Application类,这是flume的main函数所在。 main方法首先会先解析shell命令,如果指定的配置文件不存在就甩出异常。 根据命令中含有"no-reload-conf"参数,决定采用那种加载配置文件方式:一、没有此参数,会动态加载配置文件,默认每30秒原创 2014-06-24 13:41:19 · 6671 阅读 · 0 评论 -
【Java】【Flume】Flume-NG启动过程源码分析(二)
本节分析配置文件的解析,即PollingPropertiesFileConfigurationProvider.FileWatcherRunnable.run中的eventBus.post(getConfiguration())。分析getConfiguration()方法。此方法在AbstractConfigurationProvider类中实现了,并且这个类也初始化了三大组件的工厂类:this原创 2014-06-24 13:45:11 · 5716 阅读 · 1 评论 -
【Java】【Flume】Flume-NG启动过程源码分析(三)
本篇分析加载配置文件后各个组件是如何运行的? 加载完配置文件订阅者Application类会收到订阅信息执行: @Subscribe public synchronized void handleConfigurationEvent(MaterializedConfiguration conf) { stopAllComponents(); startAll原创 2014-06-24 13:46:21 · 3317 阅读 · 1 评论 -
【Java】【Fulme】Flume-NG源码阅读之SpoolDirectorySource
org.apache.flume.source.SpoolDirectorySource是flume的一个常用的source,这个源支持从磁盘中某文件夹获取文件数据。不同于其他异步源,这个源能够避免重启或者发送失败后数据丢失。flume可以监控文件夹,当出现新文件时会读取该文件并获取数据。当一个给定的文件被全部读入到通道中时,该文件会被重命名以标志已经完成。同时,该源需要一个清理进程来定期移除完成原创 2014-06-24 13:24:04 · 5781 阅读 · 0 评论 -
【Java】Appache Flume 中文介绍
前话 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 08:52:55 · 12798 阅读 · 3 评论