【问题标题】:How do i create partitioned table from non partitioned table in BigQuery using query?如何使用查询从 BigQuery 中的非分区表创建分区表?
【发布时间】:2017-07-10 14:30:33
【问题描述】:

我已经尝试过这个解决方案Migrating from non-partitioned to Partitioned tables,但我得到了这个错误。 “错误:无法查询大于 100MB 限制的行。”

工作 ID:sandbox-kiana-analytics:bquijob_4a1b2032_15d2c7d17f3。

【问题讨论】:

标签: google-bigquery


【解决方案1】:

维迪亚,

我在内部查看了您发送到 BigQuery 的查询,并且可以看到,作为查询的一部分,您使用 ARRAY_AGG() 将一天的所有数据放在一行中。这会产生非常大的行,最终超过 Big Query 的每行 100MB 限制。这是一种相当复杂且低效的数据分区方式。相反,我建议使用 BigQuery (example here) 提供的对数据分区的内置支持。在这种方法中,您可以创建一个空的日期分区表,并将每天的日期分区数据添加到其中。

【讨论】:

  • 感谢您的分析!目前,我们有 2TB 的数据,所以如果我们要这样查询,那将花费我们更多的钱。最便宜的方法是将数据导出到 GCS,但问题是所有日期都不能以分区形式导出到 GCS。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-11-07
  • 2017-08-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多