このページでは、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 モードへの認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証を設定するをご覧ください。
リージョン エンドポイントとマルチリージョン エンドポイントのセマンティクス
リージョン エンドポイント(REP):
Datastore モードの Firestore は、Datastore モードの Firestore のロケーションに記載されているリージョン ロケーションのリージョン エンドポイントをサポートしています。
次の形式を使用してリージョン エンドポイントを定義します。
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
マルチリージョン エンドポイント(MREP)
マルチリージョン エンドポイントの場合は、ロケーション 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 用のベスト プラクティスを確認する。