このページでは、Datastore モードの Firestore クライアント ライブラリを構成して、リージョン エンドポイントまたはマルチリージョン エンドポイントを使用する方法について説明します。
Datastore モードの Firestore クライアント ライブラリを使用する場合、次のいずれかのエンドポイントを使用できます。
グローバル エンドポイント: デフォルトでは、Datastore モードの Firestore のクライアント ライブラリは、グローバル サービス エンドポイント(名前は
datastore.googleapis.com)に API リクエストを送信します。グローバル サービス エンドポイントがリクエストをデータベースにルーティングします。ルーティングの際に、リクエストがデータベースのロケーションとは異なるロケーションのサーバーを経由する場合があります。リージョン エンドポイント: リージョン エンドポイントには制約が適用されます。これにより、データが指定された Google Cloud リージョンに転送、保存、処理されることが保証されます。 サービス エンドポイントがデータベースと同じリージョンの Datastore モードのアプリの Firestore リクエストを処理するには、クライアント ライブラリでリージョン エンドポイントを指定します。
マルチリージョン エンドポイント: マルチリージョン エンドポイントには制約が適用されます。これにより、データが指定された Google Cloud マルチリージョンに転送、保存、処理されることが保証されます。 サービス エンドポイントがデータベースと同じマルチリージョンでアプリの Datastore モードの Firestore リクエストを処理するようにするには、クライアント ライブラリでマルチリージョン エンドポイントを指定します。
リージョン エンドポイントまたはマルチリージョン エンドポイントを設定する
リージョン エンドポイントまたはマルチリージョン エンドポイントを構成する方法は同じです。クライアント
ライブラリを初期化するときにエンドポイント文字列を指定します。
次の例は、リージョン
エンドポイント(datastore.us-central1.rep.googleapis.com)を使用してエンドポイント文字列を設定する方法です。マルチリージョン
エンドポイントを使用するには、データベースのロケーションに対応するマルチリージョン エンドポイント文字列を指定します(たとえば、nam5 の場合は
datastore.us.rep.googleapis.com)。
Java
Datastore モードのクライアント ライブラリをインストールして使用する方法については、 Datastore モードのクライブラリをご覧ください。 詳細については、Datastore モードの Java API のリファレンス ドキュメントをご覧ください。
Datastore モードへの認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証を設定するをご覧ください。
Python
Datastore モードのクライアント ライブラリをインストールして使用する方法については、 Datastore モードのクライブラリをご覧ください。 詳細については、Datastore モードの Python API のリファレンス ドキュメントをご覧ください。
Datastore モードへの認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証を設定するをご覧ください。
リージョン エンドポイントとマルチリージョン エンドポイントのセマンティクス
リージョン エンドポイント
次の形式を使用してリージョン エンドポイントを定義します。
Java
datastore.REGION_NAME.rep.googleapis.com:443
エンドポイントとともにポート番号が定義されていることを確認します。
Python
datastore.REGION_NAME.rep.googleapis.com
Go
datastore.REGION_NAME.rep.googleapis.com:443
エンドポイントとともにポート番号が定義されていることを確認します。
REGION_NAME は、リージョン ホスト名に置き換えます。
ホスト名の例を以下に示します。
datastore.us-central1.rep.googleapis.comdatastore.europe-west1.rep.googleapis.com
マルチリージョン エンドポイント
マルチリージョン エンドポイントの場合は、ロケーション nam5 と nam7 に us を使用し、ロケーション eur3 に eu を使用します(マルチリージョン ロケーションを参照)。
Java
datastore.us.rep.googleapis.com:443
datastore.eu.rep.googleapis.com:443
エンドポイントとともにポート番号が定義されていることを確認します。
Python
datastore.us.rep.googleapis.com
datastore.eu.rep.googleapis.com
Go
datastore.us.rep.googleapis.com:443
datastore.eu.rep.googleapis.com:443
エンドポイントとともにポート番号が定義されていることを確認します。
ロケーション エンドポイント(非推奨)
ロケーション エンドポイントは非推奨になりました。代わりに、リージョン エンドポイントまたはマルチリージョン エンドポイントを使用してください。
Datastore モードの Firestore は、以前は次の形式のロケーション エンドポイントをサポートしていました。
Java
https://REGION_NAME-datastore.googleapis.com:443
完全な https URL が使用され、エンドポイントとともにポート番号が定義されていることを確認します。
Python
https://REGION_NAME-datastore.googleapis.com
完全な https URL がロケーション エンドポイントとして設定されていることを確認します。
Go
REGION_NAME-datastore.googleapis.com:443
エンドポイントとともにポート番号が定義されていることを確認します。
REGION_NAME は、リージョンまたはマルチリージョンのホスト名に置き換えます。
ホスト名の例を以下に示します。
eur3-datastore.googleapis.comnam5-datastore.googleapis.comeurope-west6-datastore.googleapis.comasia-northeast2-datastore.googleapis.com
マルチリージョンとリージョンのホスト名の完全なリストについては、 Datastore モードの Firestore のロケーションをご覧ください。
グローバル API エンドポイントの使用を制限する
リージョン エンドポイントとマルチリージョン エンドポイントの使用を強制するには、constraints/gcp.restrictEndpointUsage
組織のポリシーの制約を使用して、グローバル API
エンドポイントへのリクエストをブロックします。詳細については、
エンドポイントの使用を制限するをご覧ください。
次のステップ
- Datastore モードの Firestore のデータモデルについて学習する。エンティティ、プロパティ、キーをご覧ください。
- Datastore モードの Firestore 用のベスト プラクティスを確認する。