全部产品
Search
文档中心

Data Transmission Service:Sinkronkan data dari instance ApsaraDB RDS for MySQL ke kluster Kafka yang dikelola sendiri

更新时间:Jul 06, 2025

Kafka adalah layanan antrian pesan terdistribusi dengan throughput tinggi dan skalabilitas tinggi. Layanan ini banyak digunakan dalam analitik data besar, seperti pengumpulan log, agregasi data pemantauan, pemrosesan aliran, serta analisis online dan offline. Kafka merupakan komponen penting dalam ekosistem data besar. Topik ini menjelaskan cara menyinkronkan data dari ApsaraDB RDS for MySQL ke kluster Kafka yang dikelola sendiri menggunakan Data Transmission Service (DTS). Fitur sinkronisasi data memungkinkan Anda memperluas kemampuan pemrosesan pesan.

Prasyarat

  • Kluster Kafka telah dibuat dan versi Kafka berada di rentang 0.10.1.0 hingga 2.7.0.

  • Sebuah instance ApsaraDB RDS for MySQL telah dibuat. Untuk informasi lebih lanjut, lihat Buat Instance ApsaraDB RDS for MySQL.

Catatan Penggunaan

  • DTS menggunakan sumber daya baca dan tulis dari instance RDS sumber dan tujuan selama sinkronisasi data penuh awal. Hal ini dapat meningkatkan beban pada instance RDS. Jika performa instance tidak optimal, spesifikasinya rendah, atau volume datanya besar, layanan database mungkin menjadi tidak tersedia. Contohnya, DTS menggunakan sejumlah besar sumber daya baca dan tulis dalam kasus berikut: banyak kueri SQL lambat dilakukan pada instance RDS sumber, tabel tidak memiliki kunci utama, atau deadlock terjadi di instance RDS tujuan. Sebelum melakukan sinkronisasi data, evaluasi dampaknya terhadap performa instance RDS sumber dan tujuan. Kami menyarankan Anda menyinkronkan data selama jam-jam sepi, misalnya ketika utilisasi CPU instance RDS sumber dan tujuan kurang dari 30%.

  • Database sumber harus memiliki PRIMARY KEY atau batasan UNIQUE, dan semua bidang harus unik. Jika tidak, database tujuan mungkin berisi catatan data duplikat.

Penagihan

Jenis SinkronisasiBiaya Konfigurasi Tugas
Sinkronisasi skema dan data penuhGratis.
Sinkronisasi data tambahanDikenakan biaya. Untuk informasi lebih lanjut, lihat Ikhtisar Penagihan.

Batasan

  • Hanya tabel yang dapat dipilih sebagai objek untuk disinkronkan.

  • DTS tidak menyinkronkan data dalam tabel yang diubah namanya ke kluster Kafka tujuan jika nama tabel baru tidak termasuk dalam objek yang akan disinkronkan. Jika Anda ingin menyinkronkan data dalam tabel yang diubah namanya ke kluster Kafka tujuan, Anda harus reselect the objects to be synchronized. Untuk informasi lebih lanjut, lihat Tambahkan Objek ke Tugas Sinkronisasi Data.

Topologi sinkronisasi yang didukung

  • Sinkronisasi satu arah satu-ke-satu

  • Sinkronisasi satu arah satu-ke-banyak

  • Sinkronisasi satu arah banyak-ke-satu

  • Sinkronisasi satu arah bertingkat

Prosedur

  1. Beli instance sinkronisasi data. Untuk informasi lebih lanjut, lihat Beli Instance DTS.

    Catatan

    Di halaman pembelian, atur parameter Instance Sumber ke MySQL, parameter Instance Tujuan ke Kafka, dan parameter Topologi Sinkronisasi ke One-Way Synchronization.

  2. Masuk ke Konsol Data Transmission Service (DTS).

  3. Di panel navigasi di sebelah kiri, klik Data Synchronization.

  4. Di bagian atas halaman Data Synchronization Tasks, pilih wilayah tempat instance tujuan berada.

  5. Temukan tugas sinkronisasi data dan klik Configure Task di kolom Aksi.

  6. Konfigurasikan instance sumber dan kluster tujuan.

    Configure the source instance and destination cluster

    Bagian

    Parameter

    Deskripsi

    Tidak Ada

    Nama Tugas Sinkronisasi

    Nama tugas yang DTS hasilkan secara otomatis. Kami sarankan Anda menentukan nama deskriptif yang memudahkan identifikasi tugas. Anda tidak perlu menggunakan nama tugas yang unik.

    Detail Instance Sumber

    Tipe Instance

    Tipe instance sumber. Pilih RDS Instance.

    Wilayah Instance

    Wilayah sumber yang Anda pilih di halaman pembelian. Nilai parameter ini tidak dapat diubah.

    ID Instance

    ID instance ApsaraDB RDS sumber.

    Akun Database

    Akun yang digunakan untuk terhubung ke database sumber. Akun tersebut harus memiliki izin SELECT pada objek yang diperlukan dan izin REPLICATION CLIENT, REPLICATION SLAVE, dan SHOW VIEW.

    Kata Sandi Database

    Kata sandi akun database sumber.

    Enkripsi

    Menentukan apakah akan mengenkripsi koneksi ke instance sumber. Pilih Non-encrypted atau SSL-encrypted berdasarkan kebutuhan bisnis dan keamanan Anda. Jika Anda memilih SSL-encrypted, Anda harus mengaktifkan enkripsi SSL untuk instance ApsaraDB RDS sebelum mengonfigurasi tugas sinkronisasi data. Untuk informasi lebih lanjut, lihat Gunakan sertifikat cloud untuk mengaktifkan enkripsi SSL.

    Penting

    Parameter Encryption hanya tersedia di wilayah daratan Tiongkok dan wilayah China (Hong Kong).

    Detail Instance Tujuan

    Tipe Instance

    Penerapan kluster Kafka. Dalam contoh ini, User-Created Database in ECS Instance dipilih.

    Catatan

    Jika Anda mengatur parameter Tipe Instance ke nilai lain, Anda harus menerapkan lingkungan jaringan untuk kluster Kafka. Untuk informasi lebih lanjut, lihat Ikhtisar Persiapan.

    Wilayah Instance

    Wilayah tujuan yang Anda pilih di halaman pembelian. Nilai parameter ini tidak dapat diubah.

    ID Instance ECS

    ID instance Elastic Compute Service (ECS) tempat kluster Kafka diterapkan.

    Catatan

    Jika Kafka diterapkan dalam arsitektur kluster, Anda hanya perlu memilih ID instance ECS tempat salah satu node kluster berada. DTS secara otomatis mendapatkan informasi topik dari semua node dalam kluster Kafka.

    Tipe Database

    Tipe database tujuan. Pilih Kafka.

    Nomor Port

    Nomor port layanan kluster Kafka. Nilai default: 9092.

    Akun Database

    Nama pengguna yang digunakan untuk masuk ke kluster Kafka. Jika tidak ada autentikasi yang diaktifkan untuk kluster Kafka, Anda tidak perlu memasukkan nama pengguna.

    Kata Sandi Database

    Kata sandi kluster Kafka. Jika tidak ada autentikasi yang diaktifkan untuk kluster Kafka, Anda tidak perlu memasukkan kata sandi.

    Versi Kafka

    Versi kluster Kafka tujuan.

    Enkripsi

    Menentukan apakah akan mengenkripsi koneksi ke kluster tujuan. Pilih Non-encrypted atau SCRAM-SHA-256 berdasarkan kebutuhan bisnis dan keamanan Anda.

    Topik

    Nama topik tempat data disinkronkan. Klik Get Topic List dan pilih nama topik dari daftar drop-down.

    Topik yang Menyimpan Informasi DDL

    Topik yang digunakan untuk menyimpan informasi DDL. Pilih topik dari daftar drop-down. Jika Anda tidak menentukan parameter ini, informasi DDL disimpan di topik yang ditentukan oleh parameter Topik.

    Gunakan Kafka Schema Registry

    Kafka Schema Registry menyediakan lapisan penyajian untuk metadata Anda. Ini menyediakan API RESTful untuk menyimpan dan mengambil skema Avro Anda.

    • No: tidak menggunakan Kafka Schema Registry.

    • Yes: menggunakan Kafka Schema Registry. Dalam hal ini, Anda harus memasukkan URL atau alamat IP yang terdaftar di Kafka Schema Registry untuk skema Avro Anda.

  7. Di pojok kanan bawah halaman, klik Set Whitelist and Next.

    Jika database sumber atau tujuan adalah instance database Alibaba Cloud, seperti ApsaraDB RDS for MySQL atau ApsaraDB for MongoDB, DTS secara otomatis menambahkan blok CIDR server DTS ke daftar putih alamat IP instance. Jika database sumber atau tujuan adalah database yang dikelola sendiri yang di-hosting pada instance Elastic Compute Service (ECS), DTS secara otomatis menambahkan blok CIDR server DTS ke aturan grup keamanan instance ECS, dan Anda harus memastikan bahwa instance ECS dapat mengakses database. Jika database yang dikelola sendiri di-hosting pada beberapa instance ECS, Anda harus menambahkan blok CIDR server DTS ke aturan grup keamanan setiap instance ECS secara manual. Jika database sumber atau tujuan adalah database yang dikelola sendiri yang diterapkan di pusat data atau disediakan oleh penyedia layanan cloud pihak ketiga, Anda harus menambahkan blok CIDR server DTS ke daftar putih alamat IP database secara manual untuk mengizinkan DTS mengakses database. Untuk informasi lebih lanjut, lihat Tambahkan Blok CIDR Server DTS.

    Peringatan

    Jika blok CIDR server DTS ditambahkan secara otomatis atau manual ke daftar putih database atau instance, atau ke aturan grup keamanan ECS, risiko keamanan mungkin timbul. Oleh karena itu, sebelum menggunakan DTS untuk menyinkronkan data, Anda harus memahami dan mengakui potensi risiko serta mengambil langkah-langkah pencegahan, termasuk tetapi tidak terbatas pada langkah-langkah berikut: meningkatkan keamanan nama pengguna dan kata sandi, membatasi port yang diekspos, mengotentikasi panggilan API, secara berkala memeriksa daftar putih atau aturan grup keamanan ECS dan melarang blok CIDR yang tidak sah, atau menghubungkan database ke DTS menggunakan Express Connect, VPN Gateway, atau Smart Access Gateway.

  8. Pilih objek yang akan disinkronkan.

    Select the objects to be synchronized

    Parameter

    Deskripsi

    Data Format in Kafka

    Data yang disinkronkan ke kluster Kafka disimpan dalam format Avro atau Canal JSON. Untuk informasi lebih lanjut, lihat Format data dalam antrian pesan.

    Policy for Shipping Data to Kafka Partitions

    Kebijakan yang digunakan untuk menyinkronkan data ke partisi Kafka. Pilih kebijakan berdasarkan kebutuhan bisnis Anda. Untuk informasi lebih lanjut, lihat Tentukan kebijakan untuk menyinkronkan data ke partisi Kafka.

    Objek yang akan disinkronkan

    Pilih satu atau lebih tabel dari bagian Available dan klik ikon Rightwards arrow untuk menambahkan tabel ke bagian Selected.

    Catatan

    DTS memetakan nama tabel ke nama topik yang Anda pilih di Langkah 6. Anda dapat menggunakan fitur pemetaan nama objek untuk mengubah topik yang disinkronkan ke kluster tujuan. Untuk informasi lebih lanjut, lihat Ubah nama objek yang akan disinkronkan.

    Ubah Nama Database dan Tabel

    Anda dapat menggunakan fitur pemetaan nama objek untuk mengubah nama objek yang disinkronkan ke instance tujuan. Untuk informasi lebih lanjut, lihat Pemetaan Nama Objek.

    Waktu Ulang untuk Koneksi Gagal

    Secara default, jika DTS gagal terhubung ke database sumber atau tujuan, DTS mencoba kembali dalam waktu 720 menit (12 jam) ke depan. Anda dapat menentukan waktu percobaan ulang berdasarkan kebutuhan Anda. Jika DTS berhasil terhubung kembali ke database sumber dan tujuan dalam waktu yang ditentukan, DTS melanjutkan tugas sinkronisasi data. Jika tidak, tugas sinkronisasi data gagal.

    Catatan

    Saat DTS mencoba kembali koneksi, Anda dikenakan biaya untuk instance DTS. Kami menyarankan Anda menentukan waktu percobaan ulang berdasarkan kebutuhan bisnis Anda. Anda juga dapat melepaskan instance DTS sesegera mungkin setelah instance sumber dan tujuan dilepaskan.

  9. Di pojok kanan bawah halaman, klik Next.

  10. Konfigurasikan sinkronisasi awal.

    Kafka: Configure initial synchronization

    Parameter

    Deskripsi

    Initial Synchronization

    Pilih kedua opsi Initial Schema Synchronization dan Initial Full Data Synchronization. DTS menyinkronkan skema dan data historis objek yang diperlukan, lalu menyinkronkan data tambahan.

    Filter options

    Ignore DDL in incremental synchronization phase dipilih secara default. Dalam hal ini, DTS tidak menyinkronkan operasi DDL yang dilakukan pada database sumber selama sinkronisasi data tambahan.

  11. Di pojok kanan bawah halaman, klik Precheck.

    Catatan
    • Sebelum Anda dapat memulai tugas sinkronisasi data, DTS melakukan pemeriksaan awal. Anda hanya dapat memulai tugas sinkronisasi data setelah tugas tersebut lolos pemeriksaan awal.

    • Jika tugas gagal lolos pemeriksaan awal, Anda dapat mengklik ikon Petunjuk di sebelah setiap item yang gagal untuk melihat detailnya.

      • Setelah Anda menyelesaikan masalah berdasarkan detail tersebut, mulai pemeriksaan awal baru.

      • Jika Anda tidak perlu menyelesaikan masalah, ignore the failed items dan initiate a new precheck.

  12. Tutup kotak dialog Precheck setelah pesan berikut ditampilkan: Precheck Passed. Kemudian, tugas sinkronisasi data dimulai.

    Anda dapat melihat status tugas sinkronisasi data di halaman Data Synchronization. View the status of a data synchronization task