hi,
再问下,这个方案还是会提交两个job吧?














在 2020-07-17 14:36:19,"godfrey he" <godfre...@gmail.com> 写道:
>做不到,1.11里把 StreamExecutionEnvironment.execute 和
>StreamTableEnvironment.execute 的逻辑已经切分干净了。
>有个改动比较小的方案可以参考:可以在原来的逻辑的基础上,把两种提交job的方式放到两个不同的类中,其他的逻辑放到另外一个类共性。
>
>sunfulin <sunfulin0...@163.com> 于2020年7月17日周五 下午2:00写道:
>
>> 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" <sunfulin0...@163.com> 写道:
>>
>>
>>
>>
>> hi,
>> 感谢回复。这个机制我理解了。想了解下,有办法在1.11里仍然使用1.10版本的作业提交机制么?我现在虽然把代码回滚到1.10版本的逻辑,但是提交作业仍然有问题:比如我如果不执行env.execute,那么table
>> to DataStream的语句不会生成拓扑。
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> 在 2020-07-17 12:09:20,"godfrey he" <godfre...@gmail.com> 写道:
>> >hi sunfulin,
>> >目前这个做不到。executeSQL 和 table to DataStream 是分别优化和提交作业的。
>> >即使在1.11 之前,table to DataStream 也不会和 sqlUpdate 或者 insertInto 的语句一起优化,
>> >虽然只提交了一个job,但是是两个独立的pipeline,也没有计算复用,和两个job没啥差别。
>> >
>> >Best,
>> >Godfrey
>> >
>> >Leonard Xu <xbjt...@gmail.com> 于2020年7月17日周五 上午12:12写道:
>> >
>> >> Hi,
>> >>
>> >> 我理解目前好像做不到, cc: godfrey 大佬看看
>> >>
>> >> 祝好,
>> >> Leonard Xu
>> >>
>> >> > 在 2020年7月16日,23:08,sunfulin <sunfulin0...@163.com> 写道:
>> >> >
>> >> > hi,
>> >> > 请教下flink 1.11任务提交的问题。如果我的一个作业里既有sql
>> >> dml提交(executeSQL执行),又通过DataStream.addSink来写出,
>> >> > 通过StreamExecutionEnvironment.execute提交,yarn
>> >> per-job貌似会提交两个作业。这种情况下,我该如何处理呢?只想提交一个作业。
>> >>
>> >>
>>
>>
>>
>>
>>
>>

回复