Apache Nifi PutElasticsearch是否可以永远等待以填充批大小?
我正在尝试使用apache-nifi.putElasticSearch处理器将流式数据写入elasticsearch PutElasticSearch有一个名为“Batch Size”的属性,当我将该值设置为1时,所有事件都会尽快写入elasticsearch 但是,这样低的“批量大小”在负载较高时显然不起作用。因此,为了获得合理的吞吐量,我需要将其设置为1000 我的问题是,PutElasticSearch是否会等待事件的批量大小。如果是,当处理器上有999个事件等待时,它可以等待数小时 我正在搜索了解logstash如何在elasticsearch输出插件上做同样的工作。可能有一些基于时间实现的刷新逻辑(如果事件等待~2秒刷新事件到elasticsearch) 你知道吗Apache Nifi PutElasticsearch是否可以永远等待以填充批大小?,apache,
elasticsearch,apache-nifi,Apache,
elasticsearch,Apache Nifi,我正在尝试使用apache-nifi.putElasticSearch处理器将流式数据写入elasticsearch PutElasticSearch有一个名为“Batch Size”的属性,当我将该值设置为1时,所有事件都会尽快写入elasticsearch 但是,这样低的“批量大小”在负载较高时显然不起作用。因此,为了获得合理的吞吐量,我需要将其设置为1000 我的问题是,PutElasticSearch是否会等待事件的批量大小。如果是,当处理器上有999个事件等待时,它可以等待数小时 我正
编辑:我刚刚发现logstash实现了这个:)
如何在nifi上执行相同的功能根据代码
批处理大小
参数是来自传入队列的最大流文件数
例如,如果值批量大小=1000
:
1/如果传入队列包含1001个流文件,则在一个事务中仅获取1000个流文件
2/如果传入队列包含999个流文件-999将在一个事务中获取
只要传入队列中有东西并且nifi中有可用的线程,就会处理所有内容
参考资料:
根据代码,
批大小
参数是来自传入队列的最大流文件数
例如,如果值批量大小=1000
:
1/如果传入队列包含1001个流文件,则在一个事务中仅获取1000个流文件
2/如果传入队列包含999个流文件-999将在一个事务中获取
只要传入队列中有东西并且nifi中有可用的线程,就会处理所有内容
参考资料: