在Flink中广播“ JOIN”

时间:2019-10-17 05:41:03

标签: scala apache-kafka sbt apache-flink flink-sql

有什么方法可以像在SPARK中一样使用FLINK中的Broadcast Join。我正在使用JOINS,但是数据量很大,因此我需要使用Broadcast Join。

谢谢

1 个答案:

答案 0 :(得分:0)

Flink不像Spark中那样提供广播连接。使用BroadcastProcessFunction自己实现很容易,但是我想知道这是否真的合适。仅当两个流之一很小时,广播联接才有意义;否则,键分区联接更有意义。

要实现此目的,请广播较小的模式流并将其连接到事件流。在BroadcastProcessFunction的processBroadcastElement方法中,存储新的模式,并在processElement方法中查找相关的模式,并将其与正在处理的事件组合。