外部数据源简介

本页面简要介绍了如何查询存储在 BigQuery 外部的数据。

概览

外部数据源是可以直接从 BigQuery 查询的数据源,即使数据未存储在 BigQuery 存储中也是如此。

BigQuery 支持以下外部数据源:

外部数据源的使用场景包括:

  • 对于 ETL 工作负载,可一次性加载和清理数据,并将清理后的结果写入 BigQuery 存储。
  • 将 BigQuery 表与外部数据源中频繁更改的数据联接。通过直接查询外部数据源,您无需在每次数据发生更改时将数据重新加载到 BigQuery 存储。

BigQuery 有两种不同的外部数据查询机制:

  • 外部表

    外部表是一个充当标准 BigQuery 表的表。表元数据(包括表架构)存储在 BigQuery 存储中,但数据本身位于外部源中。

    外部表可以是临时表,也可以是永久表。永久外部表包含在数据集内,其管理方式与标准 BigQuery 表相同。例如,您可以查看表属性设置访问权限控制等等。您可以查询该表并将其与其他表联接。

    您可以将外部表与以下数据源搭配使用:

  • 联合查询

    联合查询用于将查询语句发送到外部数据库,并将结果作为临时表返回。联合查询使用 BigQuery Connection API 与外部数据库建立连接。 在标准 SQL 查询中,您可以使用 EXTERNAL_QUERY 函数,通过该数据库的 SQL 方言向外部数据库发送查询语句。 结果将转换为 BigQuery 标准 SQL 数据类型。

    您可以将联合查询与 Cloud SQL 搭配使用。

后续步骤