三也_攻城狮

Code the Craft,Craft the Code

【Flume】flume多个输出分支的配置,多sink,多channel

这里就简单贴个配置吧,有问题欢迎留言探讨 sink的配置 ##############################define [sink] begin############################## #define the sink k1 a1.sinks.k1.type=h...

2015-02-11 09:44:49

阅读数 9019

评论数 1

【Flume】【源码分析】深入flume-ng的三大组件——source,channel,sink

概览 flume-ng中最重要的核心三大组件就是source,channel,sink source负责从源端收集数据 channel负责暂存收集来的数据,以备下游取走消费 sink负责消费通道中的数据,写到最终的输出端上 以上是总体的一个简单结构图,下面我们来深入每一个组件的内部看看: ...

2015-01-30 16:44:25

阅读数 7900

评论数 0

【Flume】【源码分析】flume中事件Event的数据结构分析以及Event分流

前言 首先来看一下flume官网中对Event的定义 一行文本内容会被反序列化成一个event【序列化是将对象状态转换为可保持或传输的格式的过程。与序列化相对的是反序列化,它将流转换为对象。这两个过程结合起来,可以轻松地存储和传输数据】,event的最大定义为2048字节,超过,则会切割,剩下...

2015-02-12 12:46:58

阅读数 7623

评论数 2

【Flume】flume中transactionCapacity和batchSize概念的具体分析和解惑

不知道各位用过flume的读者对这两个概念是否熟悉了解 一开始本人的确有点迷惑,觉得这是不是重复了啊? 没感觉到transactionCapacity的作用啊? batchSize又是干啥的啊? …… …… 带着这些问题,我们深入源码来看一下: batchSize batchSiz...

2015-03-12 15:47:02

阅读数 7442

评论数 1

【Flume】【源码分析】flume中sink到hdfs,文件系统频繁产生文件,文件滚动配置不起作用?

本人在测试hdfs的sink,发现sink端的文件滚动配置项起不到任何作用,配置如下: a1.sinks.k1.type=hdfs a1.sinks.k1.channel=c1 a1.sinks.k1.hdfs.useLocalTimeStamp=true a1.sinks.k1.hdfs.pat...

2015-01-28 16:28:41

阅读数 7403

评论数 18

【Flume】flume输出sink到hbase的实现

flume 1.5.2 hbase 0.98.9 hadoop 2.6 zk 3.4.6 以上是基础的软件及对应版本,请先确认以上软件安装成功! 1、添加jar包支持 将hbase的lib下的这些jar包拷贝到flume的lib下 2、配置flume 注意看...

2015-03-04 10:59:57

阅读数 7154

评论数 3

【Flume】flume文件监控的source组件开发,增量传输文件内容,支持断点续传功能

基于flume-ng中原有exec的source类型,通过tail依赖于操作系统去监听文件内容变化,其次,不支持断点续传的功能,特此,自行开发了一个组件,大家可以看看,一起探讨: https://github.com/cwtree/flume-filemonitor-source 望各位不吝...

2015-04-09 15:02:04

阅读数 5998

评论数 9

【Flume】【源码分析】从入口Application来分析Flume的启动过程

大家在启动flume的时候,输入的命令就可以看出flume的启动入口了 [root@com21 apache-flume-1.5.2-bin]# sh bin/flume-ng agent -c conf -f conf/server.conf -n a1 Info: Sourcing envir...

2015-01-21 16:45:43

阅读数 5750

评论数 3

【Flume】【源码分析】flume中http监控类型的源码分析,度量信息分析,以及flume的事件总线

在flume1.5.2中,如果想要通过http方式的监控来获取flume相关度量值,通过在启动脚本后添加如下内容即可: -Dflume.monitoring.type=http -Dflume.monitoring.port=34545 监控 -D的属性可以通过System.getProerti...

2015-01-29 17:03:53

阅读数 5089

评论数 0

【Flume】自定义sink kafka,并编译打包jar,unapproval license的问题解决

如图所示,新建一个JAVA工程,编辑pom文件,pom文件内容如下【这里取出了parent】: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www...

2015-01-07 11:49:33

阅读数 4492

评论数 0

【Flume】flume ng中HDFS sink设置按天滚动,0点滚动文件,修改源码实现

HDFS sink里有个属性hdfs.rollInterval=86400,这个属性你设置了24小时滚动一次,它的确就到了24小时才滚动,但是我们的需求往往是到了0点就滚动文件了,因为离线的job因为都会放在夜里执行。 如果flume是早上9点启动的,那么要到明天早上9点,hdfs的文件才会关...

2015-04-29 13:35:35

阅读数 3973

评论数 17

【Flume】Rpc sink XX closing Rpc client:NettyAvroRpcClient {xx} …… Failed to send events 问题解决

从以上截图信息,就可以看出问题了,服务端和客户端连接信息对不上,服务端有很多ESTABLISHED的连接,其实是无用的。这种情况,起初,我也很奇怪,没有发现原因,只能查看日志了。 通过日志信息,发现出现了异常,但是很奇怪,在异常信息之前,有一句Rpc sink {} closing Rp...

2015-05-12 11:27:56

阅读数 3723

评论数 0

【Flume】flume中Avro Sink到Avro Source的性能测试,是否压缩,是否加密

从官方下载的flume-ng的源码里有单元测试的代码,本文就通过单元测试来体验下flume中avro的性能如何 本文中的一个event的body内容大小是1KB,读者可自行组织文本,达到1KB即可,方便测试时,性能的计算 for (int i = 0; i < client.getBatc...

2015-03-09 15:26:50

阅读数 3635

评论数 1

【Flume】flume 容错环境的搭建 failover

关于failover网上也有很多例子,但是看到的有多重做法,个人觉得,本着职责单一的原则 1、一台机子运行一个flume agent 2、一个agent 的下游sink指向一个flume agent,不要一个flume agent配置多个端口【影响性能】 下面看具体实例: 首先是flumet ...

2015-01-07 16:15:47

阅读数 3631

评论数 0

【Flume】 flume 负载均衡环境的搭建 load_balance

flume的负载均衡即每次按照一定的算法选择sink输出到指定地方,如果在文件输出量很大的情况下,负载均衡还是很有必要的,通过多个通道输出缓解输出压力 flume内置的负载均衡的算法默认是round robin,轮询算法,按序选择 下面看一下具体实例: # Name the compon...

2015-01-07 16:48:43

阅读数 3527

评论数 0

【Flume】【源码分析】flume中ExecSource源码的详细分析——执行终端命令获取数据

我们直接看该Source的start方法吧 public void start() { logger.info("Exec source starting with command:{}", command); executor = Executors.new...

2015-02-05 10:17:06

阅读数 3493

评论数 0

【Flume】【源码分析】flumeng的事务控制的原理详解【内存通道memory channel】

flume ng中所有的事务控制都是从sink的process方法内开始的 1、获取事务 Transaction transaction = channel.getTransaction();方法定义: public Transaction getTransaction() { if (...

2015-02-06 10:36:26

阅读数 3394

评论数 0

【Flume】从flume的监控度量数据XXXCounter来看JAVA并发编程中的CAS操作

图示 如上图所示红框部分,本人在做稳定性测试的时候,当flume运行几天后,我发现这个counter值逐渐变大,到一定值后,又变小了,有一个循环的过程,故而对此产生研究的欲望,下面来看看: if (txnEventCount == 0) { sinkCounter.in...

2015-02-12 09:35:52

阅读数 2932

评论数 0

【Flume】flume ng 1.5.2源码编译的问题

首先从flume官网去下载源码 http://flume.apache.org/download.html 下载完之后,解压,首先去除源码中hdfs和hadoop的test依赖 apache-flume-1.5.2-src\flume-ng-sinks\flume-hdfs-sink\pom...

2015-01-20 16:22:41

阅读数 2537

评论数 12

【Flume】【源码分析】flume中拦截器的源码分析,以TimestampInterceptor为例

本文将以TimestampInterceptor为例来分析一下flume中拦截器的工作原理 首先来看下改拦截器的实现结构 1、实现了Interceptor接口 该接口的方法定义如下: public void initialize(); public Event intercept(Event...

2015-01-21 10:34:56

阅读数 2308

评论数 0

提示
确定要删除当前文章?
取消 删除