Mengenal Cloud Firestore Location dan Cara Mengubahnya

Sebelum kamu menggunakan cloud firestore dengan mudah, sebaiknya kamu memiliki lokasi dari database tersebut. Mengapa? Karena hal ini akan mempengaruhi latensi dan meningkatkan penggunaannya. Oleh karena itu, kamu harus memahami cloud firestore location tersebut dengan baik.

Lokasi yang ada bisa digunakan untuk menyimpan data yang mudah digunakan dan diakses kapan saja. Lokasi ini biasanya diatur secara default di Google Cloud Platform (GCP) sumber lokasi.

Perlu diingat bahwa GCP ini mungkin telah diatur sebelumnya, bisa saja pada waktu pembuatan project ataupun saat mengatur hal lain yang membutuhkan pengaturan lokasi. 

Semisalnya saja penentuan cloud storage untuk mesin aplikasi yang membutuhkan cloud scheduler.

Sumber Lokasi GCP Default

Beberapa layanan yang tersedia untuk pengembangan aplikasi membutuhkan pengaturan lokasi yang kemudian dikenal dengan GCP (Google Cloud Platform) sumber lokasi. 

Lokasi ini akan menentukan data yang disimpan dalam GCP service yang membutuhkan pengaturan lokasi tersebut.

Perlu diingat setelah kamu membuat pengaturan lokasi maka hal ini tidak bisa diubah lagi. Oleh karena itu, kamu harus memahami dan mempertimbangkan lokasinya dengan baik. 

Kamu bisa menggunakan beberapa produk yang memakai default GCP lokasi yang sama, yaitu:

  • Cloud Firestore. Jika memakai ini maka kamu tidak bisa memakai firebase realtime database.

  • Cloud Storage. Penggunaannya cocok untuk berkelompok. Namun, untuk blaze plan maka sebaiknya kamu membuat beberapa kelompok dengan lokasi yang berbeda-beda.

  • Google App Engine (GAE). Jika memakai aplikasi ini maka kamu akan memakai default GCP resource location yang sama. Tapi, jika menggunakan cloud scheduler maka kamu wajib memakai aplikasi untuk semua project yang berkaitan.

Tipe Lokasi

Kemudian kamu bisa menggunakan cloud firestore data baik itu untuk multi regional maupun regional tunggal. Perlu dicatat bahwa saat memakai GAE dengan lokasi baik itu pusat US atau Eropa-Barat, maka cloud firestore database akan dihitung sebagai multi regional secara otomatis.

Lokasi Multi Regional 

Pemilihan multi regional lokasi akan memaksimalkan availabilitas dan durabilitas dari database yang kamu miliki. Multi regional dibentuk berdasarkan pemahaman akan regional yang memiliki beberapa replika dari database yang kamu simpan. 

Setiap replika baik itu baca-tulis dan sebaliknya akan dihitung sebagai data dari semua data yang ada di database dan dihitung sama. 

Data yang direplika di antara beberapa regional akan tetap dihitung walaupun ada bagian yang hilang. 

Di dalam regional tersebut, data akan direplika berdasarkan zona tertentu sehingga data yang ada tetap tersedia walaupun ada yang hilang dalam suatu zona.

Firebase yang mendukung multi region resource location berikut ini:

  1. eur3 > Europe > europe-west1 (Belgium), europe-west4 (Belanda) > europe-north1 (Finlandia)

  2. nam5 > United States > us0central (lowa), us-central2 (Oklahoma-private GCP regional) > us-east1 (Carolina Selatan)

Lokasi Regional

Lokasi regional merupakan tempat spesifik yang dijadikan sebagai database seperti Carolina Selatan. 

Data dalam regional lokasi adalah replika dari beberapa zona dalam regional tertentu. Semua regional lokasi akan dipisahkan dari regional lokasi lainnya dalam ukuran sekitar 100 mile.

Kamu bisa memilih lokasi regional untuk biaya lebih rendah, selain itu latensi yang ada juga lebih rendah jika kamu memakai aplikasi tertentu. Adapun firebase yang mendukung regional GCP resource location antara lain:

  • Amerika Utara
    us-west1 (Oregon)
    us-west2 (Los Angeles)
    us-west3 (Kota Salt Lake)
    us-west4 (Las Vegas)
    northamerica-northeast1 (Montreal)
    us-east1 (Carolina Selatan)
    us-east4 (Virginia Utara)

  • Amerika Selatan
    southamerica-east1 (Sao Paulo)

  • Eropa
    europe-west2 (London)
    europe-west3 (Frankfurt)
    europe-central2 (Warsaw)
    europe-west6 (Zurich)

  • Asia
    asia-south1 (Mumbai)
    asia-southeast2 (Jakarta)
    asia-east2 (Hongkong)
    asia-east1 (Taiwan)
    asia-northeast1 (Tokyo)
    asia-northeast2 (Osaka)
    asia-northeast3 (Seoul)

  • Australia
    australia-southeast1 (Sydney)

Lokasi SLA (Service Level Agreement)

Lokasi cloud firestore bergantung pada penggunaan persentase SLA, yaitu:

  • Penggunaan cloud firestore multi regional >=99.999%

  • Penggunaan cloud firestore regional >=99.99%

Cara Mengubah Default Regional atau Zona

Mengubah default region ataupun zona akan mempengaruhi cloud firestore location yang ada. Ketika kamu akan meminta untuk menkomputasikan sesuai maka kamu harus menentukan regional dan zona bergantung pada kebutuhan masing-masing.

Setiap permintaan resources regional dan zona membutuhkan nama tertentu seperti yang tertera di atas. 

Contohnya saja, kamu harus menspesifikasikan regional tertentu untuk membuat static external IP address dan kamu harus membuat zona spesifik untuk membuat virtual machin (VM).

Saat membuat project baru compute engine akan secara otomatis memilih regional dan zona secara default bergantung pada lokasi project tersebut dibuat atau yang paling dekat. 

Jika kamu ingin memakai tempat yang berbeda maka kamu harus melakukan pengaturan secara manual.

Sebelum memulai kamu harus install atau update versi terbaru dari Google Cloud CLI dan setting default regional dan zona.

Cara Mengubah Regional atau Zona

Saat kamu memakai alat bernama Google Cloud CLI atau Google Cloud konsol maka alat ini akan mengatur regional dan zona secara otomatis. Kamu bisa memakainya setting default atau mengubahnya dengan mudah.

Saat memakai konsol dan gcloud CLI maka secara otomatis alat tersebut akan membuat alamat regional dan zona secara otomatis.

Pada metadata server akan menunjukkan informasi tentang project termasuk ID projek serta namanya. Kamu bisa membuat query metadata server untuk mendapatkan dan memakai informasi pada sebuah project.

Jika kamu memakai regional dan zona yang disetting secara default, maka compute engine akan membuat value metadata tertentu pada projectmu dalam bentuk:

  • google-compute-default-region

  • google-compute-default-zone

Untuk melihat default regional dan zona yang terpilih, maka gunakan command gcloud, ubah PROJECT_ID pada project ID, yaitu:

gcloud compute project-info describe --project PROJECT_ID

Lihat regional dan zona default pada value metadata yang muncul. Jika google-compute-default-region dan google-compute-default-zone dan value yang hilang dari respon yang ada, berarti tidak ada regional dan zona yang tidak terpilih dari set tersebut.

Sebenarnya, tidak ada batasan penggunaan zona ataupun regional yang kamu inginkan. 

Contohnya saja, kamu bisa menggunakan zona lain di luar wilayah tempat tinggal masing-masing yang tertera secara default. Kamu bisa memilih regional dan zona dan membuatnya berdasarkan kebutuhan masing-masing.

Melalui konsol:

  • Pada konsol, masuk di halaman pengaturan

  • Melalui regional menu yang ada pilihlah regional yang kamu suka

  • Lalu, di menu zona, pilihlah yang kamu suka dan simpan

Menggunakan Google Cloud:

Firebase change region bisa kamu lakukan dengan membuat permintaan dari metadata server, contohnya:

gcloud compute project-info add-metadata \

            --metadata google-compute-default-region=europe-west1,google-compute-default-zone=europe-west1-b

Setelah melakukan update pada metadata dengan memakai metode apapun, gunakan gcloudinit command dan mengubah default konfigurasi. Gcloud CLI akan berubah setelah kamu menjalankan command gcloudinit tersebut.

Perubahan bisa dilakukan di metadata server, mengubah regional dan zona secara lokal untuk Google Cloud CLI atau mengubah settingan secara manual untuk setiap permintaan dengan memakai Google Cloud CLI ataupun konsol.

Cloud firestore location penting untuk dipahami dengan baik oleh user, karena hal ini akan memudahkan kamu dalam penggunaannya baik untuk saat ini ataupun nanti. Kamu juga bisa membukanya kembali sewaktu-waktu dengan mudah dan cepat.

Kamu bisa mempelajari terkait cloud firestore location dengan mudah di Career Companion by Prasmul-eli. Metode pembelajarannya cukup fleksibel dan dilakukan oleh ahlinya. Yuk, join sekarang.


Mengenal Perbedaan Cloud Firestore dan Realtime Database