flink table api No operators defined in streaming topology. Cannot generate StreamGraph

喜欢ヅ旅行 2023-10-06 18:29 120阅读 0赞
  1. Exception in thread "main" java.lang.IllegalStateException: No operators defined in streaming topology. Cannot generate StreamGraph.
  2. at org.apache.flink.table.planner.utils.ExecutorUtils.generateStreamGraph(ExecutorUtils.java:40)
  3. at org.apache.flink.table.planner.delegation.StreamExecutor.createPipeline(StreamExecutor.java:50)
  4. at org.apache.flink.table.api.internal.TableEnvironmentImpl.execute(TableEnvironmentImpl.java:1460)
  5. at com.quant.flowcalculation.flinkapi.tableapi.TableApiKafka.main(TableApiKafka.java:75)
代码的结构如下:
  1. StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();
  2. EnvironmentSettings settings = EnvironmentSettings
  3. .newInstance()
  4. .useBlinkPlanner()
  5. .inStreamingMode()
  6. .build();
  7. StreamTableEnvironment tEnv = StreamTableEnvironment.create(env, settings);
  8. //注册source和sink
  9. tEnv.executeSql(sourceDDL);
  10. // 数据提取
  11. Table sourceTable = tEnv.from("kafka_source");
  12. DataStream<Row> rowDataStream = tEnv.toDataStream(sourceTable);
  13. rowDataStream.print();
  14. // 执行作业
  15. tEnv.execute("flink-connection-kafka");
解决办法:

Flink1.13版本对于两个env的execute代码实现有改动,在1.13版本里需要用

  1. // 执行作业
  2. env.execute("flink-connection-kafka");

发表评论

表情:
评论列表 (有 0 条评论,120人围观)

还没有评论,来说两句吧...

相关阅读