Ringkasan migrasi

Halaman ini memberikan ringkasan cara memigrasikan data ke dalam dan ke luar AlloyDB untuk PostgreSQL.

Mengimpor data

Anda dapat memigrasikan data ke AlloyDB melalui dua metode:

  • Mengimpor file yang berisi data Anda secara manual.

  • Menggunakan Google Cloud Database Migration Service untuk memigrasikan konten seluruh instance PostgreSQL yang aktif ke cluster AlloyDB baru.

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 yang berikut:

  • 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 aktif—termasuk semua database dan metadata-nya—ke cluster AlloyDB baru. Database Migration Service dapat membantu Anda melakukan transisi aplikasi yang ada untuk menggunakan AlloyDB sebagai penyimpanan data barunya dengan periode nonaktif minimal.

Lokalitas yang didukung untuk data yang diimpor

AlloyDB mendukung lokalitas berikut:

  • Kumpulan lengkap lokalitas yang disediakan ICU.
  • Kumpulan lokalitas terbatas yang disediakan oleh libc:
    • C.UTF-8
    • en_US.utf8

Jika database yang ingin Anda impor ke AlloyDB ditetapkan secara default ke lokalitas libc selain dua yang tercantum di sini, Anda tetap dapat mengimpor data, tetapi setelan default tersebut tidak akan diterapkan. Untuk memastikan kueri SQL yang menggunakan ORDER BY mengurutkan hasilnya dengan benar, Anda mungkin perlu mengambil langkah tambahan setelah mengimpor data.

Sebaiknya izinkan database baru Anda menggunakan lokalitas default untuk AlloyDB: C.UTF-8, yang disediakan oleh libc. Kemudian, kaitkan pengurutan dengan kolom apa pun yang mungkin terlibat dalam kueri aplikasi Anda dalam klausa ORDER BY, dengan memberi nama pengurutan berbasis ICU yang sesuai untuk setiap 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";

Cluster AlloyDB baru menentukan ratusan pengurutan berdasarkan lokalitas yang disediakan ICU, dan Anda dapat menambahkan lebih banyak lagi menggunakan fasilitas CREATE COLLATION PostgreSQL. Untuk melihat daftar lengkap nama pengurutan berdasarkan ICU yang ditentukan di cluster AlloyDB, jalankan kueri berikut pada salah satu instance-nya:

SELECT collname FROM pg_collation WHERE collprovider = 'i';

Selain pengurutan berbasis ICU, AlloyDB mendukung pengurutan bawaan PostgreSQL yang bernama ucs_basic. Pengelompokan ini menggunakan urutan standar titik kode Unicode untuk memungkinkan pengurutan yang sangat efisien. Sebaiknya gunakan dengan kolom yang urutan pengurutannya sesuai dengan daftar titik kode Unicode.

Mengekspor data

Anda dapat menggunakan utilitas command line untuk mengekspor data AlloyDB ke file yang disimpan di bucket Cloud Storage, dalam berbagai format:

  • CSV, mengekspor satu tabel per file, menggunakan psql.

  • DMP, menggunakan pg_dump untuk membuat arsip biner portabel dari seluruh database Anda.

  • SQL, menggunakan pg_dump untuk membuat daftar pernyataan DDL dan SQL guna merekonstruksi database Anda.