【问题标题】:Query BigQuery table partitioned by Partitioning Field查询按分区字段分区的 BigQuery 表
【发布时间】:2018-03-15 09:54:03
【问题描述】:

我们可以创建一个由Partitioning Field 分区的表。 Doc Reference here.

我创建了一个包含 2 个字段的表 visitors

  • 访客:STRING
  • part: TIMESTAMP

当我查询表格时:

SELECT * FROM mydataset.visitors WHERE part >= "2018-03-14 09:00:00" AND part < "2018-03-15 18:00:00"

问题:

  • BigQuery 引擎是否足够智能,仅扫描 2018-03-14 和 2018-03-15 两个分区,然后找到满足小时范围的所有行?
  • BigQUery 是否对所有分区进行全面扫描?

谢谢

【问题讨论】:

  • 分区表的重点在于 BigQuery 只需扫描 where 子句中引用的分区。您可以通过删除 where 子句轻松看到这一点,并且您会看到要处理的数据量增加(在 UI 中)。要回答你的问题,是的,它足够聪明 ;-)
  • 谢谢,@GrahamPolley!这回答了我的问题:)
  • @GrahamPolley 我可以请你发表评论作为答案吗?
  • 好的,我会这样做的。看起来更像是评论;-)

标签: sql google-bigquery partitioning


【解决方案1】:

分区表的重点在于 BigQuery 只需扫描 where 子句中引用的分区。您可以通过删除 where 子句轻松看到这一点,并且您会看到要处理的数据量增加(在 UI 中)。要回答你的问题,是的,它足够聪明;-)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-08-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多