如何使用 dataflowsdk 将数据从 bigquery 转录到 bigquery?

Posted

技术标签:

【中文标题】如何使用 dataflowsdk 将数据从 bigquery 转录到 bigquery?【英文标题】:How to transcribe data from bigquery to bigquery with dataflowsdk? 【发布时间】:2016-07-05 19:30:05 【问题描述】:

在构建源为 BigQueryIO.Read 的管道时,您会得到一组 TableRow 对象以供使用。

我本质上是想对这些 TableRow 对象进行一些小改动,然后使用 BigQueryIO.Write 将对象输出到新表中。

但是,我遇到了 TableRow 实际上与原始表结构不匹配的问题,即。它有带有“_”而不是“.”的键,而且是完全平坦的。 (因此与原始架构不匹配)。

我是否缺少使 TableRow 行为正确的步骤? 这似乎是一个相当简单的工作流程,所以当我遇到这个问题时,我有点惊讶。

目标: BigQueryIO.Read -> TableRow -> BigQueryIO.Write

【问题讨论】:

【参考方案1】:

您可以通过指定.withoutResultFlattening() 来避免TableRow 的扁平化

顺便说一句,扁平化和选择下划线作为分隔符均由 BigQuery 完成,并由查询选项控制。

【讨论】:

酷,我来看看行为是什么样的。 :)

以上是关于如何使用 dataflowsdk 将数据从 bigquery 转录到 bigquery?的主要内容,如果未能解决你的问题,请参考以下文章

Python GAE - 如何以编程方式将数据从备份导出到 Big Query?

如何在每次上传桶时更新Big Query后端数据

使用 Azure 数据工厂将数据从 Google Big Query 移动到 Azure Data Lake Store

将数据流从 Google Cloud Storage 流式传输到 Big Query

如何从 Swift 中的 Big-endian 表示中计算 Int 值?

将Big Query中的数据自动导入Google表格?