google-bigquery - 迁移到集群表

标签 google-bigquery

我在 BigQuery 中有一个按天分区的表,我想将所有行移动到 BigQuery 中的另一个按天分区并由几个字段聚类的表。我知道我可以使用 DML INSERT 语句来做到这一点,但它很昂贵。有更便宜的解决方法吗?谢谢!

最佳答案

延迟迁移,以全表扫描为代价

CREATE TABLE x_new
PARTITION BY y
CLUSTER BY z
AS
SELECT * 
FROM x_old

通过导出实现免费迁移

第 1 步:

CREATE TABLE x_new
PARTITION BY y
CLUSTER BY z
AS
SELECT * 
FROM x_old
LIMIT 0

第 2 步:将表 x_old 导出到 GCS(推荐使用 Avro)。

第 3 步:将 GCS 导出的文件加载到 x_new 中。

关于google-bigquery - 迁移到集群表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55599658/

相关文章:

google-bigquery - 解决错误 : returned "Output field used as input"

google-bigquery - 错误 : Scalar subquery produced more than one element

google-bigquery - 使用 COUNT(DISTINCT ...) 时出现 BigQuery 错误 "Response too large to return"

sql - 嵌套hits.product.customDimensions错误

google-bigquery - 数据流在本地返回正确的类型,但在云中执行时返回正确的类型

将空整数插入 Google bigquery

ruby-on-rails - 解析来自 Google 大查询的响应

google-analytics - Bigquery 导出中的滞后自定义维度

google-bigquery - 时间序列数据的大表与 Bigquery 用例

google-analytics - Google BigQuery 优化策略