我想使用实验性选项,该选项允许我在执行加载作业时更新 BigQuery 架构。
我正在使用 Dataflow 和 SDK 中的内置 BigQueryIO.write。
我看到使用来自 BigQuery API 的 JobConfigurationLoad.setSchemaUpdateOptions(ALLOW_FIELD_ADDITION( 是可能的,但我找不到与 BigQueryIO 等效的等效项。
它是否存在于某个地方,或者我可以覆盖 BigQueryIO 中的某些部分来执行此操作吗?
谢谢
AFAIK,该实验性选项尚未通过BigQueryIO
中的数据流/Beam API 公开,并且覆盖该类中的某些内容并非易事 - 我不建议沿着这条路走下去。
我能想到的一种解决方法是将接收器重定向到 GCS 而不是 BigQuery,然后在管道结束时执行正常的 BigQuery 加载作业。这样您就可以使用该选项。
对SchemaUpdateOption.ALLOW_FIELD_ADDITION的支持已在一月份发布的 Apache BEAM 2.18.0 中实现。请参阅此处的实现详细信息。