リージョン エンドポイントを使用してデータの局所性を構成する

このページでは、Datastore モードの Firestore クライアント ライブラリを構成して、リージョン エンドポイントを使用する方法について説明します。

Datastore モードの Firestore クライアント ライブラリを使用する場合、次のいずれかのエンドポイントを使用できます。

  • グローバル エンドポイント: デフォルトでは、Datastore モードの Firestore クライアント ライブラリは、datastore.googleapis.com という名前のグローバル サービス エンドポイントに API リクエストを送信します。グローバル サービス エンドポイントによって、リクエストがデータベースにルーティングされます。ルーティング中に、データベースのロケーションとは異なるロケーションにあるリージョン サービス エンドポイントを通過する場合があります。

  • リージョン エンドポイント: リージョン エンドポイントでは、特定のリージョンでデータが保存され、処理されることが保証される、リージョン制限が適用されます。サービス エンドポイントがデータベースと同じリージョンの Datastore モードの アプリの Firestore リクエストを処理するには、クライアント ライブラリでリージョン エンドポイントを指定します。

リージョン エンドポイントを設定する

次の例は、Datastore モードの Firestore クライアントを初期化するときにリージョン エンドポイントを設定する方法を示しています。

Java

Datastore モードのクライアント ライブラリをインストールして使用する方法については、Datastore モードのクライアント ライブラリをご覧ください。詳細については、Datastore モードの Java API のリファレンス ドキュメントをご覧ください。

Datastore モードへの認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。


import com.google.cloud.datastore.Datastore;
import com.google.cloud.datastore.DatastoreOptions;

public class RegionalEndpoint {

  public Datastore createClient() throws Exception {
    // Instantiates a client
    DatastoreOptions options =
        DatastoreOptions.newBuilder().setHost("https://nam5-datastore.googleapis.com").build();
    Datastore datastore = options.getService();
    return datastore;
  }
}

Python

Datastore モードのクライアント ライブラリをインストールして使用する方法については、Datastore モードのクライアント ライブラリをご覧ください。詳細については、Datastore モードの Python API のリファレンス ドキュメントをご覧ください。

Datastore モードへの認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。

ENDPOINT = "https://eur3-datastore.googleapis.com"
client_options = ClientOptions(api_endpoint=ENDPOINT)
client = datastore.Client(client_options=client_options)

query = client.query(kind="Task")
results = list(query.fetch())
for r in results:
    print(r)

リージョン エンドポイントのセマンティクス

Datastore モードの Firestore では、リージョンとマルチリージョンの両方のロケーションのリージョン エンドポイントがサポートされています。

リージョン エンドポイントを定義するには、次の形式を使用します。

Java

  https://REGION_NAME-firestore.googleapis.com:443

完全な https URL が使用され、ポート番号がエンドポイントとともに定義されていることを確認します。

Python

  https://REGION_NAME-firestore.googleapis.com

完全な https URL がリージョン エンドポイントとして設定されていることを確認します。

Go

  REGION_NAME-firestore.googleapis.com:443

ポート番号がエンドポイントと一緒に定義されていることを確認します。

REGION_NAME は、リージョンまたはマルチリージョンのホスト名に置き換えます。

ホスト名の例を次に示します。

  • eur3-datastore.googleapis.com
  • nam5-datastore.googleapis.com
  • europe-west6-datastore.googleapis.com
  • asia-northeast2-datastore.googleapis.com

マルチリージョン ホスト名とリージョン ホスト名の完全なリストについては、Datastore モードの Firestore のロケーションをご覧ください。

次のステップ