Java 在apachebeam中使用BigtableIO的运行时参数
我试图在ApacheBeam中使用BigtableIO的运行时参数来写入BigTable 我已经创建了一个从BigQuery读取并写入Bigtable的管道。 当我提供静态参数时(使用ConfigBigtableIO和ConfigBigtableConfiguration,参考这里的示例),管道工作正常,但在尝试使用运行时参数设置管道时,我遇到了编译错误。 设置选项时,所有参数都是运行时值提供程序Java 在apachebeam中使用BigtableIO的运行时参数,java,google-cloud-dataflow,apache-beam,google-cloud-bigtable,Java,Google Cloud Dataflow,Apache Beam,Google Cloud Bigtable,我试图在ApacheBeam中使用BigtableIO的运行时参数来写入BigTable 我已经创建了一个从BigQuery读取并写入Bigtable的管道。 当我提供静态参数时(使用ConfigBigtableIO和ConfigBigtableConfiguration,参考这里的示例),管道工作正常,但在尝试使用运行时参数设置管道时,我遇到了编译错误。 设置选项时,所有参数都是运行时值提供程序 p.apply(BigQueryIO.readTableRows().fromQuery(
p.apply(BigQueryIO.readTableRows().fromQuery(options.getBqQuery())
.usingStandardSql())
.apply(ParDo.of(new TransFormFn(options.getColumnFamily(), options.getRowKey(), options.getColumnKey(), options.getRowKeySuffix())))
.apply(BigtableIO.write().withProjectId(options.getBigtableProjectId()).
withInstanceId(options.getBigtableInstanceId()).
withTableId(options.getBigtableTableId()));
它需要Bigtable.write()的输出。。。要成为org.apache.beam.sdk.transforms.ptTransform,输出>
当Bigtable.write()返回一个write对象时。
您能否帮助提供正确的语法来修复此问题?谢谢 运行时参数用于数据流模板中 您是否正在尝试创建模板并使用该模板运行管道?如果是,则需要执行以下步骤:
ValueProvider表ID
withTableId(options.getTableId())
希望这有帮助 下面是Write类的定义::公共抽象静态类Write extends pttransform