当我使用 HadoopInputFormat 作为 StreamExecutionEnvironment.createInput 的输入时,我可以使用批处理模式吗?如果不是,为什么?如果是,如何?

问题描述

我使用的是 Flink 1.13。我想使用StreamingExecutionEnvironment的批处理模式来处理HBase快照数据文件

Job job = Job.getInstance(conf);
TableSnapshotInputFormat.setInput(job,snapshotName,new Path(restoreDir));

HadoopInputFormat<ImmutableBytesWritable,Result> input = HadoopInputs.createHadoopInput(
  new TableSnapshotInputFormat(),ImmutableBytesWritable.class,Result.class,job);

env.createInput(
  input,Typeinformation.of(new TypeHint<Tuple2<ImmutableBytesWritable,Result>>() {}))

...

当我使用上面的代码时,它抛出了异常:

org.apache.flink.client.program.ProgramInvocationException:主要方法导致错误:检测到未绑定源,“execution.runtime-mode”设置为“BATCH”。这种组合是不允许的,请将 'execution.runtime-mode' 设置为 STREAMING 或 AUTOMATIC

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)