【问题标题】:Streaming into BQ partitioned tables流入 BQ 分区表
【发布时间】:2016-07-28 16:40:15
【问题描述】:

我正在尝试使用数据流流入 BQ 分区表。 文档说:

流缓冲区中的数据在 _PARTITIONTIME 列中具有 NULL 值。

我可以看到将行插入日期分区表时就是这种情况。

有没有办法可以设置我要插入的行的分区时间,以便 BigQuery 可以推断出正确的分区?

到目前为止,我已经尝试过:tableRow.set("_PARTITIONTIME", milliessinceepoch); 但我遇到了no such field 异常。

【问题讨论】:

    标签: google-bigquery google-cloud-dataflow


    【解决方案1】:

    大约一个月前,您可以流式传输到日期分区表的特定分区。例如,要插入表 T 中日期为 20160501 的分区,可以调用 insertall 表名 T$20160501

    【讨论】:

      【解决方案2】:

      AFAIK,在撰写本文时,BigQuery 不允许为每行手动指定分区 - 它是从插入时推断出来的。

      但是,作为 BigQuery 内置分区表功能的替代方案,您可以使用 Dataflow 的功能同时流式传输到多个 BigQuery 表:请参阅Sharding BigQuery output tables

      【讨论】:

        猜你喜欢
        • 2017-02-18
        • 1970-01-01
        • 1970-01-01
        • 2018-12-03
        • 2022-06-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多