Data Transmission Service (DTS) menangkap perubahan data dari database sumber secara real time dan mengirimkannya ke konsumen downstream. Topik ini menjelaskan cara membuat tugas pelacakan perubahan untuk instans ApsaraDB RDS for MySQL pada klaster khusus DTS.
Kasus penggunaan umum mencakup pembaruan cache, penguraian keterkaitan bisnis asinkron, sinkronisasi antar sumber data heterogen, serta pipeline ekstrak, transformasi, dan muat (ETL).
Prasyarat
Sebelum memulai, pastikan Anda telah memiliki:
Klaster khusus DTS. Lihat Buat klaster khusus DTS.
Instans sumber ApsaraDB RDS for MySQL. Lihat Buat instans ApsaraDB RDS for MySQL.
Akun database pada instans sumber dengan izin read-only, atau akun kustom dengan izin REPLICATION CLIENT, REPLICATION SLAVE, SHOW VIEW, dan SELECT.
Pengaturan binary log yang memenuhi persyaratan DTS (periksa sebelum memulai):
Setting
Nilai yang diperlukan
binlog_row_imagefull— lihat Lihat parameter instans RDSRetensi binary log
Lebih dari 24 jam
Batasan
Persyaratan database sumber
Persyaratan | Detail |
Primary key atau unique constraint | Tabel sumber harus memiliki constraint |
Batas tabel per task | Satu tugas pelacakan perubahan dapat melacak hingga 500 tabel. Jika Anda perlu melacak lebih banyak, gunakan beberapa tugas atau lacak seluruh database sebagai gantinya. |
| Harus diatur ke |
Retensi binary log | Log harus disimpan lebih dari 24 jam. Retensi yang lebih pendek dapat menyebabkan DTS gagal membaca log, berakibat inkonsistensi atau kehilangan data, serta dapat membatalkan jaminan Service Level Agreement (SLA) DTS. |
Jenis instans | Instans read-only dan instans temporary tidak dapat digunakan sebagai sumber. |
Batasan lainnya
Batasan | Detail |
Presisi FLOAT/DOUBLE | DTS menggunakan |
gh-ost dan pt-online-schema-change | DTS tidak melacak operasi DDL yang dilakukan oleh gh-ost atau pt-online-schema-change. Perubahan skema yang dibuat oleh alat-alat ini dapat menyebabkan konflik saat client pelacakan perubahan menulis ke tujuan. |
Buat tugas pelacakan perubahan
Wizard tugas terdiri dari tahapan berikut:
Tahap | Yang Anda konfigurasikan |
1. Database sumber dan jaringan konsumen | Detail koneksi, jenis jaringan |
2. Objek dan jenis perubahan | Tabel atau database yang akan dilacak, cakupan DML/DDL |
3. Pengaturan lanjutan | Peringatan, waktu tunggu ulang |
4. Pemeriksaan Awal | Validasi otomatis |
5. Kelas instans | Alokasi unit DTS |
Langkah 1: Buka halaman konfigurasi tugas
Buka halaman Klaster Khusus.
Pada bilah navigasi atas, pilih wilayah tempat klaster khusus DTS Anda berada.
Temukan klaster target. Pada kolom Actions, pilih Configure Task > Configure Change Tracking Task.
Langkah 2: Konfigurasikan database sumber
Setelah memilih instans sumber, baca batasan yang ditampilkan di bagian atas halaman sebelum melanjutkan.
Parameter | Deskripsi |
Task Name | DTS menghasilkan nama secara otomatis. Berikan nama deskriptif untuk mengidentifikasi tugas. Nama tidak perlu unik. |
Select an existing database connection (opsional) | Pilih koneksi yang tersimpan agar DTS menerapkan pengaturannya secara otomatis. Biarkan kosong untuk mengonfigurasi database secara manual. |
Database Type | Pilih MySQL. |
Access Method | Pilih Alibaba Cloud Instance. |
Instance Region | Diisi otomatis berdasarkan wilayah klaster khusus. Tidak dapat diubah. |
Replicate Data Across Alibaba Cloud Accounts | Pilih No. |
RDS Instance ID | Pilih instans sumber ApsaraDB RDS for MySQL. |
Database Account | Masukkan akun database. |
Database Password | Masukkan password akun. |
Encryption | Pilih Non-encrypted atau SSL-encrypted. Untuk enkripsi SSL, aktifkan SSL pada instans sumber sebelum mengonfigurasi tugas ini. |
Langkah 3: Konfigurasikan jenis jaringan konsumen
Parameter | Deskripsi |
Network Type | Hanya Virtual Private Cloud (VPC) yang didukung. Pilih VPC dan vSwitch. |
Jenis jaringan tidak dapat diubah setelah tugas dibuat. Semua data perubahan harus dikonsumsi melalui jaringan yang ditentukan.
Klik Test Connectivity and Proceed.
DTS menambahkan blok CIDR-nya ke pengaturan keamanan database Anda untuk membangun konektivitas:
Instans database Alibaba Cloud (seperti ApsaraDB RDS for MySQL): DTS secara otomatis menambahkan blok CIDR-nya ke daftar putih instans.
Database self-managed di ECS: DTS secara otomatis menambahkan blok CIDR-nya ke security group ECS. Anda juga harus menambahkannya ke pengaturan keamanan database itu sendiri.
Database self-managed di pusat data atau cloud pihak ketiga: Tambahkan blok CIDR DTS ke pengaturan keamanan database secara manual.
Perubahan daftar putih ini berpotensi menimbulkan risiko keamanan. Untuk mengurangi risiko: gunakan kredensial yang kuat, batasi port yang terbuka, autentikasi panggilan API, dan tinjau aturan daftar putih serta security group ECS secara berkala. Pertimbangkan untuk menghubungkan database ke DTS melalui Express Connect, VPN Gateway, atau Smart Access Gateway. Setelah tugas dirilis, hapus blok CIDR DTS dari daftar putih dan aturan security group.
Langkah 4: Pilih objek dan jenis perubahan
Parameter | Deskripsi |
Data Change Types | Data Update: melacak operasi INSERT, DELETE, dan UPDATE pada objek yang dipilih. Schema Updates: melacak operasi CREATE, DROP, dan ALTER pada semua skema di instans sumber. Jika Anda mengaktifkan Schema Updates, gunakan client pelacakan perubahan untuk memfilter hanya skema yang Anda butuhkan. |
Source Objects | Pilih tabel atau database, lalu klik ikon panah ke kanan untuk memindahkannya ke Selected Objects. Memilih database akan melacak semua objek saat ini dan mendatang di dalamnya. Memilih tabel individual hanya melacak tabel tersebut — tambahkan tabel baru secara manual sesuai kebutuhan. Lihat Modify the objects for change tracking. |
Klik Next: Advanced Settings.
Langkah 5: Konfigurasikan pengaturan lanjutan
Parameter | Deskripsi |
Select the dedicated cluster used to schedule the task | Klaster khusus DTS Anda dipilih secara default. |
Set Alerts | Pilih Yes untuk menerima notifikasi ketika tugas gagal atau latensi melebihi ambang batas. Tentukan ambang batas peringatan dan kontak peringatan. Lihat Configure monitoring and alerting when you create a DTS task. |
Retry Time for Failed Connections | Durasi DTS mencoba ulang setelah kegagalan koneksi. Rentang: 10–1.440 menit. Default: 720. Atur lebih dari 30 menit. Jika beberapa tugas berbagi database sumber yang sama, nilai yang dikonfigurasi terakhir akan berlaku. Biaya DTS tetap berlaku selama percobaan ulang. |
Wait time before a retry when other issues occur | Durasi DTS menunggu sebelum mencoba ulang setelah kegagalan DDL atau DML. Rentang: 1–1.440 menit. Default: 10. Atur lebih dari 10 menit. Nilai ini harus lebih kecil dari Retry Time for Failed Connections. |
Klik Next: Save Task Settings and Precheck.
Langkah 6: Lulus pemeriksaan awal
DTS menjalankan pemeriksaan awal sebelum tugas dapat dimulai. Tunggu hingga pemeriksaan awal selesai.
Jika semua item lolos, tingkat keberhasilan mencapai 100%.
Jika ada item yang gagal, klik ikon info di sebelahnya untuk detailnya. Perbaiki masalah tersebut dan jalankan ulang pemeriksaan awal, atau abaikan item tersebut jika tidak menghambat dan jalankan ulang.
Klik Next: Select DTS Instance Type.
Langkah 7: Atur kelas instans dan mulai tugas
Pada bagian New Instance Class, konfigurasikan kelas instans. Minimum adalah 1 unit DTS (DU); maksimum adalah jumlah DU tersedia yang tersisa pada klaster khusus.
Baca dan terima Data Transmission Service (Pay-as-you-go) Service Terms.
Klik Start Task.
Untuk memantau kemajuan, buka halaman detail klaster dan klik Cluster Task List di panel navigasi kiri.
Langkah berikutnya
Setelah tugas pelacakan perubahan berjalan, siapkan konsumen downstream untuk menerima data perubahan:
Buat kelompok konsumen. Lihat Create consumer groups.
Konsumsi data yang dilacak menggunakan salah satu metode berikut: