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

Hadoop Flume ng Spool目录源轮询新文件的目录,而不是使用本机WatchService API,hadoop,flume,Hadoop,Flume,我正在深入研究Flume ng的SpoolingDirectorySourcesrc,发现它在指定的POLL\u DELAY\u MS参数之后轮询spool目录以生成新事件。然后,这些事件由独立线程中的ReliableSpoilingFileEventReader处理 我想知道为什么ReliableSpoilingFileEventReader不使用WatchServiceAPI,它的级别非常低,而且线程安全。是否有任何特定的设计约束有利于轮询而不是观察者\ 谢谢。一般来说,Flume可以更好地

我正在深入研究Flume ng的
SpoolingDirectorySource
src,发现它在指定的
POLL\u DELAY\u MS
参数之后轮询spool目录以生成新事件。然后,这些事件由独立线程中的
ReliableSpoilingFileEventReader
处理

我想知道为什么
ReliableSpoilingFileEventReader
不使用
WatchService
API,它的级别非常低,而且线程安全。是否有任何特定的设计约束有利于轮询而不是观察者\


谢谢。

一般来说,Flume可以更好地处理成批事件。这是因为每个批次的文件通道
fsync
s。因此,等待一段时间是收集一批事件的一个很好的折衷办法