Google cloud dataflow googledataflow中的管道初始化步骤

Google cloud dataflow googledataflow中的管道初始化步骤,google-cloud-dataflow,Google Cloud Dataflow,我需要在管道获取输入数据之前清除一个表,我希望这个步骤作为管道本身的一部分在云中运行,而不是在本地运行 这就是代码目前的样子,clearTable()在本地运行: exactTargetIntegration.clearTable(); // runs locally Pipeline p = Pipeline.create(options); PCollection<String> readFromFile = p.apply(TextIO.

我需要在管道获取输入数据之前清除一个表,我希望这个步骤作为管道本身的一部分在云中运行,而不是在本地运行

这就是代码目前的样子,
clearTable()
在本地运行:

    exactTargetIntegration.clearTable(); // runs locally
    Pipeline p = Pipeline.create(options);
    PCollection<String> readFromFile =
        p.apply(TextIO.Read.from(INPUT_FILES)); // runs in the cloud
    ...
exactTargetIntegration.clearTable();//本地运行
Pipeline p=Pipeline.create(选项);
PCollection readFromFile=
p、 应用(TextIO.Read.from(输入文件));//云端
...

有可能吗?

目前没有办法确保在同一管道中读取之前执行某些操作。如果需要在云中运行操作,可以将其作为单独的管道运行,在第一个管道之前运行

例如:

DataflowPipelineOptions options = ...
options.setRunner(BlockingDataflowPipelineRunner.class);
Pipeline deletePipeline = <build deletion pipeline>
Pipeline mainPipeline = <build main pipeline>
deletePipeline.run(options);
mainPipeline.run(options);
DataflowPipelineOptions=。。。
options.setRunner(BlockingDataflowPipelineRunner.class);
管道删除管道=
管道主管道=
deletePipeline.run(选项);
mainPipeline.run(选项);
此外,这个用例肯定是我们想要支持的;您可以在此处跟踪问题: