Flume-ng Spool目录源轮询新文件的目录,而不是使用本机WatchService API

时间:2014-01-03 16:18:29

标签: hadoop flume

我正在深入研究Flume-ng的SpoolingDirectorySource src,发现它在指定的POLL_DELAY_MS参数之后轮询假脱机目录以生成新事件。然后,这些事件由ReliableSpoolingFileEventReader在单独的线程中处理。

我想知道为什么ReliableSpoolingFileEventReader不使用WatchService API,这是非常低级别以及线程安全的。是否有任何特定的设计约束有利于观察者的民意调查? \

感谢。

1 个答案:

答案 0 :(得分:1)

一般来说,Flume在批量活动中效果更好。这是因为每个批次的文件通道fsync。因此,等待一段时间是收集一批事件的良好平衡。