このページでは、Spanner のグローバル サービス エンドポイントとリージョン サービス エンドポイント、それらの使用方法について説明します。
サービス エンドポイントは、API サービスのネットワーク アドレスを指定するベース URL です。Spanner にはグローバル エンドポイントとリージョン エンドポイントの両方があります。グローバルまたはリージョンのサービス エンドポイントを使用して、Spanner にリクエストを送信できます。
リージョンについて厳しい制約がない場合は、グローバル エンドポイントを使用します。データは選択したリージョン内に保存されますが、リージョン外で処理される場合があります。Spanner のグローバル エンドポイントは spanner.googleapis.com
です。デフォルトの API エンドポイントがグローバル エンドポイントにアクセスします。
リージョン エンドポイントは、リージョン制限を適用します。データは同じリージョン内に保存され、処理されます。Spanner のリージョン エンドポイントを使用すると、保存および処理されるデータが、データベースのある Spanner リージョン インスタンス構成に制限されることが保証されます。規制要件に合わせてデータのロケーションを制限し、制御する必要がある場合は、リージョン エンドポイントを使用します。リージョン エンドポイントを使用して、別のインスタンス構成に属するリソースにアクセスすることはできません。リージョン エンドポイントをそのインスタンス構成で使用するには、まず、リージョン インスタンス構成でインスタンスを作成する必要があります。
使用できるリージョンについては、リージョン エンドポイントを使用できるリージョンをご覧ください。使用するエンドポイントに関係なく、基盤となる Spanner ストレージ ポリシーは変更されません。
リージョン エンドポイントのセキュリティとコンプライアンス
グローバル エンドポイントではなく Spanner リージョン エンドポイントを使用する利点は、リージョン エンドポイントが、セキュリティ、コンプライアンス、規制要件を満たすためにリージョンの分離と保護を利用できることです。
使用できるのは、そのリージョン インスタンス構成に属するリージョン エンドポイントのみです。たとえば、アクセスしているインスタンスが us-central1
リージョン インスタンス構成に属している場合、spanner.me-central2.rep.googleapis.com
を使用してリクエストを処理することはできません。こうしたリクエストは InvalidRegionalRequest
エラーで拒否されます。
リージョン エンドポイントの制限事項
リージョン エンドポイントを使用してデュアルリージョン インスタンス構成またはマルチリージョン インスタンス構成にアクセスすることはできません。デュアルリージョンまたはマルチリージョンのインスタンス構成にアクセスするには、グローバル エンドポイントを使用する必要があります。たとえば、マルチリージョン インスタンス構成 nam7
のインスタンスがある場合、リージョン エンドポイント spanner.us-central1.rep.googleapis.com
を使用して nam7
のインスタンスにリクエストを送信できません。
いずれかのインスタンス リソースでリージョン サービス エンドポイントを使用したアクティブなリクエストがある場合、リージョン適用によってクロスリージョン インスタンスへのアクセスがブロックされるため、インスタンスの移動は、リージョン エンドポイントを使用するすべてのリクエストに影響します。グローバル エンドポイントを使用するリクエストは影響を受けません。
リージョン エンドポイントの命名規則
Spanner リージョン エンドポイントの名前は、リージョン インスタンス構成名と同じ命名規則に従います。リージョン エンドポイントの形式は spanner.REGION.rep.googleapis.com
です。たとえば、ダンマームのリージョン インスタンス構成名とリージョン エンドポイント名はどちらも me-central2
です。したがって、リージョン エンドポイントは spanner.me-central2.rep.googleapis.com
です。
詳細については、リージョン エンドポイントを使用できるリージョンをご覧ください。
リージョン エンドポイントを指定する
Spanner リージョン エンドポイントは、Google Cloud CLI、REST、または RPC API リクエストを使用して指定できます。
gcloud
リージョン エンドポイントを指定してグローバル エンドポイントをオーバーライドするには、次のコマンドを実行します。
gcloud config set api_endpoint_overrides/spanner https://spanner.REGION.rep.googleapis.com/
次の値を指定します。
REGION
- リージョン エンドポイントを設定するリージョン。例:
me-central2
。
たとえば、リージョン エンドポイントを me-central2
として構成するには、次のコマンドを実行します。
gcloud config set api_endpoint_overrides/spanner https://spanner.me-central2.rep.googleapis.com/
リージョン エンドポイントをグローバル エンドポイントに再構成するには、次のコマンドを実行します。
gcloud config unset api_endpoint_overrides/spanner
REST API
デフォルトの API エンドポイントがグローバル エンドポイントにアクセスします。リージョン エンドポイントを使用するには、次のパターンを使用して、エンドポイントをリージョン エンドポイントのアドレスに構成します。
https://spanner.REGION.rep.googleapis.com
たとえば、ダンマーム(me-central2
)のリージョン インスタンス構成でデータ保証を適用する場合は、以下を使用します。
https://spanner.me-central2.rep.googleapis.com
詳細については、REST API とリージョン エンドポイントを使用できるリージョンをご覧ください。
RPC API
デフォルトの API エンドポイントがグローバル エンドポイントにアクセスします。リージョン エンドポイントを使用するには、次のパターンを使用して、エンドポイントをリージョン エンドポイントのアドレスに構成します。
spanner.REGION.rep.googleapis.com
たとえば、ダンマーム(me-central2
)のリージョン インスタンス構成でデータ保証を適用する場合は、以下を使用します。
spanner.me-central2.rep.googleapis.com
詳細については、RPC API とリージョン エンドポイントを使用できるリージョンをご覧ください。
リージョン エンドポイントを使用できるリージョン
Spanner リージョン エンドポイントは、次のリージョンで使用できます。
ベースのリージョン名 | リージョンの説明 | |
---|---|---|
南北アメリカ | ||
us-central1 |
アイオワ | |
us-central2 |
オクラホマ | |
us-east1 |
サウスカロライナ州 | |
us-east4 |
北バージニア | |
us-east5 |
コロンバス | |
us-east7 |
アラバマ | |
us-south1 |
ダラス | |
us-west1 |
オレゴン | |
us-west2 |
ロサンゼルス | |
us-west3 |
ソルトレイクシティ | |
us-west4 |
ラスベガス | |
us-west8 |
フェニックス | |
中東 | ||
me-central2 |
ダンマーム | |
ヨーロッパ | ||
europe-west8 |
ミラノ |
次のステップ
Spanner のインスタンス構成の詳細を確認する。
Spanner REST API とグローバル エンドポイントとリージョン エンドポイントの詳細を確認する。
Spanner RPC API とグローバル エンドポイントとリージョン エンドポイントの詳細を確認する。