Topik ini menjelaskan cara menggunakan Data Transmission Service (DTS) untuk menyinkronkan data dari instans ApsaraDB RDS for PostgreSQL ke kluster PolarDB for PostgreSQL.
Prasyarat
Buat kluster tujuan PolarDB for PostgreSQL. Kapasitas penyimpanannya harus lebih besar daripada ruang penyimpanan yang digunakan oleh instans sumber ApsaraDB RDS for PostgreSQL. Untuk informasi selengkapnya, lihat Buat kluster database.
CatatanUntuk versi database sumber dan tujuan yang didukung, lihat Ikhtisar solusi sinkronisasi.
Buat database di kluster PolarDB for PostgreSQL tujuan untuk menerima data yang disinkronkan. Untuk informasi selengkapnya, lihat Manajemen database.
Catatan
Selama sinkronisasi skema, DTS menyinkronkan kunci asing dari database sumber ke database tujuan.
Selama sinkronisasi data penuh dan sinkronisasi data inkremental, DTS secara sementara menonaktifkan pemeriksaan kendala dan operasi kaskade kunci asing pada tingkat sesi. Ketidakkonsistenan data dapat terjadi jika operasi pembaruan atau penghapusan kaskade dilakukan pada database sumber saat tugas sedang berjalan.
Jenis | Deskripsi |
Batasan database sumber |
|
Batasan lainnya |
|
Kasus khusus |
|
Harga
|
Jenis sinkronisasi |
Biaya |
|
Sinkronisasi skema dan sinkronisasi penuh |
Gratis. |
|
Sinkronisasi inkremental |
Biaya berlaku. Lihat Ikhtisar penagihan. |
Topologi sinkronisasi yang didukung
Sinkronisasi satu arah satu-ke-satu
Sinkronisasi satu arah satu-ke-banyak
Sinkronisasi kaskade satu arah
Sinkronisasi satu arah banyak-ke-satu
Untuk informasi selengkapnya tentang topologi sinkronisasi yang didukung dan catatan penggunaannya, lihat Topologi sinkronisasi data.
Objek yang didukung
-
SCHEMA,TABLE.CatatanIni mencakup
PRIMARY KEY,UNIQUE KEY,FOREIGN KEY,DATATYPE(tipe data bawaan), danDEFAULT CONSTRAINT. -
VIEW,PROCEDURE(memerlukan PostgreSQL 11 atau lebih baru),FUNCTION,RULE,SEQUENCE,EXTENSION,TRIGGER,AGGREGATE,INDEX,OPERATOR,DOMAIN.
Operasi SQL yang didukung
Jenis operasi | Operasi SQL |
DML |
|
DDL |
|
Izin akun database yang diperlukan
|
Database |
Izin yang diperlukan |
Pembuatan dan otorisasi akun |
|
RDS PostgreSQL |
Akun berhak tinggi yang juga harus menjadi pemilik (akun berotorisasi) database yang dipilih. Catatan
Jika Anda hanya perlu menyinkronkan operasi DML untuk instans sumber RDS PostgreSQL 9.4, akun tersebut hanya memerlukan izin |
Buat akun dan buat database. |
|
PolarDB for PostgreSQL |
izin owner pada Catatan
Anda dapat menggunakan pemilik database yang Anda tentukan saat membuat database. |
Prosedur
Buka halaman daftar tugas sinkronisasi di wilayah tujuan. Anda dapat menggunakan salah satu dari dua metode berikut:
Dari konsol DTS
Login ke konsol Data Transmission Service (DTS).
Di panel navigasi kiri, klik Data Synchronization.
Di pojok kiri atas halaman, pilih wilayah tempat instans sinkronisasi berada.
Dari konsol DMS
CatatanOperasi aktual dapat berbeda tergantung pada mode dan tata letak konsol DMS. Untuk informasi selengkapnya, lihat Mode sederhana dan Sesuaikan tata letak dan gaya antarmuka DMS.
Login ke Data Management (DMS).
Di bilah menu atas, pilih .
Di sebelah kanan Data Synchronization Tasks, pilih wilayah tempat instans sinkronisasi berada.
Klik Create Task untuk membuka halaman konfigurasi tugas.
Konfigurasikan database sumber dan tujuan.
Bagian
Parameter
Deskripsi
N/A
Task Name
DTS secara otomatis menghasilkan nama tugas. Kami menyarankan agar Anda menentukan nama deskriptif untuk memudahkan identifikasi. Nama tersebut tidak harus unik.
Source Database
Select Existing Connection
Untuk menggunakan instans database yang ditambahkan ke sistem (baru dibuat atau disimpan), pilih instans database dari daftar drop-down. Informasi database akan dikonfigurasi secara otomatis.
CatatanDi konsol DMS, item konfigurasi ini bernama Select a DMS database instance..
Jika Anda belum menambahkan instans database ke sistem, atau Anda tidak perlu menggunakan instans yang sudah ditambahkan, konfigurasikan informasi database berikut secara manual.
Database Type
Pilih PostgreSQL.
Connection Type
Pilih Alibaba Cloud Instance.
Instance Region
Pilih wilayah instans sumber ApsaraDB RDS for PostgreSQL.
Replicate Data Across Alibaba Cloud Accounts
Dalam contoh ini, sinkronisasi dilakukan dalam satu akun Alibaba Cloud. Pilih No.
Instance ID
Pilih ID instans sumber ApsaraDB RDS for PostgreSQL.
Database Name
Masukkan nama database di instans sumber ApsaraDB RDS for PostgreSQL yang berisi objek sinkronisasi.
Database Account
Masukkan akun database untuk instans sumber ApsaraDB RDS for PostgreSQL. Untuk informasi persyaratan izin, lihat Izin akun database yang diperlukan.
Database Password
Masukkan kata sandi yang sesuai dengan akun database.
Encryption
Pilih metode koneksi. Dalam contoh ini, Non-encrypted dipilih.
Jika Anda perlu menghubungkan ke database menggunakan enkripsi SSL, pilih SSL-encrypted, lalu unggah CA Certificate, Client Certificate, dan Private Key of Client Certificate sesuai kebutuhan. Kemudian, masukkan Private Key Password of Client Certificate.
Catatan-
Jika Anda memilih SSL-encrypted untuk database PostgreSQL yang dikelola sendiri, Anda harus mengunggah CA Certificate.
-
Jika Anda perlu menggunakan sertifikat klien, Anda harus mengunggah Client Certificate dan Private Key of Client Certificate, lalu masukkan Private Key Password of Client Certificate.
-
Untuk informasi tentang fitur enkripsi SSL untuk instans RDS for PostgreSQL, lihat Enkripsi koneksi SSL.
Destination Database
Select Existing Connection
Untuk menggunakan instans database yang ditambahkan ke sistem (baru dibuat atau disimpan), pilih instans database dari daftar drop-down. Informasi database akan dikonfigurasi secara otomatis.
CatatanDi konsol DMS, item konfigurasi ini bernama Select a DMS database instance..
Jika Anda belum menambahkan instans database ke sistem, atau Anda tidak perlu menggunakan instans yang sudah ditambahkan, konfigurasikan informasi database berikut secara manual.
Database Type
Pilih PolarDB for PostgreSQL.
Connection Type
Pilih Alibaba Cloud Instance.
Instance Region
Pilih wilayah kluster tujuan PolarDB for PostgreSQL.
Instance ID
Pilih ID kluster tujuan PolarDB for PostgreSQL.
Database Name
Masukkan nama database di kluster tujuan PolarDB for PostgreSQL yang akan menerima data.
Database Account
Masukkan akun database untuk kluster tujuan PolarDB for PostgreSQL. Untuk informasi persyaratan izin, lihat Izin akun database yang diperlukan.
Database Password
Masukkan kata sandi yang sesuai dengan akun database.
Setelah menyelesaikan konfigurasi, klik Test Connectivity and Proceed di bagian bawah halaman.
CatatanPastikan bahwa blok CIDR alamat IP server DTS telah ditambahkan ke pengaturan keamanan database sumber dan tujuan untuk mengizinkan akses dari server DTS. Hal ini dapat dilakukan secara otomatis atau manual. Untuk informasi selengkapnya, lihat Tambahkan blok CIDR alamat IP server DTS ke daftar putih.
Jika database sumber atau tujuan adalah database yang dikelola sendiri (di mana Access Method bukan Alibaba Cloud Instance), Anda juga harus mengklik Test Connectivity di kotak dialog CIDR Blocks of DTS Servers.
Konfigurasikan objek tugas.
Di halaman Configure Objects, konfigurasikan objek yang akan disinkronkan.
Parameter
Deskripsi
Synchronization Types
Incremental Data Synchronization dipilih. Secara default, Anda juga harus memilih Schema Synchronization dan Full Data Synchronization. Setelah pemeriksaan awal selesai, DTS melakukan sinkronisasi data penuh objek yang dipilih dari instans sumber ke kluster tujuan. Hal ini berfungsi sebagai data dasar untuk sinkronisasi data inkremental berikutnya.
Synchronization Topology
Pilih One-way Synchronization.
Processing Mode of Conflicting Tables
Precheck and Report Errors: Memeriksa apakah tabel dengan nama yang sama ada di database tujuan. Jika tabel dengan nama yang sama tidak ada, pemeriksaan awal lolos. Jika tabel dengan nama yang sama ada, pemeriksaan awal gagal dan tugas sinkronisasi data tidak dimulai.
CatatanJika Anda tidak dapat menghapus atau mengganti nama tabel dengan nama yang sama di database tujuan, Anda dapat memetakannya ke nama tabel yang berbeda. Untuk informasi selengkapnya, lihat Petakan nama tabel dan kolom.
Ignore Errors and Proceed: Melewatkan pemeriksaan nama tabel duplikat di database tujuan.
PeringatanMemilih Ignore Errors and Proceed dapat menyebabkan ketidakkonsistenan data dan membahayakan bisnis Anda. Misalnya:
Jika skema tabel sama dan catatan di database tujuan memiliki nilai primary key atau unique key yang sama dengan catatan di database sumber:
Selama sinkronisasi penuh, DTS mempertahankan catatan di kluster tujuan. Catatan yang sesuai dari database sumber tidak disinkronkan.
Selama sinkronisasi inkremental, catatan dari database sumber menimpa catatan di database tujuan.
Jika skema tabel berbeda, sinkronisasi data awal mungkin gagal. Hal ini dapat mengakibatkan hanya data kolom parsial yang disinkronkan atau kegagalan sinkronisasi total. Lakukan dengan hati-hati.
Source Objects
Di kotak Source Objects, klik objek yang akan disinkronkan, lalu klik
untuk memindahkannya ke kotak Selected Objects.Catatan-
Anda dapat memilih objek untuk disinkronkan pada tingkat skema atau tabel. Jika Anda memilih tabel sebagai objek sinkronisasi, objek lain seperti view, trigger, dan stored procedure tidak disinkronkan ke database tujuan.
-
Jika tabel yang akan disinkronkan berisi field bertipe SERIAL dan Synchronization Types dipilih untuk Schema Synchronization, kami menyarankan agar Anda juga memilih Sequence atau seluruh skema.
Selected Objects
Untuk mengganti nama satu objek sinkronisasi di instans tujuan, klik kanan objek tersebut di kotak Selected Objects. Untuk informasi selengkapnya tentang penggantian nama objek, lihat Memetakan satu database, tabel, atau kolom.
Untuk mengubah nama beberapa objek sinkronisasi di instans tujuan secara batch, klik Batch Edit di pojok kanan atas kotak Selected Objects. Untuk informasi selengkapnya, lihat Petakan database, tabel, dan kolom secara batch.
CatatanUntuk memilih operasi SQL pada tingkat database atau tabel, klik kanan objek di kotak Selected Objects dan pilih operasi SQL yang diinginkan dari kotak dialog yang muncul.
Untuk memfilter data menggunakan klausa WHERE, klik kanan tabel di kotak Selected Objects dan tentukan kondisi filter di kotak dialog. Untuk informasi selengkapnya, lihat Atur kondisi filter.
Klik Next: Advanced Settings untuk mengonfigurasi parameter lanjutan.
Parameter
Deskripsi
Dedicated Cluster for Task Scheduling
Secara default, DTS menjadwalkan tugas pada kluster bersama, dan Anda tidak perlu memilih kluster. Untuk kinerja yang lebih stabil, Anda dapat membeli kluster khusus untuk menjalankan tugas sinkronisasi DTS. Untuk informasi selengkapnya, lihat Apa itu kluster khusus DTS?.
Retry Time for Failed Connections
Setelah tugas sinkronisasi dimulai, jika koneksi ke database sumber atau tujuan gagal, DTS melaporkan kesalahan dan segera mulai mencoba menghubungkan kembali. Durasi percobaan ulang default adalah 720 menit. Anda juga dapat menentukan durasi percobaan ulang kustom dari 10 hingga 1.440 menit. Kami menyarankan agar Anda mengatur durasi minimal 30 menit. Jika DTS berhasil terhubung kembali ke database dalam durasi yang ditentukan, tugas sinkronisasi akan dilanjutkan secara otomatis. Jika tidak, tugas akan gagal.
CatatanJika Anda memiliki beberapa instans DTS (misalnya, Instans A dan Instans B) yang berbagi sumber atau tujuan yang sama, dan Anda mengatur waktu percobaan ulang jaringan menjadi 30 menit untuk Instans A dan 60 menit untuk Instans B, durasi yang lebih pendek yaitu 30 menit akan digunakan untuk keduanya.
Karena DTS membebankan biaya untuk waktu proses tugas selama periode percobaan ulang koneksi, kami menyarankan agar Anda menyesuaikan durasi percobaan ulang berdasarkan kebutuhan bisnis Anda atau segera melepas instans DTS setelah instans database sumber dan tujuan dilepas.
Retry Time for Other Issues
Setelah tugas sinkronisasi dimulai, jika terjadi masalah non-konektivitas lainnya pada database sumber atau tujuan (seperti pengecualian eksekusi DDL atau DML), DTS melaporkan kesalahan dan segera mulai melakukan operasi percobaan ulang berkelanjutan. Durasi percobaan ulang default adalah 10 menit. Anda juga dapat menyesuaikan durasi percobaan ulang dalam rentang 1 hingga 1.440 menit. Kami menyarankan agar Anda mengaturnya minimal 10 menit. Jika operasi terkait berhasil dalam durasi percobaan ulang yang ditetapkan, tugas sinkronisasi akan dilanjutkan secara otomatis. Jika tidak, tugas akan gagal.
PentingNilai untuk Retry Time for Other Issues harus lebih kecil daripada nilai untuk Retry Time for Failed Connections.
Enable Throttling for Full Data Synchronization
Selama tahap sinkronisasi penuh, DTS mengonsumsi sumber daya baca dan tulis dari database sumber dan tujuan, yang dapat meningkatkan beban database. Untuk mengurangi beban pada database sumber dan tujuan, Anda dapat mengatur batas laju untuk tugas sinkronisasi penuh 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).
CatatanItem konfigurasi ini hanya tersedia saat Synchronization Types diatur ke Full Data Synchronization.
Anda juga dapat menyesuaikan laju sinkronisasi penuh setelah instans sinkronisasi sedang berjalan.
Enable Throttling for Incremental Data Synchronization
Anda juga dapat mengatur batas laju untuk tugas sinkronisasi inkremental. Untuk mengurangi tekanan pada database tujuan, atur RPS of Incremental Data Synchronization dan Data synchronization speed for incremental synchronization (MB/s).
Environment Tag
Anda dapat memilih tag lingkungan untuk mengidentifikasi instans berdasarkan kebutuhan bisnis Anda. Dalam contoh ini, tidak diperlukan pemilihan.
Configure ETL
Pilih apakah akan mengaktifkan fitur ekstrak, transformasi, muat (ETL). Untuk informasi selengkapnya, lihat Apa itu ETL? Nilai yang valid:
-
Yes: Mengaktifkan fitur ETL. Masukkan pernyataan pemrosesan data di editor kode. Untuk informasi selengkapnya, lihat Konfigurasikan ETL dalam tugas migrasi data atau sinkronisasi data.
-
No: Menonaktifkan fitur ETL.
Monitoring and Alerting
Tentukan apakah akan mengonfigurasi peringatan. Jika sinkronisasi gagal atau latensi melebihi ambang batas yang ditentukan, notifikasi akan dikirim ke kontak peringatan.
No: Tidak ada peringatan yang dikonfigurasi.
Yes: Konfigurasikan peringatan dengan mengatur ambang batas peringatan dan menentukan pemberitahuan peringatan. Untuk informasi selengkapnya, lihat Konfigurasikan pemantauan dan peringatan selama konfigurasi tugas.
Klik Next: Data Validation untuk mengonfigurasi tugas validasi data.
Jika Anda ingin menggunakan fitur validasi data, lihat Konfigurasikan validasi data untuk petunjuk konfigurasi.
Simpan tugas dan jalankan pemeriksaan awal.
Untuk melihat parameter API untuk mengonfigurasi instans ini, arahkan kursor ke tombol Next: Save Task Settings and Precheck dan klik Preview OpenAPI parameters di gelembung.
Jika Anda telah selesai melihat parameter API, klik Next: Save Task Settings and Precheck di bagian bawah halaman.
CatatanSebelum tugas sinkronisasi dimulai, DTS menjalankan pemeriksaan awal. Tugas hanya dapat dimulai setelah semua item pemeriksaan awal lolos.
Jika pemeriksaan awal gagal, klik View Details untuk item yang gagal. Perbaiki masalah sesuai petunjuk, lalu jalankan kembali pemeriksaan awal.
Jika pemeriksaan awal mengembalikan peringatan:
Jika item pemeriksaan gagal dan tidak dapat diabaikan, klik View Details di sebelah item tersebut. Ikuti petunjuk untuk memperbaiki masalah, lalu jalankan kembali pemeriksaan awal.
Untuk item pemeriksaan yang dapat diabaikan, Anda dapat mengklik Confirm Alert Details, Ignore, OK, dan Precheck Again secara berurutan untuk melewatkan peringatan dan menjalankan kembali pemeriksaan awal. Jika Anda memilih untuk mengabaikan item peringatan, hal ini dapat menyebabkan masalah seperti ketidakkonsistenan data dan membahayakan bisnis Anda.
Beli instans.
Saat Success Rate mencapai 100%, klik Next: Purchase Instance.
Di halaman Purchase, pilih metode penagihan dan spesifikasi tautan untuk instans sinkronisasi data. Tabel berikut menjelaskan parameter-parameter ini secara rinci.
Kategori
Parameter
Deskripsi
New Instance Class
Metode Penagihan
Langganan: Anda membayar saat membuat instans. Ini cocok untuk kebutuhan jangka panjang dan lebih hemat biaya daripada bayar sesuai penggunaan. Semakin lama durasi langganan, semakin tinggi diskonnya.
Bayar sesuai penggunaan: Anda dikenai biaya per jam. Ini cocok untuk kebutuhan jangka pendek. Anda dapat melepas instans segera setelah digunakan untuk menghemat biaya.
Konfigurasi Kelompok Sumber Daya
Kelompok sumber daya tempat instans berada. Default-nya adalah kelompok sumber daya default. Untuk informasi selengkapnya, lihat Apa itu Manajemen Sumber Daya?.
Spesifikasi Tautan
DTS menyediakan spesifikasi sinkronisasi dengan tingkat kinerja berbeda. Spesifikasi tautan sinkronisasi memengaruhi laju sinkronisasi. Anda dapat memilih spesifikasi berdasarkan skenario bisnis Anda. Untuk informasi selengkapnya, lihat Spesifikasi tautan sinkronisasi data.
Durasi Langganan
Dalam mode langganan, pilih durasi dan jumlah untuk instans langganan. Anda dapat memilih langganan bulanan dari 1 hingga 9 bulan, atau langganan tahunan selama 1, 2, 3, atau 5 tahun.
CatatanOpsi ini hanya tersedia saat metode penagihan adalah Subscription.
Setelah menyelesaikan konfigurasi, baca dan pilih Data Transmission Service (Pay-as-you-go) Service Terms.
Klik Buy and Start. Di kotak dialog OK, klik OK.
Anda dapat melihat perkembangan tugas di halaman Data Synchronization.
