可以在FLINK中使用KeyBy(key1或key2)吗?

时间:2019-04-26 10:16:29

标签: apache-flink flink-streaming

Flink中是否有一种方法可以使用keyby(key1或key2)(或对密钥进行“或”运算)我不是说keyBy(0,1)我需要将具有key1的元素或具有key2的元素转发到同一节点。

1 个答案:

答案 0 :(得分:2)

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

如果您希望事件具有不同的键,但仍由同一节点处理(我想知道为什么这很理想),那么您需要安排它们使用相同的键组。这变得很复杂;有关此问题的讨论,请参见this mailing list thread

相关问题