Flume中的小文件问题

文章讨论了Flume在处理数据时可能产生的小文件问题,以及官方配置中的rollInterval、rollSize和rollCount参数。企业通过调整这些参数,如将rollInterval设为1800秒,rollSize设为128MB,以及将rollCount设为0,来避免频繁创建小文件并优化HDFS存储效率。
摘要由CSDN通过智能技术生成

在Flume的官方文档中可以看出, flume是存在小文件问题的(默认10个Event,或者1kb在Hdfs上创建一个文件; 不够10个Event, 在30s内创建一个.tmp文件). 官方配置如下所示:

hdfs.rollInterval	30	Number of seconds to wait before rolling current file (0 = never roll based on time interval)
hdfs.rollSize	1024	File size to trigger roll, in bytes (0: never roll based on file size)
hdfs.rollCount	10	Number of events written to file before it rolled (0 = never roll based on number of events)

企业解决小文件问题的方式:

#时间: 1个小时生成一个新的文件3600 或者 半小时生成一个文件1800
a1.sinks.k1.hdfs.rollInterval = 1800
#大小: 设置每个文件的滚动大小大概为128MB(为了避免由于下一个event的加入导致整个文件需要进行切片)
a1.sinks.k1.hdfs.rollsize = 134217700
#Event: 文件的滚动Event的数量无关(Event默认值为10)
a1.sinks.k1.hdfs.rollCount = 0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值