Google bigquery 使用Dataflow BigQuery接收器设置表过期时间

Google bigquery 使用Dataflow BigQuery接收器设置表过期时间,google-bigquery,google-cloud-dataflow,Google Bigquery,Google Cloud Dataflow,当使用数据流的BigQueryIO.Writesink时,有没有办法在BigQuery表上设置时间 例如,我想要这样的东西(见最后一行): PCollection主结果。。。 mainResults.apply(BigQueryIO.Write .named(“我的bq表”) .to(“项目:dataset.table”) .withSchema(getBigQueryTableSchema()) .withWriteDisposition(BigQueryIO.Write.WriteDispo

当使用数据流的
BigQueryIO.Write
sink时,有没有办法在BigQuery表上设置时间

例如,我想要这样的东西(见最后一行):

PCollection主结果。。。
mainResults.apply(BigQueryIO.Write
.named(“我的bq表”)
.to(“项目:dataset.table”)
.withSchema(getBigQueryTableSchema())
.withWriteDisposition(BigQueryIO.Write.WriteDisposition.Write\u TRUNCATE)
.withCreateDisposition(BigQueryIO.Write.CreateDisposition.CREATE如果需要)
.到期日(1452030098l)//**此表应于1月31日到期

我在DataflowAPI中看不到任何有助于实现这一点的东西。当然,我可以只使用BigQuery API,但在指定接收器时,最好能够在via数据流中使用它。

这在数据流API中目前不受支持。我们可以很快考虑添加它,因为它应该是一个简单的添加

您可以在数据集上设置
defaultTableExpirationMs
,然后在该数据集中创建的任何表的过期时间都将为“now+dataset.defaultTableExpirationMs”


请参见

功能请求页面是否与BigQuery相同?e、 g.我们监控SDK的Github问题跟踪程序,您希望我在那里提出吗?完成。谢谢Sam:-)请关注进一步的更新。是的,但不幸的是,这不可能通过数据流API实现。
PCollection<TableRow> mainResults...
mainResults.apply(BigQueryIO.Write
                .named("my-bq-table")
                .to("PROJECT:dataset.table")
                .withSchema(getBigQueryTableSchema())
                .withWriteDisposition(BigQueryIO.Write.WriteDisposition.WRITE_TRUNCATE)
                .withCreateDisposition(BigQueryIO.Write.CreateDisposition.CREATE_IF_NEEDED))
                .withExpiration(1452030098l) //**this table should expire on 31st Jan