api和sql特有窗口就做实时流处理,
要是非常复杂特殊类离线场景就用批处理(类hive操作)
//设置批处理方式
EnvironmentSettings settings = EnvironmentSettings
.newInstance()
.inBatchMode()
.build();
Configuration conf = settings.toConfiguration();
conf.setBoolean("rest.flamegraph.enabled", true);
//设置平行度
conf.setString("table.exec.hive.infer-source-parallelism.max", "4");
//官网解释是向量化读取hive,当format是orc或者parquet,同事没有hive的复杂类型
conf.setString("table.exec.hive.fallback-mapred-reader", "true");
//将配置传入,获取表环境
TableEnvironment tEnv = TableEnvironment.create(conf);
Table t = tEnv.sqlQuery(
" select 'mike'