Flink SQL作业用完了堆空间

时间:2019-09-26 14:09:11

标签: apache-flink flink-streaming flink-sql

我正在运行查询以连接流和表,如下所示。它用完了堆空间。即使它在flink群集中有足够的堆空间(60GB * 3)

此查询是否需要驱逐策略?

SELECT sourceKafka.* FROM sourceKafka INNER JOIN DefaulterTable ON sourceKafka.CC=DefaulterTable.CC;

1 个答案:

答案 0 :(得分:0)

如果要与流连接的表是静态的,则可以实现自己的连接,这种连接会表现得更好。

一种方法是使用状态处理器API创建一个静态表处于Flink状态的保存点,然后将联接实现为KeyedProcessFunction。

如果您需要定期更新“静态”表,则可以使用KeyedCoProcessFunction并偶尔进行流传输。