Data Transmission Service (DTS) mendukung migrasi data dari database PostgreSQL—seperti database PostgreSQL yang dikelola sendiri atau instans ApsaraDB RDS for PostgreSQL—ke ApsaraDB for SelectDB untuk analitik data skala besar. Topik ini menjelaskan prosedur menggunakan instans ApsaraDB RDS for PostgreSQL sebagai database sumber.
Prasyarat
Buat instans ApsaraDB for SelectDB tujuan yang memiliki ruang penyimpanan lebih besar daripada instans ApsaraDB RDS for PostgreSQL sumber. Untuk informasi selengkapnya, lihat Buat instans.
Perhatian
Tipe | Deskripsi |
Batasan database sumber |
|
Batasan lainnya |
|
Kasus khusus |
|
Penagihan
Tipe migrasi | Biaya konfigurasi tautan | Biaya transfer data |
Schema migration dan full data migration | Gratis. | Contoh ini gratis. |
Incremental data migration | Dikenai biaya. Untuk informasi selengkapnya, lihat Ikhtisar penagihan. |
Operasi SQL yang didukung untuk migrasi inkremental
Tipe operasi | Pernyataan SQL |
DML | INSERT, UPDATE, DELETE |
DDL | ADD COLUMN, DROP COLUMN |
Izin yang diperlukan untuk akun database
Database | Izin yang diperlukan | Metode pembuatan akun dan pemberian izin |
Instans ApsaraDB RDS for PostgreSQL sumber | Akun istimewa yang merupakan pemilik database yang akan dimigrasikan. | Buat akun dan Buat database. |
Instans SelectDB tujuan | Izin akses ke kluster (Usage_priv) serta izin baca-tulis pada database (Select_priv, Load_priv, Alter_priv, Create_priv, dan Drop_priv). |
Prosedur
Gunakan salah satu metode berikut untuk membuka halaman Data Migration dan pilih wilayah tempat instans migrasi data berada.
Konsol DTS
Login ke Konsol DTS.
Di panel navigasi kiri, klik Data Migration.
Di pojok kiri atas halaman, pilih wilayah tempat instans migrasi data berada.
Konsol DMS
CatatanOperasi aktual mungkin berbeda tergantung pada mode dan tata letak konsol DMS. Untuk informasi selengkapnya, lihat Mode Sederhana dan Sesuaikan tata letak dan gaya konsol DMS.
Login ke Konsol DMS.
Di bilah navigasi atas, arahkan kursor ke .
Dari daftar drop-down di sebelah kanan Data Migration Tasks, pilih wilayah tempat instans sinkronisasi data berada.
Klik Create Task untuk membuka halaman konfigurasi tugas.
Konfigurasikan database sumber dan tujuan. Tabel berikut menjelaskan parameter-parameternya.
Kategori
Konfigurasi
Deskripsi
Tidak ada
Task Name
DTS secara otomatis menghasilkan nama tugas. Kami menyarankan agar Anda menentukan nama deskriptif untuk memudahkan identifikasi. Nama tidak perlu unik.
Source Database
Select Existing Connection
Jika Anda menggunakan instans database yang terdaftar di DTS, pilih instans dari daftar drop-down. DTS akan mengisi otomatis parameter database berikut untuk instans tersebut. Untuk informasi selengkapnya, lihat Kelola koneksi database.
CatatanDi konsol DMS, Anda dapat memilih instans database dari daftar drop-down Select a DMS database instance.
Jika Anda gagal mendaftarkan instans ke DTS, atau tidak perlu menggunakan instans yang terdaftar di DTS, Anda harus mengonfigurasi informasi database berikut.
Database Type
Pilih PostgreSQL.
Access Method
Pilih Alibaba Cloud Instance.
Instance Region
Pilih wilayah tempat instans ApsaraDB RDS for PostgreSQL sumber berada.
Replicate Data Across Alibaba Cloud Accounts
Dalam contoh ini, digunakan instans database dari Akun Alibaba Cloud saat ini. Pilih No.
Instance ID
Pilih ID instans ApsaraDB RDS for PostgreSQL sumber.
Database Name
Masukkan nama database yang berisi objek yang akan dimigrasikan di instans ApsaraDB RDS for PostgreSQL sumber.
Database Account
Masukkan akun database instans ApsaraDB RDS for PostgreSQL sumber. Untuk informasi selengkapnya tentang izin yang diperlukan, lihat Izin yang diperlukan untuk akun database.
Database Password
Masukkan kata sandi yang sesuai dengan akun database.
Destination Database
Select Existing Connection
Jika Anda menggunakan instans database yang terdaftar di DTS, pilih instans dari daftar drop-down. DTS akan mengisi otomatis parameter database berikut untuk instans tersebut. Untuk informasi selengkapnya, lihat Kelola koneksi database.
CatatanDi konsol DMS, Anda dapat memilih instans database dari daftar drop-down Select a DMS database instance.
Jika Anda gagal mendaftarkan instans ke DTS, atau tidak perlu menggunakan instans yang terdaftar di DTS, Anda harus mengonfigurasi informasi database berikut.
Database Type
Pilih SelectDB.
Access Method
Pilih Alibaba Cloud Instance.
Instance Region
Pilih wilayah tempat instans SelectDB tujuan berada.
Replicate Data Across Alibaba Cloud Accounts
Dalam contoh ini, digunakan instans database dari Akun Alibaba Cloud saat ini. Pilih No.
Instance ID
Pilih ID instans SelectDB tujuan.
Database Account
Masukkan akun database instans SelectDB tujuan. Untuk informasi selengkapnya tentang izin yang diperlukan, lihat Izin yang diperlukan untuk akun database.
Database Password
Kata sandi yang digunakan untuk mengakses instans database.
Di bagian bawah halaman, klik Test Connectivity and Proceed.
CatatanPastikan Blok CIDR server DTS dapat ditambahkan secara otomatis atau manual ke pengaturan keamanan database sumber dan tujuan agar mengizinkan akses dari server DTS. Untuk informasi selengkapnya, lihat Tambahkan alamat IP server DTS ke daftar putih.
Jika database sumber atau tujuan adalah database yang dikelola sendiri dan Access Method-nya tidak diatur ke Alibaba Cloud Instance, klik Test Connectivity di kotak dialog CIDR Blocks of DTS Servers.
Konfigurasikan objek yang akan dimigrasikan.
Di halaman Configure Objects, konfigurasikan objek yang ingin Anda migrasikan.
Konfigurasi
Deskripsi
Migration Types
Jika Anda hanya ingin melakukan migrasi data penuh, pilih Schema Migration dan Full Data Migration.
Untuk melakukan migrasi tanpa downtime, pilih Schema Migration, Full Data Migration, dan Incremental Data Migration.
PentingSelama migrasi data dari database PostgreSQL ke instans SelectDB, tipe data dikonversi. Jika Anda tidak memilih Schema Migration, Anda harus membuat tabel yang menggunakan model Unique atau Duplicate dan memiliki struktur yang diperlukan di instans SelectDB tujuan terlebih dahulu. Untuk informasi selengkapnya, lihat Pemetaan Tipe Data, Informasi Kolom Tambahan, dan Model Data.
Jika Anda memilih Incremental Data Migration, untuk memastikan konsistensi data, jangan menulis data baru ke instans sumber selama migrasi data.
Processing Mode of Conflicting Tables
Precheck and Report Errors: Memeriksa apakah tabel dengan nama yang sama ada di database target. Jika tidak ada tabel dengan nama yang sama, item pemeriksaan ini lolos. Jika ada tabel dengan nama yang sama, kesalahan dilaporkan selama fase Pemeriksaan Awal dan tugas migrasi data tidak akan dimulai.
CatatanJika Anda tidak dapat menghapus atau mengganti nama tabel dengan nama yang sama di database tujuan, Anda dapat mengubah nama tabel di database tujuan. Untuk informasi selengkapnya, lihat Map table and column names.
Ignore Errors and Proceed: Melewati pemeriksaan apakah tabel dengan nama yang sama ada di database target.
PeringatanMemilih Ignore Errors and Proceed dapat menyebabkan ketidakkonsistenan data dan menimbulkan risiko bagi bisnis Anda. Misalnya:
Jika skema tabel konsisten dan DTS menemukan catatan di kluster tujuan yang memiliki nilai primary key yang sama dengan catatan di database sumber, DTS tidak menyimpan catatan di kluster tujuan. Catatan dari database sumber akan menimpa catatan di database tujuan.
Jika skema tabel tidak konsisten, hanya data dari beberapa kolom yang mungkin dimigrasikan, atau migrasi mungkin gagal. Harap berhati-hati.
Capitalization of Object Names in Destination Instance
Huruf kapital untuk nama database, nama tabel, dan nama kolom di instans tujuan. Secara default, DTS default policy dipilih. Anda dapat memilih opsi lain untuk memastikan huruf kapital nama objek konsisten dengan database sumber atau tujuan. Untuk informasi selengkapnya, lihat Specify the capitalization of object names in the destination instance.
Source Objects
Pilih satu atau beberapa objek dari bagian Source Objects. Klik ikon
untuk menambahkan objek ke bagian Selected Objects. CatatanAnda dapat memilih objek migrasi pada tingkat skema atau tabel.
Selected Objects
Untuk menentukan nama objek yang akan dimigrasikan di instans tujuan atau menentukan objek yang menerima data di instans tujuan, klik kanan objek di bagian Selected Objects. Untuk informasi selengkapnya, lihat Map object names.
Untuk menghapus satu atau beberapa objek yang dipilih untuk migrasi, klik objek di bagian Selected Objects lalu klik ikon
untuk memindahkan objek ke bagian Source Objects. Jika Anda memilih Schema Migration sebagai Migration Types, Anda harus memilih objek untuk dimigrasikan pada tingkat tabel. Kemudian, Anda harus mengatur jumlah bucket (parameter
bucket_count). Untuk melakukannya, klik kanan tabel di daftar Selected Objects. Di bagian Parameter Settings, atur Enable Parameter Settings ke Yes, tentukan Value sesuai kebutuhan Anda, lalu klik OK.
CatatanJika Anda menggunakan fitur pemetaan nama objek untuk mengganti nama objek, objek lain yang bergantung pada objek tersebut mungkin gagal dimigrasikan.
Untuk menentukan kondisi WHERE untuk memfilter data, klik kanan tabel di bagian Selected Objects. Di kotak dialog yang muncul, tentukan kondisinya. Untuk informasi selengkapnya, lihat Set filter conditions.
Untuk memilih operasi SQL untuk migrasi inkremental, klik kanan objek di bagian Selected Objects. Di kotak dialog yang muncul, pilih operasi SQL yang ingin Anda migrasikan.
Klik Next: Advanced Settings untuk mengonfigurasi pengaturan lanjutan.
Konfigurasi
Deskripsi
Dedicated Cluster for Task Scheduling
Secara default, DTS menjadwalkan tugas migrasi data ke kluster bersama jika Anda tidak menentukan kluster khusus. Untuk meningkatkan stabilitas tugas migrasi data, beli kluster khusus. Untuk informasi selengkapnya, lihat What is a DTS dedicated cluster.
Retry Time for Failed Connections
Rentang waktu percobaan ulang untuk koneksi yang gagal. Jika database sumber atau tujuan gagal terhubung setelah tugas migrasi data dimulai, DTS segera mencoba menghubungkan kembali dalam rentang waktu tersebut. Nilai yang valid: 10 hingga 1.440 menit. Nilai default: 720. Disarankan mengatur parameter ini lebih dari 30 menit. Jika DTS berhasil terhubung kembali ke database sumber dan tujuan dalam rentang waktu yang ditentukan, tugas migrasi data dilanjutkan. Jika tidak, tugas migrasi data gagal.
CatatanJika beberapa tugas migrasi data yang berbagi database sumber atau tujuan yang sama memiliki nilai rentang waktu percobaan ulang yang berbeda, nilai yang ditentukan terakhir akan diutamakan.
Saat DTS mencoba menghubungkan kembali, Anda tetap dikenai biaya untuk instans DTS. Disarankan menentukan rentang waktu percobaan ulang sesuai kebutuhan bisnis dan segera melepas instans DTS setelah database sumber dan instans tujuan dilepas.
Retry Time for Other Issues
Rentang waktu percobaan ulang untuk masalah lainnya, seperti kegagalan operasi DDL atau DML setelah tugas migrasi data dimulai. DTS akan segera mencoba mengulang operasi tersebut dalam rentang waktu yang ditentukan. Nilai yang valid: 1 hingga 1.440 menit. Nilai default: 10. Disarankan mengatur parameter ini lebih dari 10 menit. Jika operasi yang gagal berhasil dilakukan dalam rentang waktu tersebut, DTS melanjutkan tugas migrasi data. Jika tidak, tugas migrasi data gagal.
PentingNilai parameter Retry Time for Other Issues harus lebih kecil dari nilai parameter Retry Time for Failed Connections.
Enable Throttling for Full Data Migration
Menentukan apakah Pembatasan kecepatan diaktifkan untuk migrasi data penuh. Selama migrasi data penuh, DTS menggunakan sumber daya baca dan tulis database sumber dan tujuan, yang dapat meningkatkan beban server database. Anda dapat mengaktifkan Pembatasan kecepatan sesuai kebutuhan bisnis dengan mengonfigurasi parameter Queries per second (QPS) to the source database, RPS of Full Data Migration, dan Data migration speed for full migration (MB/s), sehingga mengurangi beban server database tujuan.
CatatanParameter ini hanya dapat dikonfigurasi jika Anda memilih Full Data Migration untuk parameter Migration Types.
Enable Throttling for Incremental Data Migration
Menentukan apakah Pembatasan kecepatan diaktifkan untuk migrasi data inkremental. Untuk mengonfigurasi Pembatasan kecepatan, Anda harus mengatur parameter RPS of Incremental Data Migration dan Data migration speed for incremental migration (MB/s), sehingga mengurangi beban server database tujuan.
CatatanParameter ini hanya dapat dikonfigurasi jika Anda memilih Incremental Data Migration untuk parameter Migration Types.
Environment Tag
Anda dapat memilih tag lingkungan untuk mengidentifikasi instans. Dalam contoh ini, Anda tidak perlu memilih tag.
Configure ETL
Menentukan apakah fitur ekstrak, transformasi, muat (ETL) diaktifkan. Untuk informasi selengkapnya, lihat What is ETL?. Nilai yang valid:
Yes: mengonfigurasi fitur ETL. Anda dapat memasukkan pernyataan pemrosesan data di editor kode. Untuk informasi selengkapnya, lihat Configure ETL in a data migration or data synchronization task.
No: tidak mengonfigurasi fitur ETL.
Monitoring and Alerting
Menentukan apakah Peringatan dikonfigurasi untuk tugas migrasi data. Jika tugas gagal atau latensi migrasi melebihi ambang batas yang ditentukan, kontak peringatan akan menerima Notifikasi. Nilai yang valid:
No: tidak mengonfigurasi Peringatan.
Yes: mengonfigurasi Peringatan. Dalam hal ini, Anda juga harus mengonfigurasi ambang batas peringatan dan alert notification settings. Untuk informasi selengkapnya, lihat bagian Configure monitoring and alerting when you create a DTS task dari topik Configure monitoring and alerting.
Opsional: Setelah menyelesaikan konfigurasi di atas, klik Next: Configure Database and Table Fields untuk mengatur Primary Key Column, Distribution Key, dan Engine untuk tabel tujuan.
CatatanLangkah ini tersedia hanya jika Anda memilih Schema Migration sebagai Migration Types saat mengonfigurasi objek tugas. Anda dapat mengatur Definition Status ke All untuk melakukan modifikasi.
Primary Key Column dapat berupa kunci primer komposit yang terdiri dari beberapa kolom. Anda harus memilih satu atau beberapa kolom dari Primary Key Column untuk berfungsi sebagai Distribution Key.
Untuk tabel yang tidak memiliki primary key maupun Kendala UNIK, atur Engine ke duplicate; jika tidak, instans mungkin gagal atau terjadi kehilangan data.
Simpan pengaturan tugas dan jalankan Pemeriksaan Awal.
Untuk melihat parameter yang perlu ditentukan saat memanggil operasi API terkait guna mengonfigurasi tugas DTS, arahkan kursor ke Next: Save Task Settings and Precheck dan klik Preview OpenAPI parameters.
Jika Anda tidak perlu melihat atau telah melihat parameternya, klik Next: Save Task Settings and Precheck di bagian bawah halaman.
CatatanSebelum tugas migrasi data dapat dimulai, DTS melakukan Pemeriksaan Awal. Anda hanya dapat memulai tugas migrasi data setelah tugas lolos Pemeriksaan Awal.
Jika tugas gagal lolos Pemeriksaan Awal, klik View Details di sebelah setiap item yang gagal. Setelah menganalisis penyebab berdasarkan hasil pemeriksaan, atasi masalahnya, lalu jalankan Pemeriksaan Awal lagi.
Jika peringatan dipicu untuk suatu item selama Pemeriksaan Awal:
Jika item peringatan tidak dapat diabaikan, klik View Details di sebelah item yang gagal dan atasi masalahnya, lalu jalankan Pemeriksaan Awal lagi.
Jika item peringatan dapat diabaikan, klik Confirm Alert Details. Di kotak dialog View Details, klik Ignore. Di pesan yang muncul, klik OK, lalu klik Precheck Again untuk menjalankan Pemeriksaan Awal lagi. Mengabaikan item peringatan berpotensi menyebabkan ketidakkonsistenan data dan risiko bagi bisnis Anda.
Beli instance.
Tunggu hingga Success Rate menjadi 100%, lalu klik Next: Purchase Instance.
Di halaman Purchase Instance, konfigurasikan parameter Instance Class untuk instans migrasi data. Tabel berikut menjelaskan parameternya.
Bagian
Parameter
Deskripsi
New Instance Class
Resource Group
Kelompok sumber daya tempat instans migrasi data berada. Nilai default: default resource group. Untuk informasi selengkapnya, lihat What is Resource Management?
Instance Class
DTS menyediakan kelas instans yang berbeda dalam kecepatan migrasi. Anda dapat memilih kelas instans berdasarkan skenario bisnis Anda. Untuk informasi selengkapnya, lihat Instance classes of data migration instances.
Baca dan setujui Data Transmission Service (Pay-as-you-go) Service Terms dengan memilih kotak centang.
Klik Buy and Start. Di pesan yang muncul, klik OK.
Anda dapat melihat progres tugas di halaman Data Migration.
CatatanJika tugas migrasi data tidak dapat digunakan untuk memigrasikan data inkremental, tugas tersebut akan berhenti secara otomatis, dan status Completed akan ditampilkan di bagian Status .
Jika tugas migrasi data dapat digunakan untuk memigrasikan data inkremental, tugas tersebut tidak akan berhenti secara otomatis. Tugas migrasi data inkremental tidak pernah berhenti atau selesai, dan status Running akan ditampilkan di bagian Status.
Pemetaan tipe data
Kategori | Tipe data PostgreSQL | Tipe data SelectDB |
NUMERIC | SMALLINT | SMALLINT |
INTEGER | INT | |
BIGINT | BIGINT | |
DECIMAL | DECIMAL | |
NUMERIC | DECIMAL | |
REAL | DOUBLE | |
DOUBLE | DOUBLE | |
SMALLSERIAL | SMALLINT | |
SERIAL | INT | |
BIGSERIAL | BIGINT | |
MONETARY | MONEY | STRING |
CHARACTER |
| VARCHAR Penting Untuk mencegah kehilangan data, data tipe CHAR(n) dan VARCHAR(n) dikonversi ke VARCHAR(4*n) setelah dimigrasikan ke instans SelectDB.
|
TEXT | STRING | |
BINARY | BYTEA | STRING |
DATE AND TIME | TIMESTAMP [(P)] [WITHOUT TIME ZONE] | DATETIMEV2 |
TIMESTAMP [(P)] WITH TIME ZONE | DATETIMEV2 | |
DATE | DATEV2 | |
TIME [(P)] [WITHOUT TIME ZONE] | VARCHAR(50) | |
TIME [(P)] WITH TIME ZONE | VARCHAR(50) | |
INTERVAL [FIELDS] [(P)] | STRING | |
BOOLEAN | BOOLEAN | BOOLEAN |
GEOMETRIC |
| STRING |
NETWORK ADDRESS |
| STRING |
TEXT SEARCH | TSVECTOR | STRING |
XML | XML | STRING |
JSON | JSON | JSON |
Informasi tentang kolom tambahan
Tabel berikut menjelaskan kolom tambahan yang secara otomatis ditambahkan oleh DTS atau yang harus Anda tambahkan secara manual ke tabel tujuan yang menggunakan model Duplicate.
Nama | Tipe data | Nilai default | Deskripsi |
_is_deleted | Int | 0 | Menunjukkan apakah data dihapus.
|
_version | Bigint | 0 |
|
_record_id | Bigint | 0 |
|