Admin Datastore

Firestore dalam mode Datastore sebelumnya mendukung kemampuan untuk mengaktifkan Admin Datastore, yaitu modul opsional dengan fitur pencadangan dan penghapusan massal. Admin Datastore diganti dengan alternatif yang lebih andal:

Mengakses Admin Datastore

Jika sebelumnya Anda telah mengaktifkan Admin Datastore, Anda dapat terus mengakses modul ini dengan membuka https://ah-builtin-python-bundle-dot-PROJECT_ID.appspot.com/_ah/datastore_admin?app_id=PROJECT_ID, dengan PROJECT_ID sebagai ID project Google Cloud Anda. Jika Admin Datastore dinonaktifkan, Anda tidak akan dapat mengaktifkan kembali modul ini.

Peringatan tentang penggunaan fitur Admin Datastore

  • Untuk menyalin, menghapus, dan mencadangkan, update terbaru mungkin tidak dipertimbangkan.
  • Semua operasi Admin Datastore terjadi dalam aplikasi Anda, sehingga mengurangi kuota Anda.
  • Sebaiknya Anda menonaktifkan penulisan selama pencadangan atau pemulihan.
  • Entity yang ada dengan kunci yang sama akan ditimpa selama operasi salin/pemulihan. Duplikat tidak dibuat jika operasi salin/pemulihan dilakukan beberapa kali. Operasi penyalinan/pemulihan tidak menghapus data tambahan.
  • Jika menggunakan antrean non-default untuk pencadangan/pemulihan, Anda hanya dapat menentukan ah-builtin-python-bundle target di queue.yaml. Anda tidak dapat menggunakan target lain.

Izin akses database

Secara default, Admin Datastore dapat mengakses database Datastore dalam project yang sama dan tidak memerlukan izin Identity and Access Management untuk Datastore.

Mencadangkan data

Ikuti langkah-langkah di bawah ini guna membuat file cadangan untuk pemulihan data di masa mendatang atau untuk diekspor.

  1. Buat bucket penyimpanan untuk project Anda jika belum melakukannya. Secara opsional, periksa apakah akun layanan default App Engine untuk project memiliki akses ke bucket melalui Daftar Kontrol Akses. Hal ini dapat ditetapkan secara default dan dapat diganti, jika perlu.

  2. (Direkomendasikan) Nonaktifkan penulisan Cloud Datastore.

  3. Buka Admin Datastore

  4. Pilih jenis entitas yang ingin Anda cadangkan.

  5. Klik Entitas Cadangan untuk menampilkan formulir cadangan.

  6. Perhatikan bahwa nama cadangan diberikan dan menyertakan stempel tanggal.

    Anda harus mengubah nilai ini jika membuat lebih dari satu pencadangan per hari karena cadangan tidak dilakukan jika cadangan dengan nama yang sama sudah ada.

  7. Perhatikan bahwa antrean default digunakan untuk tugas pencadangan; Anda dapat menggunakannya pada kebanyakan kasus.

    Jika menggunakan antrean non-default untuk pencadangan/pemulihan, Anda hanya dapat menentukan ah-builtin-python-bundle target di queue.yaml. Anda tidak dapat menggunakan target lain.

  8. Pilih Google Cloud Storage sebagai lokasi penyimpanan cadangan.

  9. Saat memilih Cloud Storage, Anda akan diminta untuk memberi nama bucket tempat cadangan akan disimpan, dalam format [BUCKET_NAME]. Anda juga dapat menentukan nama bucket yang diberi akhiran dengan struktur direktori, seperti [BUCKET_NAME]/backups/foo): Jika belum ada, folder tersebut akan dibuat.

  10. Mulai tugas pencadangan dengan mengklik Entitas Cadangan. Perhatikan bahwa halaman status pekerjaan ditampilkan. Status tugas cadangan

  11. Klik Kembali ke Admin Datastore untuk melihat status pencadangan.

  12. Setelah pencadangan selesai, jika Anda menonaktifkan penulisan Cloud Datastore, aktifkan kembali penulisan tersebut.

Pertimbangan pencadangan dan pemulihan

Fitur pencadangan dan pemulihan ditujukan untuk membantu Anda memulihkan data dari penghapusan data yang tidak disengaja atau untuk memungkinkan Anda mengekspor data. Anda dapat mencadangkan semua entity atau hanya jenis entity yang dipilih, dan dapat memulihkan dari salah satu cadangan ini jika diperlukan.

Cadangan disimpan ke Cloud Storage.

Perhatikan bahwa cadangan tidak berisi indeks apa pun. Saat Anda memulihkan, indeks yang diperlukan akan otomatis dibangun ulang menggunakan definisi indeks yang Anda upload dengan aplikasi Anda.

Anda juga dapat menggunakan file cadangan untuk mengekspor data ke layanan Google Cloud lainnya, seperti BigQuery.

Pemulihan tidak menetapkan ID baru ke entitas. Pemulihan menggunakan ID yang ada pada waktu pencadangan dan menimpa entitas yang ada dengan ID yang sama. Selama pemulihan, ID dicadangkan saat entity sedang dipulihkan. Hal ini akan mencegah konflik ID dengan entity baru jika operasi tulis diaktifkan saat pemulihan sedang berjalan. Entitas baru ditambahkan sejak cadangan dipertahankan.

Anda dapat memulihkan semua data dari cadangan atau memulihkan jenis entity tertentu dari cadangan. Selain itu, Anda juga dapat menggunakan fitur ini untuk memulihkan cadangan data aplikasi ke beberapa aplikasi lain, asalkan Anda menggunakan Cloud Storage untuk cadangan Anda.

Membatalkan cadangan

Jika tugas pencadangan sedang berjalan, tugas tersebut akan muncul dalam daftar Cadangan Tertunda pada layar Admin Cloud Datastore.

Untuk menghentikan pencadangan yang berjalan ini:

  1. Buka Admin Datastore
  2. Di bagian Tertunda Cadangan, pilih cadangan dalam daftar dan klik Batalkan.

Saat Anda membatalkan tugas pencadangan, App Engine akan mencoba menghapus data cadangan yang telah disimpan hingga saat itu. Namun, dalam beberapa kasus, beberapa file dapat tetap ada setelah pembatalan. Anda dapat menemukan file ini di lokasi yang dipilih untuk cadangan Anda di Google Cloud Storage dan menghapusnya dengan aman setelah pembatalan selesai. Nama file tersebut dimulai dengan pola berikut: datastore_backup_[BUCKET_NAME].

Menemukan informasi tentang cadangan

Anda mungkin ingin mengetahui detail tentang cadangan, seperti jenis entity yang ada di dalamnya, tempat penyimpanannya di Google Cloud Storage, serta waktu mulai dan akhirnya. Untuk menampilkan informasi cadangan ini:

  1. Buka Admin Datastore
  2. Pilih satu atau beberapa cadangan pada daftar Cadangan atau Cadangan Tertunda.
  3. Klik Info untuk menampilkan informasi untuk cadangan tersebut.
  4. Klik Kembali untuk kembali ke layar utama Admin Cloud Datastore.

Memulihkan data

Untuk memulihkan dari cadangan:

  1. (Direkomendasikan) Nonaktifkan penulisan Cloud Datastore untuk aplikasi Anda. Biasanya, sebaiknya lakukan ini untuk menghindari konflik antara pemulihan dan setiap data baru yang ditulis ke Cloud Datastore.
  2. Buka Admin Datastore
  3. Pada daftar cadangan yang tersedia, pilih cadangan yang ingin Anda pulihkan.
  4. Klik Pulihkan.
  5. Di halaman saran yang ditampilkan, perhatikan daftar entity dengan kotak centang. Secara default, semua entitas akan dipulihkan. Hapus centang kotak di samping setiap entitas yang tidak ingin Anda pulihkan.
  6. Selain itu, di halaman saran, perhatikan bahwa antrean default, dengan setelan performanya yang telah dikonfigurasi sebelumnya, digunakan untuk tugas pemulihan. Ubah ini ke antrean lain yang telah Anda konfigurasi secara berbeda jika Anda memerlukan karakteristik performa antrean yang berbeda. Pastikan antrean yang dipilih tidak memiliki target yang ditentukan di queue.yaml selain ah-builtin-python-bundle.
  7. Mulai pemulihan dengan mengklik Pulihkan. Perhatikan bahwa halaman status pekerjaan akan ditampilkan.
  8. Klik Kembali ke Admin Datastore untuk melihat status pemulihan. Status pemulihan
  9. Setelah pemulihan selesai, jika Anda menonaktifkan penulisan, aktifkan kembali penulisan Cloud Datastore untuk aplikasi Anda.

Memulihkan data ke aplikasi lain

Jika mencadangkan data menggunakan Google Cloud Storage, Anda dapat memulihkan cadangan ke aplikasi selain aplikasi yang digunakan untuk membuat cadangan.

Untuk memulihkan data cadangan dari aplikasi sumber ke aplikasi target:

  1. Buat kebijakan Identity and Access Management (IAM) di bucket penyimpanan aplikasi sumber dengan izin berikut:

    • Kepala Sekolah: [PROJECT_ID]@appspot.gserviceaccount.com
    • Peran: Storage Legacy Bucket Reader dan Storage Legacy Object Reader

    dengan [PROJECT_ID] adalah project ID aplikasi target.

  2. Buat cadangan baru di aplikasi sumber.

  3. (Direkomendasikan) Nonaktifkan penulisan Cloud Datastore untuk aplikasi target Anda guna menghindari konflik antara data yang dipulihkan dan data baru yang ditulis ke Cloud Datastore.

  4. Buka Admin Datastore

  5. Dalam kotak teks di samping tombol berlabel Import Backup Information, tentukan bucket aplikasi sumber yang berisi cadangan, dalam format /gs/[BUCKET_NAME]. Bucket penyimpanan cadangan
    Atau, berikan handle file untuk cadangan tertentu: Untuk melihat handle file untuk cadangan, buka halaman Admin untuk aplikasi sumber, pilih cadangan, dan klik Info. Anda akan melihat handle file di samping label Handle.

  6. Klik Impor Informasi Cadangan.
    Halaman pemilihan yang dihasilkan menampilkan cadangan yang tersedia untuk bucket yang Anda tentukan, kecuali jika Anda menentukan cadangannya berdasarkan handle-nya. Pilih cadangan yang diinginkan, lalu klik salah satu opsi berikut:

    • Tambahkan ke daftar cadangan jika Anda ingin cadangan ini dipertahankan dalam daftar cadangan yang tersedia untuk aplikasi.
    • Pulihkan dari cadangan jika Anda ingin memulihkan dari cadangan ini, tetapi tidak ingin cadangan ditampilkan dalam daftar cadangan yang tersedia untuk aplikasi Anda.
  7. Di halaman saran yang ditampilkan, perhatikan daftar entity dengan kotak centang. Secara default, semua entitas akan dipulihkan. Hapus centang kotak di samping setiap entitas yang tidak ingin Anda pulihkan.

  8. Selain itu, di halaman saran, perhatikan bahwa antrean default, dengan setelan performanya yang telah dikonfigurasi sebelumnya, digunakan untuk tugas pemulihan. Ubah ini ke antrean lain yang telah Anda konfigurasi secara berbeda jika Anda memerlukan karakteristik performa antrean yang berbeda.

  9. Mulai pemulihan dengan mengklik Pulihkan. Perhatikan bahwa halaman status pekerjaan akan ditampilkan.

  10. Setelah pemulihan selesai, jika Anda menonaktifkan penulisan Cloud Datastore, aktifkan kembali penulisan tersebut.

Melihat penggunaan resource

Pencadangan yang sangat sering dilakukan sering kali menghasilkan biaya yang lebih tinggi. Saat menjalankan tugas Admin Cloud Datastore, Anda sebenarnya menjalankan tugas MapReduce yang mendasarinya. Tugas MapReduce menyebabkan jam kerja instance frontend meningkat dibandingkan dengan operasi Storage dan penggunaan Storage.

Untuk melihat penggunaan resource:

  1. Kunjungi halaman App Engine Konsol Google Cloud.

    Buka halaman App Engine

  2. Gunakan menu pulldown di bagian atas halaman untuk memilih layanan default dan versi ah-builtin-python-bundle.

Mengaktifkan atau menonaktifkan penulisan database

Biasanya ada baiknya untuk menonaktifkan penulisan sebelum pemulihan. Hal ini membantu menghindari konflik antara pemulihan dan data baru yang ditulis ke database Anda.

Menonaktifkan penulisan akan mencegah entity diubah oleh

  • Viewer Datastore.
  • aplikasi yang menggunakan Datastore API.

Untuk mengaktifkan atau menonaktifkan operasi tulis:

  1. Buka halaman Admin.

    Buka halaman Admin

  2. Klik Aktifkan penulisan untuk mengaktifkan penulisan, atau Nonaktifkan penulisan untuk menonaktifkan penulisan. Teks tombolnya bervariasi, tergantung pada status project Anda.

Melihat penggunaan resource Admin Datastore

Saat menjalankan tugas Admin Datastore, Anda sebenarnya menjalankan tugas MapReduce yang mendasarinya. Tugas MapReduce menyebabkan jam kerja instance frontend meningkat, selain operasi Storage dan penggunaan Storage.

Untuk melihat penggunaan resource:

  1. Kunjungi halaman App Engine Konsol Google Cloud.

    Buka halaman App Engine

  2. Gunakan menu pulldown di bagian atas halaman untuk memilih layanan default dan versi ah-builtin-python-bundle.

Nonaktifkan akses Admin Datastore

  1. Jalankan perintah berikut, dengan mengganti PROJECT_ID dengan ID project Google Cloud Anda:

    curl -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    https://appengine.googleapis.com/v1/apps/PROJECT_ID/services/default/versions/ah-builtin-python-bundle