Apache flink 如何设置flink表而不是流的并行性

Apache flink 如何设置flink表而不是流的并行性,apache-flink,Apache Flink,正如标题所述,当我只在流应用程序中使用DataStream API时,我使用了很多setParallelism 最近,我发现在我的场景中使用表API更好,因为它可以统一批处理/流应用程序,通常必须是2个不同的,只使用不同的dataset/datastream API可以节省大量重复代码。但当我尝试将我的流应用程序移植到表API时。我发现表不支持setParallelism 我必须这样通过我的定制API来完成 有人能帮我吗 1、不需要设置表的并行度,为什么 2,如果仍然需要为表设置并行性,如何以另

正如标题所述,当我只在流应用程序中使用DataStream API时,我使用了很多setParallelism

最近,我发现在我的场景中使用表API更好,因为它可以统一批处理/流应用程序,通常必须是2个不同的,只使用不同的dataset/datastream API可以节省大量重复代码。但当我尝试将我的流应用程序移植到表API时。我发现表不支持setParallelism

我必须这样通过我的定制API来完成

有人能帮我吗

1、不需要设置表的并行度,为什么

2,如果仍然需要为表设置并行性,如何以另一种方式更好地实现这一点

static public DataStream<Row> getRowStreamParallelismed(DataStream<Row> input, Integer parallelism) {
    return ((DataStreamSource<Row>) input)
            .setParallelism(parallelism)
            .map((MapFunction<Row, Row>) value -> {
                return value;
            })
            //.startNewChain()
            ;
}

static public Table getTableParallelismed(Table input, Integer parallelism, StreamTableEnvironment tableEnv) {
    RowTypeInfo rowTypeInfo = MyType.getRowTypeInfo(input);
    DataStream<Row> rowInput = tableEnv.toAppendStream(input, rowTypeInfo);
    DataStream<Row> parallelismed = MyStream.getRowStreamParallelismed(rowInput, parallelism);
    Table ret = tableEnv.fromDataStream(parallelismed, String.join(",", rowTypeInfo.getFieldNames()));
    return ret;
} 
静态公共数据流getRowStreamParallelismed(数据流输入,整数并行){
返回((数据流源)输入)
.setParallelism(并行性)
.map((MapFunction)值->{
返回值;
})
//.startNewChain()
;
}
静态公共表getTableParallelismed(表输入、整数并行、StreamTableEnvironment tableEnv){
RowTypeInfo RowTypeInfo=MyType.getRowTypeInfo(输入);
DataStream rowInput=tableEnv.toAppendStream(输入,rowTypeInfo);
DataStream parallelismed=MyStream.getRowStreamParallelismed(rowInput,parallelism);
Table ret=tableEnv.fromDataStream(parallelismed,String.join(“,”,rowTypeInfo.getFieldNames());
返回ret;
} 
您可以使用来设置并行度值

// instantiate table environment
TableEnvironment tEnv = ...

tEnv.getConfig()        // access high-level configuration
  .getConfiguration()   // set low-level key-value options
  .setString("table.exec.resource.default-parallelism", ***parallelism***)
如果设置此配置参数,它将覆盖StreamContext并行度值

// instantiate table environment
TableEnvironment tEnv = ...

tEnv.getConfig()        // access high-level configuration
  .getConfiguration()   // set low-level key-value options
  .setString("table.exec.resource.default-parallelism", ***parallelism***)