将数据从 Elasticsearch 读取到 Flink 聚合中?



我正在尝试使用 Kafka 消息(作为 StreamSource)更新 Elasticsearch 中的文档。使用窗口和 Elasticsearch 连接器作为接收器批量写入 Elasticsearch 是可以的,但是,我们需要更新文档中的现有数据并以批量性能的方式读取它(不是针对每个元组,而是例如,在我们要聚合的byKey()拆分后的整个窗口)

我们现在使用的是 Storm Trident,它在persistentAggregate之前执行批量读取,并在之后将更新的聚合写入,从而最大限度地减少与后端的交互。我只是在 Flink 中找不到类似的东西 - 有什么提示吗?

如何在流上运行两个窗口调用 -

window1- 从弹性搜索批量读取

window2- 批量到弹性搜索中。

streamData
.window1(bulkRead and update/join)
.processFunction(...)
.window2(BulkPush)
  • 您可以使用任何合适的方法进行批量读取,例如Storm Trident
  • 在窗口 2 链接中使用批量处理器

相关内容

  • 没有找到相关文章

最新更新