如何在 bigquery 中创建分区表
Posted
技术标签:
【中文标题】如何在 bigquery 中创建分区表【英文标题】:How do I create a partitioned table in bigquery 【发布时间】:2016-06-02 14:11:16 【问题描述】:Google 最近在 BigQuery 中宣布了partitioned tables,它具有许多优势。 但是,我没有找到有关如何创建此类表的文档。 如何在 UI、CLI 或 API(java 等)中创建这样的表?
【问题讨论】:
【参考方案1】:看看表资源的timePartitioning属性。 我认为您可以尝试一下:o) 在Partitioned Tables和Creating and Updating Date-Partitioned Tables了解更多信息
【讨论】:
注意:您可能需要更新您的 cloud sdk shell 以支持 time_partitioning_type 参数【参考方案2】:您可以在 UI/CLI 中运行此代码来创建带有分区的表。
bq query --use_legacy_sql=false '
CREATE TABLE dw_prod.example_table (
company STRING,
value FLOAT64,
ds DATE)
PARTITION BY ds
OPTIONS(
expiration_timestamp=TIMESTAMP "2028-01-01 00:00:00 UTC",
description="Example table create in BQ CLI",
labels=[("example","summary")]
);'
【讨论】:
欢迎来到 ***。您应该解释代码的作用及其相关性,而不是仅仅粘贴代码块。【参考方案3】:我确实很难找到the documentation,所以我在这里添加它:
CREATE TABLE | CREATE TABLE IF NOT EXISTS | CREATE OR REPLACE TABLE
[[project_name.]dataset_name.]table_name
[(
column_name column_schema[, ...]
)]
[PARTITION BY partition_expression]
[CLUSTER BY clustering_column_list]
[OPTIONS(table_option_list)]
[AS query_statement]
请注意,您可以从视图选择中对表进行聚类,这非常简洁。
【讨论】:
以上是关于如何在 bigquery 中创建分区表的主要内容,如果未能解决你的问题,请参考以下文章
如何在Google Bigquery中创建按日期(每年)分区的表格
使用 apache beam Json Time Partitioning 在 bigquery 中创建时间分区表