データセットのロケーション

このページでは、データのロケーションのコンセプトと、データセットを作成できるロケーションの種類について説明します。データセットのロケーションを設定する方法については、データセットの作成をご覧ください。

各リージョンの BigQuery の料金については、料金ページをご覧ください。

主なコンセプト

ロケーションまたはリージョンのタイプ

ロケーションには、2 つの種類があります。

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

  • マルチリージョンは、米国などの、2 つ以上の地理的な場所を含む広い地理的なエリアとなります。

データセットのロケーション

データセットの作成時に BigQuery データを保存するロケーションを指定します。データセットを作成した後、ロケーションを変更することはできませんが、データセットを別のロケーションにコピーするか、手動でデータセットを別のロケーションに移動(再作成)することができます。

BigQuery は、クエリを実行するテーブルを含むデータセットと同じ場所にあるクエリを処理します。

BigQuery では、サービス固有の規約に従って、選択したロケーションにデータが保存されます。

サポートされるリージョン

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

リージョンの説明 リージョン名
南北アメリカ
アイオワ 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
ヨーロッパ
ベルギー europe-west1 リーフアイコン 低 CO2
フィンランド europe-north1 リーフアイコン 低 CO2
フランクフルト europe-west3
ロンドン europe-west2
オランダ europe-west4
ワルシャワ europe-central2
チューリッヒ europe-west6 リーフアイコン 低 CO2
アジア太平洋
デリー asia-south2
香港 asia-east2
ジャカルタ asia-southeast2
メルボルン australia-southeast2
ムンバイ asia-south1
大阪 asia-northeast2
ソウル asia-northeast3
シンガポール asia-southeast1
シドニー australia-southeast1
台湾 asia-east1
東京 asia-northeast1

マルチリージョン

マルチリージョンの説明 マルチリージョン名
欧州連合の加盟国内のデータセンター1 EU
米国内のデータセンター US

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

ロケーションの指定

BigQuery は、データの読み込み、データのクエリ、データのエクスポートを行うときに、リクエストで参照されるデータセットに基づいてジョブを実行するロケーションを決定します。たとえば、クエリが asia-northeast1 リージョンに格納されたデータセット内のテーブルを参照する場合、クエリジョブはそのリージョンで実行されます。クエリがデータセット内のテーブルやその他のリソースを参照せず、宛先テーブルが指定されていない場合、クエリジョブは US マルチリージョンで実行されます。プロジェクトに US 以外のリージョンで定額料金の予約があり、クエリがデータセット内のテーブルやその他のリソースを参照していない場合は、ジョブの送信時に定額料金の予約があるロケーションを明示的に指定する必要があります。

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

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

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

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

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

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

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

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

データセットのロケーションを制限する

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

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

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

次のステップ