【问题标题】:BigQuery: Pricing for Querying parquet files, as external data sources, from the Coldline Cloud Storage classBigQuery:从 Coldline Cloud Storage 类查询 parquet 文件作为外部数据源的定价
【发布时间】:2020-08-30 06:22:15
【问题描述】:

BigQuery 允许查询各种存储类including Coldline 中的外部表。 从Coldline访问数据有数据retrieval fee

Parquet 格式文件提供列式存储。通过 BigQuery 从 Coldline GCS 访问 Parquet 格式文件时,数据检索成本是基于查询的数据列还是整个 Parquet 文件?

【问题讨论】:

    标签: google-bigquery google-cloud-storage parquet


    【解决方案1】:

    为了首先解决您问题的简单部分,BigQuery charges 仅基于为所有需要读取的文件读取的列的逻辑(未压缩)大小。如果您在具有 1M 行的文件中读取整数字段“foo”,您将被收取 8MB 的费用(每个 int 8 字节 * 行数)。

    如果由于 Hive 分区修剪或 Parquet 标头包含表明查询不需要该文件的信息而可以跳过文件,则扫描该文件不收费。

    您问题的另一部分是关于从 Coldline 读取的计费。如果您在 BigQuery 中从冷线读取,则无需为冷线读取付费。也就是说,请不要指望这种情况会长期存在。谷歌内部正在讨论如何填补这个漏洞。

    将来,当冷线读取收费时,很可能会如下:运行查询所需的物理字节总量将被计费。

    Parquet 文件具有包含文件元数据的标题,然后是具有自己的元数据的块和列。要读取 parquet 文件,您需要读取文件头、块头和列。根据过滤器的不同,某些块可能是可跳过的,在这种情况下,您将不会为此付费。另一方面,某些查询可能需要多次读取同一个文件(例如自连接)。然后,物理读取大小将是每次读取文件时读取的所有字节的总和。

    【讨论】:

      猜你喜欢
      • 2018-08-23
      • 1970-01-01
      • 2019-10-10
      • 2020-11-14
      • 2019-08-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-26
      相关资源
      最近更新 更多