概述
在一些网络资料中有看到当Flume的数据量达到70MB/s以上时,就会出现丢失数据的情况。
但是根据Flume的架构原理,采用FileChannel的Flume是不可能丢失数据的,因为其内部有完善的事务机制(ACID)。
Source到Channel是事务性的,
Channel到Sink也是事务性的,
这两个环节都不可能丢失数据。
唯一可能丢失数据的是Channel采用MemoryChannel,
(1)在agent宕机时候导致数据在内存中丢失;
(2)Channel存储数据已满,导致Source不再写入数据,造成未写入的数据丢失;
并且在实际开发生产环境中,还没有出现过Flume丢失数据的情况,因此Flume在数据量大的时候丢失数据的情况还有待商榷。
ps:Flume不会丢失数据,但是可能会造成数据重复,例如数据已经由Sink发出,但是没有接收到响应,Sink会再次发送数据,导致数据重复
最后
以上就是火星上凉面为你收集整理的Flume会不会丢失数据?的全部内容,希望文章能够帮你解决Flume会不会丢失数据?所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复