hi, 补充一下,1.10版本的代码使用sqlUpdate + table2datastream,并通过StreamExecutionEnvironment.execute来提交。我回滚到1.10版本的代码后,因为我看1.11版本里如果使用sqlUpdate执行insertInto,必须使用StreamTableEnvironment.execute来提交。现在我的问题就是这个:我想通过一个job来提交。现在有机制可以做不?在1.11版本里执行。因为之前的job逻辑较为复杂,做拆分的话还有点麻烦。
在 2020-07-17 13:55:21,"sunfulin" <[email protected]> 写道: hi, 感谢回复。这个机制我理解了。想了解下,有办法在1.11里仍然使用1.10版本的作业提交机制么?我现在虽然把代码回滚到1.10版本的逻辑,但是提交作业仍然有问题:比如我如果不执行env.execute,那么table to DataStream的语句不会生成拓扑。 在 2020-07-17 12:09:20,"godfrey he" <[email protected]> 写道: >hi sunfulin, >目前这个做不到。executeSQL 和 table to DataStream 是分别优化和提交作业的。 >即使在1.11 之前,table to DataStream 也不会和 sqlUpdate 或者 insertInto 的语句一起优化, >虽然只提交了一个job,但是是两个独立的pipeline,也没有计算复用,和两个job没啥差别。 > >Best, >Godfrey > >Leonard Xu <[email protected]> 于2020年7月17日周五 上午12:12写道: > >> Hi, >> >> 我理解目前好像做不到, cc: godfrey 大佬看看 >> >> 祝好, >> Leonard Xu >> >> > 在 2020年7月16日,23:08,sunfulin <[email protected]> 写道: >> > >> > hi, >> > 请教下flink 1.11任务提交的问题。如果我的一个作业里既有sql >> dml提交(executeSQL执行),又通过DataStream.addSink来写出, >> > 通过StreamExecutionEnvironment.execute提交,yarn >> per-job貌似会提交两个作业。这种情况下,我该如何处理呢?只想提交一个作业。 >> >>
