全部产品
Search
文档中心

Data Transmission Service:Tentukan kebijakan untuk menyinkronkan data ke partisi Kafka

更新时间:Jul 02, 2025

Saat mengonfigurasi tugas untuk menyinkronkan data ke kluster Kafka, Anda dapat menentukan kebijakan untuk menyinkronkan data ke partisi Kafka. Kebijakan ini membantu meningkatkan kinerja sinkronisasi, misalnya dengan menyinkronkan data ke partisi berbeda berdasarkan nilai hash.

Algoritma hash

Data Transmission Service (DTS) menggunakan metode hashCode() dalam Java untuk menghitung nilai hash.

Metode konfigurasi

Pada langkah Select Objects to Synchronize dalam wizard pembuatan tugas, Anda dapat menentukan kebijakan untuk menyinkronkan data ke partisi Kafka. Untuk informasi lebih lanjut, lihat Sinkronkan Data dari Instance ApsaraDB RDS for MySQL ke Kluster Kafka yang Dikelola Sendiri dan Ikhtisar Skenario Sinkronisasi Data.

Peringatan Setelah tugas sinkronisasi data dimulai, jangan ubah jumlah partisi di topik tujuan karena hal tersebut dapat menyebabkan kegagalan sinkronisasi data.

Kebijakan sinkronisasi

KebijakanDeskripsiKeuntungan dan Kerugian
Synchronize All Data to Partition 0DTS menyinkronkan semua data dan pernyataan DDL ke Partisi 0 dari topik tujuan.
  • Keuntungan: Urutan pembuatan dan perubahan semua objek sama dengan yang ada di database sumber.
  • Kerugian: Kebijakan ini memberikan kinerja sinkronisasi biasa.
Synchronize Data to Separate Partitions Based on Hash Values of Database and Table NamesDTS menggunakan nama database dan tabel sebagai kunci partisi untuk menghitung nilai hash. Kemudian, DTS menyinkronkan data dan pernyataan DDL setiap tabel ke partisi yang sesuai dari topik tujuan.
Catatan
  • Data dan pernyataan DDL dari tabel yang sama disinkronkan ke partisi yang sama.
  • Jika pernyataan DDL tidak terkait dengan tabel, seperti CREATE DATABASE, pernyataan tersebut disinkronkan ke Partisi 0.
  • Keuntungan: Urutan pembuatan dan perubahan tabel tujuan sama dengan tabel sumber. Kebijakan ini memberikan kinerja sinkronisasi yang baik.
  • Kerugian: Tabel disinkronkan ke partisi yang berbeda. Setelah sinkronisasi data, urutan perubahan data pada tabel yang berbeda mungkin menjadi tidak konsisten.
Synchronize Data to Separate Partitions Based on Hash Values of Primary KeysDTS menggunakan kolom tabel sebagai kunci partisi untuk menghitung nilai hash. Secara default, kolom tabel adalah kunci primer. Jika sebuah tabel tidak memiliki kunci primer, kunci unik digunakan sebagai kunci partisi. DTS menyinkronkan setiap baris ke partisi yang sesuai dari topik tujuan. Anda dapat menentukan satu atau lebih kolom sebagai kunci partisi untuk menghitung nilai hash.
Catatan
  • Jika menggunakan kebijakan ini, pernyataan DDL disinkronkan ke Partisi 0 dari topik tujuan secara default.
  • Jika sebuah tabel tidak memiliki kunci primer atau kunci unik, DTS menyinkronkan data dan pernyataan DDL tabel tersebut ke Partisi 0 dari topik tujuan.
  • Keuntungan: Kebijakan ini memberikan kinerja sinkronisasi terbaik.
  • Kerugian: Setelah sinkronisasi data, urutan perubahan data pada setiap catatan tetap sama. Namun, urutan perubahan data pada tabel yang berbeda atau tabel tanpa kunci primer mungkin menjadi tidak konsisten.