flume学习笔记

flume的运行机制

source:对接我们的数据源,用于我们采集数据

channel:管道,连接我们的soruce以及sink

sink:数据的下沉组件,主要用于将数据发送到哪里去保存

flume == > kafka 实现实时的处理

flume ==》 hdfs 实现离线的处理

agent:一个flume的运行的实例,就是一个agent

event:一条数据就是一个event

 

flume这个玩意儿比较脆弱,一旦抛异常之后,flume就不会干活儿了

1:flume有没有做什么监控 ==》监控flume有没有挂掉

挂掉跟不挂掉:如果挂掉会产生两个现象:第一个:源文件没有收集 第二个:hdfs的目的文件没有增多

可以使用以上两个特性,来检测flume有没有挂掉 源文件一直在增多 ,没有产生更多的.complete文件,就证明源文件没有收集

可以使用shell脚本定时的检测一下==》查看一下源文件有没有收集,查看目的文件有没有增多

如果shell脚本检测到flume挂掉怎么办??如果是监控一个文件夹,重启解决不了问题,将我们监控文件夹下面的所有的文件全部移走,然后重新启动flume即可

也可以用第三方软件Ganglia来做监控。

 

2:flume的滚动频率:多长时间发送一次数据到hdfs上面去

使用flume来实现离线数据的处理

一般一个文件滚动生成128M比较合适

一条文件大概多大 100KB 128M/100KB

白天12个小时产生100Gb文件 100GB/12小时 每个小时多少GB的文件

agent1.sinks.sink1.hdfs.rollSize = 102400     配置128M
agent1.sinks.sink1.hdfs.rollCount = 1000000   控制多少条event滚动一次
agent1.sinks.sink1.hdfs.rollInterval = 60     多长时间滚动一次,根据你每天的数据量来估算出来的

 

 

flume当中的source 以及sink组件

source EXEC source spooling directory source avro source netcast source

sink:avro sink hdfs sink kafka sink logger sink

channel: memory channel 有可能丢失数据 File Channel 可以将我们的数据保存到文件里面去,涉及到flume的事务问题

 

 

调研了解 flume采集mysql里面的数据(todo)

 

 

flume当中的高可用有两种机制

一种是 failover(主备) 一种是load balance(高可用)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值