暂存数据流模板作业失败

时间:2017-01-20 03:23:06

标签: java google-cloud-dataflow

按照数据流Creating Templates指南,我创建了这个模板数据流作业的简单示例:

java.util.LinkedHashMap

但是在尝试运行它之后失败并出现以下异常:

removeEldestEntry()

问题是调用public class Runner { public static void main(final String[] args) { final PlaygroundPipelineOptions options = PipelineOptionsFactory.fromArgs(args).withValidation().as(PlaygroundPipelineOptions.class); options.setRunner(TemplatingDataflowPipelineRunner.class); options.setZone("***"); options.setNetwork("***"); options.setSubnetwork("***"); options.setStagingLocation("***"); options.setDataflowJobFile("***"); final Pipeline pipeline = Pipeline.create(options); pipeline .apply(TextIO.Read.from(options.getInput()).named("TextIO.Read")) .apply(MapElements.via(new SimpleFunction<String, String>() { @Override public String apply(String input) { return input.toUpperCase(); } })) .apply(TextIO.Write.to(options.getOutput()).named("TextIO.Write")); pipeline.run(); } private interface PlaygroundPipelineOptions extends DataflowPipelineOptions { @Description("Input path") @Validation.Required ValueProvider<String> getInput(); void setInput(ValueProvider<String> input); @Description("Output path") @Validation.Required ValueProvider<String> getOutput(); void setOutput(ValueProvider<String> input); } } 的时候,但是分阶段模板作业的正确方法是什么?没有这些错误?

1 个答案:

答案 0 :(得分:0)

这似乎来自TextIO source。该解决方案可能会通过调用TextIO来禁用withoutValidation()来源的验证,因为在验证期间文件模式不可用。