首页 > 解决方案 > Bigquery 直接查询 Google Storage 中的 csv 文件

问题描述

我想向您寻求有关 GCP 技术查询的指导。

在 bigquery 中是否可以直接从存储中读取和查询 CSV 文件而无需加载表?例如,如果我在路径 gs: //mybucket/file1.csv 和 gs: //mybucket/file2.csv 中有 2 个 csv,我可以直接对文件进行查询吗?类似于“从 [myproject.mybucket.file2.csv] 中选择 *”

我的目标是能够根据需要从一组(大)csv 文件中查询信息,以及文件的起始日期。我的目标是在不使用数据时不加载数据,仅在必要时查阅数据。

如果这是不可能的,你给我什么建议不要永久加载所有数据?

非常感谢您提前。

标签: csvgoogle-bigquerygoogle-cloud-storage

解决方案


是的,这是可以做到的。您需要做的是定义一个外部表,它允许您在不摄取数据的情况下查询云存储中的数据。有关更多信息,请参见:https ://cloud.google.com/bigquery/external-data-cloud-storage

如果云存储中的 CSV 文件也以与 hive 分区布局兼容的格式组织,您还可以使用它来帮助减少扫描数据或将其用作表的附加伪列。如果不是,请注意_FILE_NAME如果 CSV 的文件名与您的查询相关,也可以使用该指南。


推荐阅读