Google Dataflow - 将数据保存到多个BigQuery表中

时间:2017-07-10 08:14:03

标签: google-bigquery google-cloud-dataflow

我正在使用Google Dataflow 1.9将数据保存到BigQuery表中。 我正在寻找一种方法来控制写入(PCollection)元素的表名,基于该元素中的某个值。在我们的例子中,元素包含一个user-id,我们希望动态地将每个元素写入它自己的用户表。

1 个答案:

答案 0 :(得分:1)

使用1.9.0时,唯一的选择是:(1)将元素分区为多个输出集合,然后将每个输出集合写入特定表,或者(2)窗口元素并根据窗口选择目标。选项1仅在存在相对较小的目标表集合时才起作用,而选项2仅在决定基于窗口时才起作用,这不适合您的每个用户目的地的用例非常

如果升级到2.0.0,则可以使用DynamicDestinationsSerializableFunction接收窗口和数据元素的函数指定目标。这将允许您接收每个元素,然后根据用户ID选择目标。