Flume NG


Flume的一些核心概念:

Agent        使用JVM 运行Flume。每台机器运行一个agent,但是可以在一个agent中包含多个sources和sinks。

Client        生产数据,运行在一个独立的线程。

Source      从Client收集数据,传递给Channel。

Sink           从Channel收集数据,运行在一个独立线程。

Channel     连接 sources 和 sinks ,这个有点像一个队列。

Events        可以是日志记录、 avro 对象等。





这是一个flume-ng 最简单的图。flume-ng 是由一个个agent组成的。




一个agent就像一个细胞一样。当然可以自由组合,如下图:





上面是两个agent链接在一起的,再看看更多的......




整个flume-ng 架子是由一个一个agent拼接而成的,支持多层次多项扩展。这样非常灵活。    

 当然,也可以这么配:







 同时,agent还支持选择器,就是一个source支持多个channel和多个sink,这样就完成了数据的分发。



下面说说 每个agent的构造:

每个agent里都有三部分构成:source、channel 和 sink

         就相当于source接收数据通过channel传输数据sink把数据写到下一端。这就完了,就这么简单。其中source有很多种可以选择,channel有很多种可以选择,sink也同样有多种可以选择,并且都支持自定义。

        

      








评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值