Instans primer analitik berbasis DuckDB mendukung fitur-fitur seperti penyimpanan kolom (columnar storage), kompilasi just-in-time (JIT), eksekusi vektorisasi, manajemen memori yang efisien, dan pemrosesan paralel. Dibandingkan dengan engine InnoDB, performa kueri kompleks dapat meningkat hingga seratus kali lipat. Anda dapat menggunakan DTS untuk menyinkronkan skema database dan data dari instans RDS for MySQL ke instans primer analitik berbasis DuckDB guna membangun sistem intelijen bisnis (BI) perusahaan, kueri interaktif, dan pelaporan real-time secara cepat.
Prasyarat
Anda telah membuat instans tujuan primer analitik berbasis DuckDB. Untuk informasi selengkapnya, lihat Buat instans primer analitik berbasis DuckDB.
Pastikan ruang penyimpanan pada instans tujuan primer analitik berbasis DuckDB melebihi ruang penyimpanan yang digunakan oleh database sumber.
Peringatan
Tabel yang akan disinkronkan dari instans RDS for MySQL harus memiliki primary key.
Ketika DTS melakukan sinkronisasi data penuh, sumber daya baca dan tulis pada database sumber dan tujuan akan dikonsumsi, sehingga beban kerja keduanya meningkat. Disarankan untuk melakukan sinkronisasi data pada jam sepi, misalnya ketika tingkat penggunaan CPU kedua database berada di bawah 30%.
Selama proses sinkronisasi data, jangan lakukan perubahan DDL Online pada objek sinkronisasi di database sumber menggunakan alat seperti gh-ost atau pt-online-schema-change. Jika dilakukan, tugas sinkronisasi akan gagal.
Karena batasan penggunaan, klaster instans primer analitik berbasis DuckDB akan dikunci jika penggunaan disk space pada suatu node melebihi 80%. Perkirakan ruang yang dibutuhkan untuk objek sinkronisasi terlebih dahulu dan pastikan klaster tujuan memiliki ruang penyimpanan yang cukup.
Sinkronisasi data tidak mendukung prefix indexes. Jika database sumber menggunakannya, tugas sinkronisasi mungkin gagal.
Jika tugas DTS sedang berjalan saat instans tujuan primer analitik berbasis DuckDB sedang dibackup, tugas tersebut akan gagal.
Instans primer analitik berbasis DuckDB tidak dapat menjadi database sumber untuk sinkronisasi data.
Pernyataan
DMLyang mengandung klausaLIMIT, fungsi non-deterministik sepertiUUID(), atau transaksiXAdianggap sebagai operasiUnsafeuntuk replikasi. Hal ini dapat menyebabkan ketidakkonsistenan data antara instans sumber dan tujuan. Hindari penggunaan pernyataan semacam itu saat menyinkronkan data ke instans primer analitik berbasis DuckDB.
Penagihan
Jenis sinkronisasi | Harga |
Sinkronisasi skema dan sinkronisasi data penuh | Gratis. |
Sinkronisasi data inkremental | Dikenai biaya. Untuk informasi selengkapnya, lihat Ikhtisar penagihan. |
Tipe instans sumber yang didukung
Tipe instans database MySQL sumber berikut didukung untuk sinkronisasi data:
RDS for MySQL
Database yang dikelola sendiri pada instance ECS
Database yang dikelola sendiri di lingkungan on-premises
Topik ini menggunakan instans RDS for MySQL sebagai contoh konfigurasi. Prosedurnya serupa untuk database MySQL yang dikelola sendiri.
Jika database sumber Anda adalah database MySQL yang dikelola sendiri, Anda harus melakukan persiapan tambahan. Untuk informasi selengkapnya, lihat Ikhtisar persiapan.
Operasi SQL yang didukung
Operasi DDL: CREATE TABLE, DROP TABLE, RENAME TABLE, TRUNCATE TABLE, ADD COLUMN, DROP COLUMN, dan MODIFY COLUMN
Operasi DML: INSERT, UPDATE, dan DELETE
Anda tidak dapat menentukan klausa
ORDER BYdanLIMITdalam pernyataanUPDATEatauDELETE.Jika Anda mengubah tipe field tabel sumber selama sinkronisasi data, pekerjaan sinkronisasi akan melaporkan error dan terganggu. Anda dapat menyelesaikan masalah tersebut secara manual. Untuk informasi selengkapnya, lihat Perbaiki kegagalan sinkronisasi yang disebabkan oleh perubahan tipe field.
Izin akun database
Database | Izin yang diperlukan |
RDS for MySQL | Disarankan menggunakan akun istimewa. Akun standar harus memiliki izin REPLICATION CLIENT, REPLICATION SLAVE, SHOW VIEW, dan SELECT pada semua objek sinkronisasi. |
Instans primer analitik berbasis DuckDB | Disarankan menggunakan akun istimewa. Akun standar harus memiliki izin READ dan WRITE. |
Prosedur
Masuk ke Konsol DTS. Di panel navigasi kiri, pilih Data Synchronization. Di bilah navigasi atas, pilih wilayah tempat instans Anda berada.
Pada halaman Data Synchronization Tasks, klik Create Task.
Pada halaman , konfigurasikan database sumber dan tujuan.
Instans sumber
Parameter
Deskripsi
Database Type
Access Mode
Cloud Instance
Instance Region
Wilayah instans sumber. Ini dipilih saat Anda membeli tugas sinkronisasi data dan tidak dapat diubah nanti.
Cross-account Synchronization
No
Instance ID
Pilih ID instans RDS sumber.
Database Account
Akun database instans RDS sumber. Untuk informasi selengkapnya mengenai izin yang diperlukan, lihat Izin akun database.
Database Password
Password akun database.
Connection Method
Pilih Non-encrypted Connection atau SSL-encrypted Connection sesuai kebutuhan bisnis Anda. Jika Anda memilih SSL-encrypted Connection, Anda harus mengaktifkan enkripsi SSL untuk instans RDS terlebih dahulu. Untuk informasi selengkapnya, lihat Use a cloud-native certificate to enable SSL encryption.
PentingSaat ini, Encryption hanya dapat diatur di wilayah Tiongkok daratan dan China (Hong Kong).
Instans Tujuan
Parameter
Deskripsi
Database Type
Access Mode
Cloud Instance
Instance Region
Wilayah instans tujuan yang Anda pilih saat membeli instans sinkronisasi data. Parameter ini tidak dapat diubah.
Cross-account Synchronization
No
CatatanDTS mendukung sinkronisasi data cross-region. Topik ini menggunakan contoh sinkronisasi data antar instans dalam wilayah dan VPC yang sama. Untuk informasi selengkapnya mengenai skenario sinkronisasi data, lihat Ikhtisar skenario sinkronisasi data.
RDS Instance ID
ID instans DuckDB tujuan.
Database Account
Akun database instans primer analitik berbasis DuckDB. Untuk informasi selengkapnya mengenai izin yang diperlukan, lihat Izin akun database.
Database Password
Password akun database.
Connection Method
Pilih Non-encrypted Connection atau SSL-encrypted Connection sesuai kebutuhan bisnis Anda. Jika Anda memilih SSL-encrypted Connection, Anda harus mengaktifkan enkripsi SSL untuk instans RDS terlebih dahulu. Untuk informasi selengkapnya, lihat Use a cloud-native certificate to enable SSL encryption.
PentingSaat ini, Encryption hanya dapat diatur di wilayah Tiongkok daratan dan China (Hong Kong).
Klik Test Connection and Proceed.
Pada kotak dialog DTS Server Access Authorization, klik Test Connection.
Konfigurasikan objek sinkronisasi dan pengaturan lanjutan.
Pada halaman Configure Synchronization Objects, konfigurasikan objek yang akan disinkronkan.
Parameter
Deskripsi
Synchronization Types
Jika Anda hanya ingin melakukan sinkronisasi data penuh, pilih kedua opsi Schema Synchronization dan Full Data Synchronization.
Jika Anda ingin melakukan sinkronisasi data tanpa gangguan layanan, pilih Schema Synchronization, Full Data Synchronization, dan Incremental Data Synchronization.
CatatanJika Anda tidak memilih Schema Synchronization, pastikan database tujuan sudah berisi database dan tabel tempat data akan disinkronkan. Kemudian, gunakan fitur pemetaan tabel dan kolom di kotak Selected Objects sesuai kebutuhan bisnis Anda.
Untuk memastikan konsistensi data, jangan menulis data baru ke instans sumber selama sinkronisasi jika Anda tidak memilih Incremental Data Synchronization.
Trigger Migration Method
Pilih metode migrasi trigger sesuai kebutuhan bisnis Anda. Jika objek yang akan dimigrasikan tidak melibatkan trigger, Anda tidak perlu mengonfigurasi parameter ini. Untuk informasi selengkapnya, lihat Configure a method to synchronize or migrate triggers.
CatatanAnda hanya dapat mengonfigurasi parameter ini jika memilih Schema Synchronization untuk Synchronization Types.
Enable Migration Evaluation
Fitur ini mengevaluasi apakah skema database sumber dan tujuan—seperti panjang indeks, prosedur tersimpan, dan tabel dependen—memenuhi persyaratan. Anda dapat memilih Yes atau No sesuai kebutuhan bisnis Anda.
CatatanAnda hanya dapat mengonfigurasi parameter ini jika memilih Schema Synchronization untuk Synchronization Types.
Jika Anda memilih Yes, pemeriksaan awal (precheck) mungkin memerlukan waktu lebih lama. Anda dapat melihat evaluation results selama precheck. Hasil evaluasi tidak memengaruhi hasil precheck.
Synchronization Topology
Pilih One-way Synchronization.
Processing Mode for Existing Tables
Precheck and Report Error: Memeriksa apakah tabel dengan nama yang sama sudah ada di database tujuan. Jika tidak ada tabel dengan nama yang sama, item pemeriksaan lolos. Jika ada tabel dengan nama yang sama, error dilaporkan selama precheck dan tugas sinkronisasi data tidak 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 and Continue: Melewati pemeriksaan untuk tabel dengan nama yang sama di database tujuan.
PeringatanJika Anda memilih Ignore and Continue, ketidakkonsistenan data dapat terjadi, yang berisiko bagi bisnis Anda. Misalnya:
Skema tabel konsisten, tetapi ada catatan di database tujuan yang memiliki nilai primary key yang sama dengan catatan di database sumber.
Selama sinkronisasi data penuh, DTS mempertahankan catatan di klaster tujuan. Catatan dari database sumber tidak disinkronkan ke database tujuan.
Selama sinkronisasi data inkremental, DTS tidak mempertahankan catatan di klaster tujuan. Catatan dari database sumber menimpa catatan di database tujuan.
Skema tabel tidak konsisten. Dalam kasus ini, hanya data dari beberapa kolom yang mungkin disinkronkan, atau sinkronisasi bisa gagal. Lakukan dengan hati-hati.
Migrate Event
Pilih apakah akan memigrasikan event dari database sumber. Jika Anda memilih Yes, Anda juga harus memenuhi persyaratan terkait dan melakukan operasi selanjutnya. Untuk informasi selengkapnya, lihat Synchronize or migrate events.
Case Sensitivity of Object Names
Anda dapat mengonfigurasi kebijakan sensitivitas huruf besar/kecil untuk nama database, tabel, dan kolom yang disinkronkan di instans tujuan. Secara default, DTS Default Policy dipilih. Anda juga dapat memilih kebijakan yang konsisten dengan database sumber atau tujuan. Untuk informasi selengkapnya, lihat Case-sensitivity policy for names of objects in the destination database.
Source Objects
Di kotak Source Objects, pilih objek yang akan disinkronkan dan klik
untuk memindahkannya ke kotak Selected Objects.CatatanAnda dapat memilih objek pada level database, tabel, dan kolom. Jika Anda hanya memilih tabel atau kolom, jenis objek lain seperti view, trigger, dan prosedur tersimpan tidak akan disinkronkan ke database tujuan.
Selected Objects
Untuk mengganti nama objek sinkronisasi di instans tujuan, klik kanan objek di kotak Selected Objects. Untuk informasi selengkapnya, lihat Map table and column names.
Untuk mengganti nama beberapa objek sinkronisasi sekaligus, klik Batch Edit di pojok kanan atas kotak Selected Objects. Untuk informasi selengkapnya, lihat Map table and column names.
CatatanUntuk memilih operasi SQL yang ingin disinkronkan pada level database atau tabel, klik kanan objek sinkronisasi di kotak Selected Objects dan pilih operasi SQL di kotak dialog yang muncul.
Untuk menentukan klausa WHERE guna memfilter data, klik kanan tabel di kotak Selected Objects dan tentukan kondisi filter di kotak dialog yang muncul. Untuk informasi selengkapnya, lihat Filter data by using a WHERE clause.
Klik Next: Advanced Settings untuk mengonfigurasi parameter lanjutan.
Dalam contoh ini, pengaturan default digunakan. Anda juga dapat mengonfigurasi parameter sesuai kebutuhan bisnis Anda.
Klik Next: Configure Data Verification.
Jika Anda ingin menggunakan fitur verifikasi data, pilih metode verifikasi data sesuai kebutuhan bisnis Anda. Anda dapat mempertahankan pengaturan default untuk parameter lain atau mengonfigurasinya sesuai kebutuhan. Untuk informasi selengkapnya, lihat Configure a data verification task.
CatatanJika Anda memilih verifikasi skema, proses verifikasi mungkin melaporkan error ketidakkonsistenan data meskipun skema telah disinkronkan. Hal ini disebabkan oleh masalah kompatibilitas historis. Peringatan ini bukan peringatan substantif dan tidak memengaruhi hasil sinkronisasi aktual. Untuk mencegah false positive, disarankan agar Anda tidak mengaktifkan verifikasi skema selama verifikasi data.
Klik Next: Save Task and Precheck.
Setelah Precheck Pass Rate mencapai 100%, klik Next: Purchase.
CatatanSebelum tugas sinkronisasi dimulai, precheck dilakukan. Tugas hanya dapat dimulai setelah lolos precheck.
Jika precheck gagal, klik ikon
di samping item pemeriksaan yang gagal untuk melihat detailnya.Perbaiki masalah berdasarkan penyebabnya dan jalankan precheck lagi.
Jika Anda tidak perlu memperbaiki item yang memicu peringatan, Anda dapat mengklik Acknowledge lalu Ignore and Rerun Precheck untuk melewati item tersebut dan menjalankan precheck lagi.
Pada halaman Link Specification, pilih Link Specification dan Link Specification untuk instans sinkronisasi data.
Kategori
Parameter
Deskripsi
Basic Information
Billing Method
Subscription: Anda harus membayar instans sebelum menggunakannya. Metode penagihan ini cocok untuk penggunaan jangka panjang dan lebih hemat biaya dibandingkan metode penagihan pay-as-you-go. Semakin lama durasi langganan, semakin tinggi diskonnya.
Pay-as-you-go: Anda dikenai biaya per jam. Metode penagihan ini cocok untuk penggunaan jangka pendek. Anda dapat merilis instans kapan saja untuk mengurangi biaya.
Resource Group
Kelompok sumber daya tempat instans berada. Nilai default adalah Default Resource Group. Untuk informasi selengkapnya, lihat What is Resource Management?.
Link Specification
DTS menyediakan spesifikasi link yang menawarkan tingkat kinerja berbeda. Spesifikasi link memengaruhi kecepatan sinkronisasi. Anda dapat memilih spesifikasi sesuai skenario bisnis Anda. Untuk informasi selengkapnya, lihat Specifications of data synchronization links.
Subscription Duration
Jika Anda menggunakan metode penagihan subscription, pilih durasi langganan dan jumlah instans yang ingin dibeli. Durasi langganan dapat berupa 1 hingga 9 bulan atau 1, 2, 3, atau 5 tahun.
CatatanParameter ini hanya tersedia jika Subscription diatur ke Subscription.
Baca dan setujui Data Transmission Service (Pay-As-You-Go) Terms of Service, klik Purchase and Start, lalu klik OK pada kotak dialog Confirm.
Setelah pembelian selesai, Anda akan diarahkan ke halaman Data Synchronization Tasks. Klik ID tugas baru untuk membuka halaman detailnya. Lalu, di panel navigasi kiri, klik Task Management untuk melihat progres sinkronisasi.
Perbaiki kegagalan sinkronisasi akibat perubahan tipe field
Jika tipe field pada tabel sumber diubah selama sinkronisasi data, tugas akan gagal. Ikuti langkah-langkah berikut untuk menyelesaikan masalah tersebut secara manual.
Di instans tujuan, buat tabel baru B (misalnya,
customer_new) berdasarkan tabel A yang gagal (misalnya,customer), dan sesuaikan tipe field tabel B sesuai kebutuhan.Jalankan perintah
INSERT INTO SELECTuntuk menyalin data dari tabel A ke tabel B. Pastikan data di kedua tabel konsisten.Ganti nama atau hapus tabel asli yang gagal, lalu ganti nama tabel baru menjadi nama tabel asli (misalnya,
customer).Di Konsol DTS, mulai ulang tugas sinkronisasi data.