我们有一个场景需要从一张kafka源表写很多不同告警规则到同一张告警目标表。规则数量大概有300多个,采用纯flink sql实现。


方案一是采用创建视图,将不同规则union all起来,再将视图插入目标表,发现算子都chain成了一个,因为flink sql算子的名称是flink 
sql内容,所以算子名称长度超过限制而失败。因而转向方案二
方案二是一条规则对应一条insert into语句,生成graph图会发现fan 
out特别多。这次没有算子名称超长问题,但作业起动会特别慢。考虑到后续规则还会进行修改,添加或删除。这样慢启动无法接受。


想问一下,这种场景最适合的做法是什么?谢谢!

回复