使用 Big Query 或 Big table 查询聚合值的用例?

Use case of using Big Query or Big table for querying aggregate values?

我有为 30 TB 文本文件设计存储的用例,作为在 Google 云上部署数据管道的一部分。我的输入数据是 CSV 格式,我想最大限度地降低多个用户查询聚合值的成本,这些用户将使用多个引擎查询 Cloud Storage 中的数据。对于这个用例,下面哪个选项更好?

在 Big Query 中使用 Cloud Storage 进行存储和 link 永久 table 查询或使用 Cloud Big table 进行存储并在计算引擎上安装 HBaseShell 以查询 Big table数据。

根据我在下面针对这个特定用例的分析,我在下面看到可以通过 BigQuery 查询 cloudstorage 的地方。此外,Bigtable 支持 CSV 导入和查询。 BigQuery 限制还提到基于文档的 CSV、JSON 和 Avro 的所有输入文件的每个加载作业的最大大小为 15 TB,这意味着如果加载超过 15 TB,我可以加载多个加载作业,我假设.

https://cloud.google.com/bigquery/external-data-cloud-storage#temporary-tables  
https://cloud.google.com/community/tutorials/cbt-import-csv  
https://cloud.google.com/bigquery/quotas  

那么,这是否意味着我可以将 BigQuery 用于上述用例?

简短的回答是肯定的。

我在以下文章中写道:

并且在加载表集群时,可大幅降低最常见查询的成本:

总结:

  • BigQuery 可以直接从 GCS 读取 CSV 和其他文件。
  • 您可以定义一个视图,以您喜欢的任何方式解析这些 CSV,所有这些都在 SQL.
  • 您可以运行 CREATE TABLE 语句将 CSV 实体化为 BigQuery 本机表,以获得更好的性能和成本。
  • 您可以通过 API 而不是 CREATE TABLE 进行导入,这些是免费的(而不是 CREATE TABLE.
  • 的查询费用

BigQuery 可以轻松处理 15 TB。