コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

BigQuery のロケーション

このページでは、ロケーションのコンセプトと、データを保存して処理できるさまざまなリージョンについて説明します。ストレージと分析の料金は、データと予約のロケーションによっても定義されます。ロケーションの料金の詳細については、BigQuery の料金をご覧ください。データセットのロケーションを設定する方法については、データセットを作成するをご覧ください。予約のロケーションについては、さまざまなリージョンの予約の管理をご覧ください。

BigQuery Data Transfer Service がロケーションを使用する方法について詳しくは、データのロケーションと転送をご覧ください。

ロケーションとリージョン

BigQuery には次の 2 種類のデータとコンピューティング ロケーションがあります。

  • リージョンは、ロンドンなどの特定の地理的な場所となります。

  • マルチリージョンは、米国などの複数のリージョンを含む広い地理的なエリアとなります。マルチリージョン ロケーションは、シングル リージョンよりも大きい割り当てを提供できます。

どちらのロケーションでも、BigQuery は選択したロケーションの 1 つのリージョン内にある 2 つの異なる Google Cloud ゾーンにデータのコピーを自動的に保存します。データの可用性と耐久性の詳細については、信頼性: 障害対策をご覧ください。

サポートされているロケーション

BigQuery データセットは、次のリージョンとマルチリージョンに保存できます。リージョンとゾーンの詳細については、地域とリージョンをご覧ください。

地域

次の表は、BigQuery が利用可能な南北アメリカのリージョンを示したものです。
リージョンの説明 リージョン名 詳細
コロンバス(オハイオ州) us-east5
アイオワ us-central1 リーフアイコン 低 CO2
ラスベガス us-west4
ロサンゼルス us-west2
モントリオール northamerica-northeast1 リーフアイコン 低 CO2
北バージニア us-east4
オレゴン us-west1 リーフアイコン 低 CO2
ソルトレイクシティ us-west3
サンパウロ southamerica-east1 リーフアイコン 低 CO2
サンティアゴ southamerica-west1
サウスカロライナ us-east1
トロント northamerica-northeast2
次の表は、BigQuery が利用可能なアジア太平洋のリージョンを示したものです。
リージョンの説明 リージョン名 詳細
デリー asia-south2
香港 asia-east2
ジャカルタ asia-southeast2
メルボルン australia-southeast2
ムンバイ asia-south1
大阪 asia-northeast2
ソウル asia-northeast3
シンガポール asia-southeast1
シドニー australia-southeast1
台湾 asia-east1
東京 asia-northeast1
次の表は、BigQuery が利用可能なヨーロッパのリージョンを示したものです。
リージョンの説明 リージョン名 詳細
ベルギー europe-west1 リーフアイコン 低 CO2
フィンランド europe-north1 リーフアイコン 低 CO2
フランクフルト europe-west3
ロンドン europe-west2
マドリッド europe-southwest1 リーフアイコン 低 CO2
ミラノ europe-west8
オランダ europe-west4
パリ europe-west9 リーフアイコン 低 CO2
ワルシャワ europe-central2
チューリッヒ europe-west6 リーフアイコン 低 CO2

マルチリージョン

次の表に、BigQuery を利用可能なマルチリージョンを示します。
マルチリージョンの説明 マルチリージョン名
欧州連合の加盟国内のデータセンター1 EU
米国内のデータセンター US

1 EU マルチリージョン内のデータは europe-west2(ロンドン)や europe-west6(チューリッヒ)のデータセンターには保存されません。

BigQuery Omni のロケーション

BigQuery Omni は、クエリを実行するテーブルを含むデータセットと同じロケーションにあるクエリを処理します。データセットを作成した後で、そのロケーションを変更することはできません。 データは独自の AWS アカウントまたは Azure アカウント内に存在します。
リージョンの説明 リージョン名
AWS
AWS - US East(北Virginia) aws-us-east-1
Azure
Azure - East US 2 azure-eastus2

ロケーションを指定する

BigQuery は、データの読み込み、データのクエリ、データのエクスポートを行うときに、リクエストで参照されるデータセットに基づいてジョブを実行するロケーションを決定します。たとえば、クエリが asia-northeast1 リージョンに格納されたデータセット内のテーブルを参照する場合、クエリジョブはそのリージョンで実行されます。

クエリがデータセット内のテーブルやその他のリソースを参照せず、宛先テーブルが指定されていない場合、クエリジョブは US マルチリージョンで実行されます。

プロジェクトUS 以外のリージョンで定額料金の予約があり、クエリがデータセット内のテーブルやその他のリソースを参照していない場合は、ジョブの送信時に定額料金の予約があるロケーションを明示的に指定する必要があります。 定額コミットメントは USEU などのロケーションに関連付けられています。定額容量のロケーションの外でジョブを実行すると、そのジョブの料金は自動的にオンデマンド料金に切り替わります。

ジョブを明示的に実行するロケーションは、次の方法で指定できます。

  • Query Editor で Google Cloud コンソールを使用してデータのクエリを実行する場合は、 [詳細] > [クエリの設定] をクリックし、[詳細オプション] を展開して、[データのロケーション] を選択します。
  • bq コマンドライン ツールを使用する場合、--location グローバル フラグを指定し、その値を該当するロケーションに設定します。
  • API を使用する場合は、ジョブリソースjobReference セクションにある location プロパティで該当するリージョンを指定します。

指定したロケーションがリクエスト内のデータセットのロケーションと一致しない場合、BigQuery はエラーを返します。リクエストに関連するすべてのデータセット(読み取り / 書き込みを含む)の場所は、推定されるジョブまたは指定されたジョブのロケーションと一致する必要があります。

シングル リージョンのロケーションがマルチリージョンのロケーションに含まれている場合でも、シングル リージョンのロケーションはマルチリージョンのロケーションと一致しません。したがって、関連付けられたロケーションのセットにシングル リージョンのロケーションとマルチリージョンのロケーションの両方が含まれている場合、ジョブは常に失敗します。たとえば、ジョブのロケーションが US に設定されている場合、us-central1 のデータセットを参照すると、ジョブが失敗します。同様に、US にあるデータセットと us-central1 にある別のデータセットを参照するジョブも失敗します。

ロケーション、予約、ジョブ

容量コミットメントはリージョン リソースです。スロットを購入すると、そのスロットは特定のリージョンまたはマルチリージョンに制限されます。EU にのみ容量コミットメントがある場合、US に予約を作成することはできません。予約を作成するときは、ロケーション(リージョン)とスロット数を指定します。そのスロットは、そのリージョン内の容量コミットメントから pull されます。

同様に、リージョンでジョブを実行する場合、ジョブのロケーションが予約のロケーションと一致する場合にのみ、予約が使用されます。たとえば、EU のプロジェクトに予約を割り当て、そのプロジェクトで US にあるデータセットにクエリを実行した場合、そのクエリは EU の予約では実行されません。US の予約がない場合、ジョブはオンデマンドとして実行されます。

ロケーションに関する留意事項

データのロケーションを選択するときは、次の点を考慮してください。

  • 外部データソースを使用する場合は、BigQuery データセットを同じロケーションに配置します。
    • クラウド ストレージ: BigQuery の外部テーブル経由でクラウド ストレージのデータをクエリする場合、クエリするデータは BigQuery データセットと同じロケーションに配置する必要があります。次に例を示します。
      • シングル リージョンのバケット: BigQuery データセットがワルシャワ(europe-central2)にある場合、対応する Cloud Storage バケットもワルシャワ リージョンにある必要があります。これは現在、ワルシャワを含む Cloud Storage のデュアルリージョンがないためです。
      • BigQuery データセットがマルチリージョンのいずれかにある場合、バケットがそのデータセットのマルチリージョンに含まれるロケーションにあったとしても、シングル リージョンの Cloud Storage バケットは対象外です。たとえば、外部テーブルが EU マルチリージョンにあり、Cloud Storage バケットが europe-central2 にある場合、ジョブは失敗します。
      • デュアルリージョン バケット: BigQuery データセットが東京(asia-northeast1)リージョンにある場合、対応する Cloud Storage バケットは東京リージョンまたは ASIA1 デュアルリージョン(東京を含む)のバケットである必要があります。
      • マルチリージョン バケット: 外部クエリのパフォーマンスは最小のレイテンシと最適なネットワーク帯域幅によって決まるため、マルチリージョンの Cloud Storage バケットでは、外部テーブルとしてマルチリージョン データセットを持つロケーションを使用することはおすすめしません
      サポートされている Cloud Storage のロケーションを表示する。
    • Bigtable: BigQuery 外部テーブルを介して Bigtable のデータにクエリを実行する場合は、Bigtable インスタンスが BigQuery データセットと同じロケーションに存在しなければなりません。
      • 単一リージョン: BigQuery データセットがベルギー(europe-west1)のリージョン ロケーションにある場合は、対応する Bigtable インスタンスがベルギー リージョンに存在しなければなりません。
      • マルチリージョン: 外部クエリのパフォーマンスは最小のレイテンシと最適なネットワーク帯域幅によって決定されるため、Bigtable の外部テーブルにマルチリージョン データセットのロケーションを使用することはおすすめしません
      サポートされている Bigtable のロケーションをご覧ください。
    • Google ドライブ: ロケーションに関する考慮事項は、Google ドライブの外部データソースには適用されません。
    • Cloud SQL: BigQuery の連携クエリCloud SQL のデータに対してクエリを実行する場合、Cloud SQL インスタンスは BigQuery データセットと同じロケーションに存在する必要があります。
      • 単一リージョン: BigQuery データセットがベルギー(europe-west1)のリージョン ロケーションにある場合は、対応する Cloud SQL インスタンスがベルギー リージョンに存在する必要があります。
      • マルチリージョン: BigQuery データセットが US マルチリージョンにある場合、対応する Cloud SQL インスタンスは米国の地理的エリア内の単一のリージョンに存在する必要があります。
      サポートされている Cloud SQL のロケーションをご覧ください。
    • Cloud Spanner: BigQuery の連携クエリSpanner のデータに対してクエリを実行する場合、Cloud Spanner インスタンスは BigQuery データセットと同じロケーションに存在する必要があります。
      • 単一リージョン: BigQuery データセットがベルギー(europe-west1)のリージョン ロケーションにある場合は、対応する Bigtable インスタンスがベルギー リージョンに存在する必要があります。
      • マルチリージョン: BigQuery データセットが US マルチリージョンにある場合、対応する Spanner インスタンスは米国の地理的エリア内の単一のリージョンに存在する必要があります。
      サポートされている Spanner のロケーションをご覧ください。
  • 分析ツールを使用して BigQuery データセットを同じロケーションに配置する
  • データを読み込む場合は、Cloud Storage バケットを同じリージョンに配置します。
    • BigQuery データセットがマルチリージョンにある場合、読み込み対象のデータが含まれている Cloud Storage バケットは、同じマルチリージョンまたはマルチリージョンに含まれるロケーションに存在する必要があります。たとえば、BigQuery データセットが「EU」マルチリージョンにある場合、Cloud Storage バケットは EU 内の「europe-west1」ベルギー リージョンに配置できます。
    • データセットがリージョンにある場合、Cloud Storage バケットは同じリージョンに存在する必要があります。たとえば、データセットが「asia-northeast1」東京リージョンにある場合、Cloud Storage バケットを「ASIA」マルチリージョンに配置することはできません。
    • 例外: データセットが「US」マルチリージョンにある場合は、任意のロケーションの Cloud Storage バケットからデータを読み込むことができます。
  • データをエクスポートする場合は、Cloud Storage バケットを同じロケーションに配置する
    • BigQuery データセットがマルチリージョンにある場合、エクスポート対象のデータが含まれている Cloud Storage バケットは、同じマルチリージョンまたはマルチリージョンに含まれるロケーションに存在する必要があります。たとえば、BigQuery データセットが EU マルチリージョンにある場合、Cloud Storage バケットは EU 内の europe-west1 ベルギー リージョンに配置できます。
    • データセットがリージョンにある場合、Cloud Storage バケットは同じリージョンに存在する必要があります。たとえば、データセットが asia-northeast1 の東京リージョンにある場合、Cloud Storage バケットを ASIA マルチリージョンに配置することはできません。
    • 例外: データセットが US マルチリージョンにある場合、任意のロケーションにある Cloud Storage バケットにデータをエクスポートできます。
  • データ管理計画を作成する
    • BigQuery データセットや Cloud Storage バケットなどのリージョン ストレージ リソースを選択する場合は、データの地理的管理を行うための計画を作成します。

Cloud Storage のロケーションの詳細については、Cloud Storage のドキュメントのバケットのロケーションをご覧ください。

ロケーションを制限する

組織のポリシー サービスを使用して、データセットを作成できるロケーションを制限できます。詳細については、リソース ロケーションの制限リソース ロケーションのサポート対象サービスをご覧ください。

データセットのセキュリティ

BigQuery でデータセットへのアクセスを制御するには、データセットへのアクセスの制御をご覧ください。データ暗号化の詳細については、保存データの暗号化をご覧ください。

次のステップ