外部データソースの概要

このページでは、BigQuery の外部に保存されたデータに対してクエリを実行する方法の概要を説明します。

概要

外部データソースは、データが BigQuery ストレージに格納されていない場合でも、BigQuery から直接クエリできるデータソースです。

BigQuery では、次の外部データソースがサポートされています。

外部データソースを使用する場合:

  • ETL ワークロードの場合、1 つのパスでデータの読み込みとクリーニングを実行し、クリーンアップした結果を BigQuery ストレージに書き込みます。
  • 外部データソースから、頻繁に変化するデータと BigQuery テーブルを結合します。外部データソースに対して直接クエリを実行すると、変更されるたびにデータを BigQuery ストレージに再読み込みする必要がなくなります。

BigQuery には、外部データに対してクエリを行うための 2 つのメカニズムがあります。

  • 外部テーブル

    外部テーブルは、標準の BigQuery テーブルのように機能するテーブルです。テーブル スキーマを含むテーブル メタデータは BigQuery ストレージに保存されていますが、データ自体は外部ソースに存在します。

    外部テーブルは一時テーブルまたは永続テーブルのどちらでもかまいません。外部の永続テーブルはデータセット内に格納され、標準の BigQuery テーブルと同じ方法で管理されます。たとえば、テーブル プロパティの表示アクセス制御の設定などを行うことが可能です。テーブルに対してクエリを実行し、他のテーブルと結合できます。

    外部テーブルは、次のデータソースで使用できます。

  • 連携クエリ

    連携クエリは、クエリ ステートメントを外部データベースに送信し、結果を一時テーブルとして返す方法です。連携クエリは、BigQuery Connection API を使用して外部データベースとの接続を確立します。標準 SQL クエリでは、EXTERNAL_QUERY 関数を使用し、そのデータベースの SQL 言語を使用してクエリ ステートメントを外部データベースに送信します。結果は BigQuery の標準 SQL データ型に変換されます。

    連携クエリは、次の外部データベースで使用できます。

次のステップ