Untuk memindahkan database ke dalam atau ke luar AlloyDB untuk PostgreSQL, Anda dapat memigrasikan instance PostgreSQL aktif dengan periode nonaktif minimal menggunakan Database Migration Service atau mengimpor dan mengekspor file CSV, DMP, dan SQL yang disimpan di Cloud Storage.
Mengimpor data
Anda dapat memigrasikan data ke AlloyDB melalui dua metode:
Mengimpor file yang berisi data Anda secara manual.
Menggunakan Database Migration Service untuk memigrasikan konten seluruh instance PostgreSQL yang aktif ke cluster AlloyDB baru. Untuk mengetahui informasi selengkapnya, lihat Bermigrasi ke AlloyDB untuk PostgreSQL menggunakan Database Migration Service.
Mengimpor data yang diarsipkan dari file
AlloyDB memungkinkan Anda mengimpor data dari file yang berada di bucket Cloud Storage. AlloyDB mendukung berbagai format file untuk impor data, termasuk:
CSV, dengan konten satu tabel per file, dimuat menggunakan
psql.DMP, arsip biner dari seluruh database PostgreSQL, yang diimpor menggunakan
pg_restore.SQL, rekonstruksi teks biasa dari database PostgreSQL, yang diproses dengan
psql.
Memigrasikan instance aktif dengan Database Migration Service
Sebagai alternatif untuk mengimpor file dump data secara manual, Anda dapat menggunakan Database Migration Service untuk AlloyDB. Layanan ini memungkinkan Anda memigrasikan seluruh konten instance PostgreSQL yang aktif—termasuk semua database dan metadatanya—ke cluster AlloyDB baru. Database Migration Service dapat membantu Anda mentransisikan aplikasi yang ada untuk menggunakan AlloyDB sebagai datastore barunya dengan periode nonaktif minimal.
Lokalitas yang didukung untuk data yang diimpor
AlloyDB mendukung lokalitas berikut:
- Set lengkap lokalitas yang disediakan ICU.
- Sekumpulan lokalitas terbatas yang disediakan oleh
libc:C.UTF-8en_US.utf8
Jika database yang ingin Anda impor ke AlloyDB ditetapkan secara default ke lokalitas libc selain dua lokalitas yang tercantum di sini, Anda tetap dapat mengimpor data, tetapi setelan default tersebut tidak akan diterapkan. Untuk memastikan bahwa kueri SQL yang menggunakan ORDER BY mengurutkan hasilnya dengan benar, Anda mungkin perlu melakukan langkah-langkah tambahan setelah mengimpor data.
Google merekomendasikan agar database baru Anda menggunakan lokalitas default untuk AlloyDB: C.UTF-8, yang disediakan oleh libc. Kemudian, kaitkan
kolasi dengan
kolom apa pun yang mungkin disertakan dalam kueri aplikasi Anda dalam klausa ORDER BY, dengan memberi nama kolasi berbasis ICU yang sesuai untuk masing-masing kolom. Anda dapat
melakukannya melalui kueri DDL
ALTER TABLE, seperti berikut:
ALTER TABLE TABLE_NAME
ALTER COLUMN COLUMN_NAME
SET DATA TYPE COLUMN_DATA_TYPE
COLLATE "COLLATION_NAME";
Ganti kode berikut:
TABLE_NAME: nama tabel yang berisi kolom.COLUMN_NAME: nama kolom yang akan diperbarui.COLUMN_DATA_TYPE: jenis data kolom.COLLATION_NAME: nama pemeriksaan berbasis ICU yang akan diterapkan.
Cluster AlloyDB baru menentukan ratusan pemeriksaan berdasarkan lokalitas yang disediakan ICU, dan Anda dapat menambahkan lebih banyak lagi menggunakan fasilitas CREATE COLLATION PostgreSQL. Untuk melihat daftar lengkap nama kolasi berbasis ICU yang ditentukan di cluster AlloyDB, jalankan kueri berikut di salah satu instance-nya:
SELECT collname FROM pg_collation WHERE collprovider = 'i';
Selain pemeriksaan berbasis ICU, AlloyDB mendukung pemeriksaan bawaan PostgreSQL bernama ucs_basic. Kolasi ini menggunakan urutan standar poin kode Unicode untuk memungkinkan pengurutan yang sangat efisien. Google merekomendasikan penggunaannya dengan kolom yang tata urutan yang sesuai cocok dengan daftar poin kode Unicode.
Mengekspor data
Anda dapat menggunakan utilitas command line untuk mengekspor data AlloyDB ke dalam file yang disimpan di bucket Cloud Storage, dalam berbagai format:
CSV, mengekspor satu tabel per file, menggunakan
psql.DMP, menggunakan
pg_dumpuntuk membuat arsip biner portabel dari seluruh database Anda.SQL, menggunakan
pg_dumpuntuk membuat daftar pernyataan DDL dan pernyataan SQL guna merekonstruksi database Anda.