Mengonfigurasi lokalitas data dengan endpoint regional

Halaman ini menjelaskan cara mengonfigurasi library klien Firestore dalam mode Datastore untuk menggunakan endpoint regional atau multi-regional.

Saat menggunakan library klien Firestore dalam mode Datastore, Anda dapat menggunakan salah satu endpoint berikut:

  • Endpoint global: Secara default, library klien Firestore dalam mode Datastore mengirim permintaan API ke endpoint layanan global bernama datastore.googleapis.com. Endpoint layanan global mengarahkan permintaan ke database Anda. Selama perutean, permintaan dapat melewati server di lokasi yang berbeda dari lokasi database Anda.

  • Endpoint regional: Endpoint regional menerapkan batasan yang memastikan bahwa data ditransmisikan, disimpan, dan diproses di region Google Cloud tertentu. Untuk memastikan bahwa endpoint layanan memproses permintaan Firestore dalam mode Datastore aplikasi Anda di region yang sama dengan database Anda, tentukan endpoint regional di library klien.

  • Endpoint multi-regional: Endpoint multi-regional menerapkan batasan yang memastikan bahwa data ditransmisikan, disimpan, dan diproses di multi-region Google Cloud tertentu. Untuk memastikan bahwa endpoint layanan memproses permintaan Firestore dalam mode Datastore aplikasi Anda di multi-region yang sama dengan database Anda, tentukan endpoint multi-regional di library klien.

Menetapkan endpoint regional atau multi-regional

Metode untuk mengonfigurasi endpoint regional atau multiregional sama: Anda memberikan string endpoint saat menginisialisasi library klien. Contoh berikut menunjukkan cara menyetel string endpoint menggunakan endpoint regional (datastore.us-central1.rep.googleapis.com). Untuk menggunakan endpoint multi-regional, berikan string endpoint multi-regional yang sesuai dengan lokasi database Anda (misalnya, datastore.us.rep.googleapis.com untuk nam5).

Java

Untuk mempelajari cara menginstal dan menggunakan library klien untuk mode Datastore, lihat library klien mode Datastore. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Java API mode Datastore.

Untuk melakukan autentikasi ke mode Datastore, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.


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://datastore.us-central1.rep.googleapis.com").build();
    Datastore datastore = options.getService();
    return datastore;
  }
}

Python

Untuk mempelajari cara menginstal dan menggunakan library klien untuk mode Datastore, lihat library klien mode Datastore. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Python API mode Datastore.

Untuk melakukan autentikasi ke mode Datastore, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.

from google.cloud import datastore
from google.api_core.client_options import ClientOptions

ENDPOINT = "https://datastore.africa-south1.rep.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)

Semantik endpoint regional dan multi-regional

Endpoint Regional (REP):

Firestore dalam mode Datastore mendukung endpoint regional untuk lokasi regional yang tercantum di sini Lokasi Firestore dalam mode Datastore.

Gunakan format berikut untuk menentukan endpoint regional:

Java

    datastore.REGION_NAME.rep.googleapis.com:443

Pastikan nomor port ditentukan bersama dengan endpoint.

Python

    datastore.REGION_NAME.rep.googleapis.com

Go

    datastore.REGION_NAME.rep.googleapis.com:443

Pastikan nomor port ditentukan bersama dengan endpoint.

Ganti REGION_NAME dengan nama hostname regional.

Beberapa contoh nama host adalah:

  • datastore.us-central1.rep.googleapis.com
  • datastore.europe-west1.rep.googleapis.com

Multi-regional Endpoints (MREP)

Untuk endpoint multi-regional, gunakan us untuk lokasi nam5 dan nam7, serta eu untuk lokasi eur3 (lihat Lokasi multi-regional).

Java

    datastore.us.rep.googleapis.com:443
    datastore.eu.rep.googleapis.com:443

Pastikan nomor port ditentukan bersama dengan endpoint.

Python

    datastore.us.rep.googleapis.com
    datastore.eu.rep.googleapis.com

Go

    datastore.us.rep.googleapis.com:443
    datastore.eu.rep.googleapis.com:443

Pastikan nomor port ditentukan bersama dengan endpoint.

Endpoint Lokasi (Tidak digunakan lagi)

Endpoint lokasi kini tidak digunakan lagi. Gunakan endpoint regional atau multi-regional sebagai gantinya.

Firestore dalam mode Datastore sebelumnya mendukung endpoint lokasi dengan format berikut:

Java

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

Pastikan URL https lengkap digunakan dan nomor port ditentukan bersama dengan endpoint.

Python

  https://REGION_NAME-datastore.googleapis.com

Pastikan URL https lengkap ditetapkan sebagai endpoint lokasi.

Go

  REGION_NAME-datastore.googleapis.com:443

Pastikan nomor port ditentukan bersama dengan endpoint.

Ganti REGION_NAME dengan nama host regional atau multi-regional.

Beberapa contoh nama host adalah:

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

Untuk mengetahui daftar lengkap nama host multi-region dan regional, lihat Lokasi Firestore dalam mode Datastore.

Membatasi penggunaan endpoint API global

Untuk membantu menerapkan penggunaan endpoint regional dan multi-regional, gunakan batasan kebijakan organisasi constraints/gcp.restrictEndpointUsage untuk memblokir permintaan ke endpoint API global. Untuk mengetahui informasi selengkapnya, baca artikel Membatasi penggunaan endpoint.

Langkah berikutnya