3

由于我不允许在 prod 服务器上设置 Flume,我必须下载日志,将它们放在 Flume spoolDir 中,并有一个接收器从通道消耗并写入 Cassandra。一切正常。

但是,由于我在 spoolDir 中有很多日志文件,并且当前设置一次只处理 1 个文件,因此需要一段时间。我希望能够同时处理许多文件。我想到的一种方法是使用 spoolDir 但将文件分发到 5-10 个不同的目录中,并定义多个源/通道/接收器,但这有点笨拙。有没有更好的方法来实现这一目标?

谢谢

4

1 回答 1

2

仅作记录,这已在 Flume 的邮件列表中得到答复:

Hari Shreedharan 写道:

抱歉不行。spoolDir 源保持单线程,以便反序列化器实现可以保持简单。使用多个 spoolDir 源的方法是正确的,尽管它们都可以写入相同的通道 - 因此您只需要更多数量的源,它们都可以共享相同的通道而您不需要除非您想更快地提取数据,否则不需要更多接收器。

http://mail-archives.apache.org/mod_mbox/flume-user/201409.mbox/browser

于 2014-09-17T12:30:17.963 回答