FLINK中的KeyBy(key1或key2)可以吗?

问题描述 投票:0回答:1

在Flink中有没有办法使用keyby(key1或key2)(ORing键)我不是指keyBy(0,1)我需要将带有key1的元素或带有key2的元素转发到同一节点。

apache-flink flink-streaming
1个回答
2
投票

您可以做的最直接的事情是编写一个KeySelector函数,该函数为您希望一起处理的所有事件返回相同的键。具有相同密钥的事件将由同一节点处理,并且如果相关,则将共享键控状态和定时器。

如果您希望事件具有不同的密钥但仍然由同一节点处理(我承认我很想知道为什么这是可取的),那么您需要安排它们在同一个密钥组中。这变得复杂;请参阅this mailing list thread对此进行一些讨论。

© www.soinside.com 2019 - 2024. All rights reserved.