具体参考: 官方用户手册和开发指南http://flume.apache.org/FlumeDeveloperGuide.html*) 定位和简单例子1). Flume-ng-sdk是用于编写往flume agent发送数据的client sdk2). 简单示例RpcClient client = ...
分类:
其他好文 时间:
2014-07-11 21:12:08
阅读次数:
256
前言: Flume-ng是数据收集/聚合/传输的组件, Flume-ng抛弃了Flume OG原本繁重的zookeeper和Master, Collector, 其整体的架构更加的简洁和明了. 其基础组件就Agent进程, 内部又可以细分为Source, Channel, Sink三个组件, S.....
分类:
其他好文 时间:
2014-07-07 00:26:46
阅读次数:
355
SpillableMemoryChannel是1.5版本新增的一个channel。这个channel优先将evnet放在内存中,一旦内存达到设定的容量就使用file channel写入磁盘。然后读的时候会按照顺序读取:会通过一个DrainOrderQueue来保证不管是内存中的还是溢出(本文的“.....
分类:
其他好文 时间:
2014-07-06 16:41:08
阅读次数:
296
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
# 学习前言
想学习一下Flume,网上找了好多文章基本上都说的很简单,只有一半什么的,简直就是坑爹,饿顿时怒火就上来了,学个东西真不容易,然后自己耐心的把这些零零碎碎的东西整理整理,各种搭环境实验之后才弄好的,也不容易啊,希望可以帮到想学Flume的你 、、、
# Flume介绍
Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制...
分类:
其他好文 时间:
2014-06-26 08:01:52
阅读次数:
449
本篇分析加载配置文件后各个组件是如何运行的?
加载完配置文件订阅者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