鉴于BigQuery中有一个Partitioned表,是否可以将其设为非分区?
答案 0 :(得分:2)
AFAIK没有功能/功能来取消分区表的分区。但是,没有什么能阻止你做select * from partitioned_table
并将结果写入新的(非分区表)。使用这种方法,您当然会受到成本的影响。
另一种方法是将您的表格导出到GCS,然后将导出的文件重新加载。加载不会花费任何费用,因此您只需支付短暂的金额文件存储在GCS中的时间。
答案 1 :(得分:1)
是否可以在BigQuery中对分区表进行非分区?
有可能!!快速免费($ 0.00)
第1步 - 创建新的非分区表,其中包含与源表完全相同的模式且没有行
#standardSQL
SELECT *
FROM `xxx.yyy.your_partitioned_table`
WHERE FALSE
在目的地 - xxx.yyy.your_new_NON_PARTITIONED_table
第2步 - 使用WRITE_APPEND作为writeDisposition调用复制作业
您的副本配置如下所示
{
"configuration": {
"copy": {
"sourceTable": {
"projectId": "xxx",
"datasetId": "yyy",
"tableId": "your_partitioned_table"
},
"destinationTable": {
"projectId": "xxx",
"datasetId": "yyy",
"tableId": "your_new_NON_PARTITIONED_table"
},
"createDisposition": "CREATE_IF_NEEDED",
"writeDisposition": "WRITE_APPEND"
}
}
}
任务完成!
注意:这两个步骤都是免费的!