All Products
Search
Document Center

Data Transmission Service:Implementasi pembaruan cache dengan pelacakan perubahan

Last Updated:May 16, 2026

Fitur pelacakan perubahan dari Data Transmission Service (DTS) dapat digunakan bersama MongoDB atau Redis untuk mengimplementasikan kebijakan pembaruan cache yang andal dan berlatensi rendah. Topik ini menjelaskan kebijakan tersebut melalui contoh di mana ApsaraDB RDS for MySQL berperan sebagai sumber dan Tair (kompatibel dengan Redis) sebagai tujuan.

Prasyarat

Latar Belakang

Lapisan cache sering ditambahkan ke arsitektur aplikasi untuk meningkatkan kecepatan akses dan menangani konkurensi baca yang tinggi. Permintaan baca diarahkan ke cache, yang memanfaatkan pembacaan memori guna meningkatkan kinerja. Sementara itu, pembaruan data disimpan ke database tahan lama seperti ApsaraDB RDS for MySQL untuk memastikan integritas data. Hal ini memerlukan kebijakan pembaruan cache agar cache tetap tersinkronisasi dengan database.

Prosedur

Bagian ini menjelaskan cara menjalankan kode contoh SDK di IntelliJ IDEA untuk mengonsumsi data yang dilacak.

  1. Unduh paket demo SDK pelacakan perubahan dan ekstrak paket tersebut.

  2. Gunakan IntelliJ IDEA untuk membuka paket demo SDK yang telah diekstrak sebagai proyek Maven.

  3. Di direktori /subscribe-demo/src/main/java/com/alibaba/dts/demo/, klik ganda file DTSMySQL2RedisDemo.java.

  4. Ubah parameter dalam fungsi main.

    Anda perlu mengubah nilai yang disorot berwarna hijau dalam kode, seperti your broker url pada String brokerUrl = "your broker url";.

    • Parameter pelacakan perubahan

      Parameter

      Deskripsi

      Sumber

      brokerUrl

      Titik akhir dan nomor port instans Data Subscription.

      Catatan
      • Jika instans ECS yang menjalankan client SDK dan instans Data Subscription berada dalam jaringan klasik atau Virtual Private Cloud (VPC) yang sama, kami menyarankan Anda menggunakan titik akhir internal untuk langganan guna meminimalkan latensi jaringan.

      • Kami tidak menyarankan penggunaan titik akhir publik karena potensi ketidakstabilan jaringan.

      Di Konsol DTS, klik ID instans Data Subscription yang dituju. Pada halaman Basic Information, Anda dapat memperoleh titik akhir dan nomor port di bagian Network.

      topic

      Topik subscription untuk instans tersebut.

      Di Konsol DTS, klik ID instans Data Subscription yang dituju. Pada halaman Basic Information, Anda dapat memperoleh Topic di bagian Basic Information.

      sid

      ID kelompok konsumen.

      Di Konsol DTS, klik ID instans Data Subscription yang dituju, lalu klik Consume Data. Anda dapat memperoleh Consumer Group ID dan Account kelompok konsumen tersebut.

      Catatan

      Kata sandi untuk username kelompok konsumen ditentukan saat Anda membuat kelompok konsumen tersebut.

      userName

      Username untuk kelompok konsumen.

      Peringatan

      Jika Anda tidak menggunakan client yang disediakan dalam topik ini, Anda harus menyetel username dalam format <Username>-<Consumer Group ID>. Contoh: dtstest-dtsae******bpv. Jika tidak, koneksi akan gagal.

      password

      Kata sandi untuk username tersebut.

      initCheckpoint

      Titik pemeriksaan konsumsi. Ini adalah stempel waktu UNIX tempat client SDK mulai mengonsumsi data. Nilainya harus berupa stempel waktu UNIX. Contoh: 1620962769.

      Catatan

      Anda dapat menggunakan informasi titik pemeriksaan konsumsi dalam skenario berikut:

      • Untuk melanjutkan konsumsi dan mencegah kehilangan data setelah gangguan aplikasi, masukkan titik pemeriksaan konsumsi terakhir yang diketahui.

      • Saat memulai client, Anda dapat memasukkan titik pemeriksaan konsumsi tertentu untuk mengonsumsi data dari posisi yang diinginkan.

      Titik pemeriksaan konsumsi harus berada dalam rentang data instans Data Subscription (seperti yang ditunjukkan pada gambar) dan harus dikonversi ke stempel waktu UNIX.

      Catatan

      Anda dapat menggunakan mesin pencari untuk menemukan konverter stempel waktu UNIX.

      ConsumerContext.ConsumerSubscribeMode subscribeMode

      Mode penggunaan client SDK. Nilai yang valid:

      • ConsumerContext.ConsumerSubscribeMode.ASSIGN: mode ASSIGN. Hanya satu client SDK dalam satu kelompok konsumen yang dapat mengonsumsi data Data Subscription.

      • ConsumerContext.ConsumerSubscribeMode.SUBSCRIBE: mode SUBSCRIBE. Anda dapat menjalankan beberapa client SDK dalam kelompok konsumen yang sama untuk disaster recovery.

      N/A

    • Parameter Tair tujuan

      Parameter

      Deskripsi

      Cara memperoleh

      redisUrl

      Titik akhir instans Tair.

      Buka halaman Connection Information instans Tair Anda. Di bagian Connection Information, temukan endpoint untuk Public Access.

      redisPort

      Port instans Tair.

      Buka halaman Connection Information instans Tair Anda. Di bagian Connection Information, temukan port untuk Public Access.

      redisPassword

      Username dan kata sandi untuk instans Tair.

      Penting

      Nilainya harus berupa string dalam format <user>:<password>. Misalnya, jika username Anda adalah admin dan kata sandi Anda adalah Rp829dlwa, setel parameter ini menjadi admin:Rp829dlwa.

      Anda menentukan nilai ini saat membuat instans Tair.

      Catatan

      Jika Anda lupa kata sandi, Anda dapat mengatur ulang. Untuk informasi selengkapnya, lihat Ubah atau atur ulang kata sandi.

  5. Pada bilah menu atas IntelliJ IDEA, klik Run > Run.

Hasil

  1. Login ke database sumber dan masukkan beberapa catatan ke tabel sumber yang dilacak.

    Program mengonsumsi perubahan data inkremental dan menulis data yang sesuai ke database tujuan.

  2. Login ke database tujuan dan kueri data tersebut.

    Kueri tersebut mengonfirmasi bahwa data berhasil ditulis.