全部产品
Search
文档中心

Data Transmission Service:Sinkronkan data dari instance ApsaraDB RDS for MySQL ke proyek DataHub

更新时间:Jul 06, 2025

DataHub adalah platform distribusi data real-time yang dirancang untuk memproses data streaming. Anda dapat menerbitkan dan berlangganan data streaming di DataHub serta mendistribusikan data tersebut ke platform lain. DataHub memungkinkan Anda menganalisis data streaming dan membangun aplikasi berdasarkan data streaming. Anda dapat menyinkronkan data dari instance ApsaraDB RDS for MySQL ke proyek DataHub menggunakan Data Transmission Service (DTS). Dengan cara ini, Anda dapat menggunakan StreamCompute dan layanan big data lainnya untuk menganalisis data secara real-time.

Prasyarat

  • Proyek DataHub berada di wilayah China (Hangzhou), China (Shanghai), China (Beijing), atau China (Shenzhen).

  • Sebuah proyek DataHub telah dibuat untuk menerima data yang disinkronkan. Untuk informasi lebih lanjut, lihat Buat proyek.

  • Tabel yang akan disinkronkan dari instance ApsaraDB RDS for MySQL memiliki PRIMARY KEY atau batasan UNIQUE.

Penagihan

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

Batasan

  • Sinkronisasi data penuh awal tidak didukung. DTS tidak menyinkronkan data historis objek yang diperlukan dari instance ApsaraDB RDS sumber ke proyek DataHub tujuan.

  • Anda hanya dapat memilih tabel sebagai objek yang akan disinkronkan.

  • Kami sarankan Anda tidak melakukan operasi DDL pada objek yang diperlukan selama sinkronisasi data. Jika tidak, sinkronisasi data mungkin gagal.

Operasi SQL yang dapat disinkronkan

Jenis Operasi

Pernyataan SQL

DML

INSERT, UPDATE, dan DELETE

DDL

ADD COLUMN

Prosedur

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

    Catatan

    Di halaman pembelian, atur Instance Sumber ke MySQL, Instance Tujuan ke DataHub, dan Topologi Sinkronisasi ke One-way Synchronization.

  2. Masuk ke Konsol DTS.

    Catatan

    Jika Anda dialihkan ke Konsol Manajemen Data (DMS), Anda dapat mengklik ikon old di image untuk kembali ke versi sebelumnya dari Konsol DTS.

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

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

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

  6. Konfigurasikan instance sumber dan tujuan.

    DataHub同步源目信息配置

    Bagian

    Parameter

    Deskripsi

    Tidak Ada

    Nama Tugas Sinkronisasi

    Nama tugas yang dihasilkan otomatis oleh DTS. Kami sarankan Anda menentukan nama deskriptif yang mudah diidentifikasi. Anda tidak perlu menggunakan nama tugas unik.

    Detail Instance Sumber

    Tipe Instance

    Jenis basis data sumber. Dalam contoh ini, pilih RDS Instance.

    Catatan

    Jika database sumber adalah database MySQL yang dikelola sendiri, Anda harus menyiapkan lingkungan yang diperlukan sebelum sinkronisasi data. Untuk informasi lebih lanjut, lihat Ikhtisar persiapan.

    Wilayah Instance

    Wilayah sumber yang Anda pilih di halaman pembelian. Anda tidak dapat mengubah nilai parameter ini.

    ID Instance

    ID instance ApsaraDB RDS sumber.

    Akun Database

    Akun database dari instance sumber.

    Catatan

    Jika mesin database dari instance ApsaraDB RDS for MySQL sumber adalah MySQL 5.5 atau MySQL 5.6, Anda tidak perlu mengonfigurasi parameter Database Account dan Database Password.

    Kata Sandi Database

    Kata sandi akun.

    Enkripsi

    Menentukan apakah akan mengenkripsi koneksi ke database tujuan. 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 for MySQL sebelum mengonfigurasi tugas sinkronisasi data. Untuk informasi lebih lanjut, lihat Configure the SSL encryption feature.

    Penting

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

    Detail Instance Tujuan

    Tipe Instance

    Nilai parameter ini diatur ke DataHub dan tidak dapat diubah.

    Wilayah Instance

    Wilayah tujuan yang Anda pilih di halaman pembelian. Anda tidak dapat mengubah nilai parameter ini.

    Proyek

    Pilih nama proyek DataHub project.

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

    Jika database sumber atau tujuan adalah instance database Alibaba Cloud, seperti instance 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 dihosting 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 dihosting 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 ditempatkan 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 dapat timbul. Oleh karena itu, sebelum menggunakan DTS untuk menyinkronkan data, Anda harus memahami dan mengakui potensi risiko dan mengambil langkah-langkah pencegahan, termasuk tetapi tidak terbatas pada langkah-langkah berikut: meningkatkan keamanan nama pengguna dan kata sandi Anda, membatasi port yang diekspos, mengotentikasi panggilan API, memeriksa daftar putih atau aturan grup keamanan ECS secara berkala dan melarang blok CIDR yang tidak sah, atau menghubungkan database ke DTS dengan menggunakan Express Connect, VPN Gateway, atau Smart Access Gateway.

  8. Pilih kebijakan sinkronisasi dan objek yang akan disinkronkan.

    配置同步对象

    Parameter

    Deskripsi

    Sinkronisasi Awal

    Pilih Initial Schema Synchronization.

    Catatan

    Setelah Anda memilih Initial Schema Synchronization, DTS menyinkronkan skema objek yang diperlukan (seperti tabel) ke proyek DataHub tujuan.

    Pilih objek yang akan disinkronkan

    Pilih satu atau lebih objek di bagian Available dan klik ikon 向右小箭头 untuk memindahkan objek ke bagian Selected.

    Catatan
    • Anda dapat memilih tabel sebagai objek yang akan disinkronkan.

    • Secara default, setelah sebuah objek disinkronkan ke database tujuan, nama objek tersebut tetap tidak berubah. Anda dapat menggunakan fitur pemetaan nama objek untuk mengubah nama objek yang disinkronkan ke instance tujuan. Untuk informasi lebih lanjut, lihat Rename an object to be synchronized.

    Aktifkan aturan penamaan baru untuk kolom tambahan

    Setelah DTS menyinkronkan data ke proyek DataHub tujuan, DTS menambahkan kolom tambahan ke topik tujuan. Jika nama kolom tambahan sama dengan nama kolom yang sudah ada di topik tujuan, sinkronisasi data gagal. Pilih Yes atau No untuk menentukan whether to enable new additional column rules.

    Peringatan

    Sebelum Anda mengonfigurasi parameter ini, periksa apakah nama kolom tambahan sama dengan nama kolom yang sudah ada di topik tujuan. Jika tidak, tugas sinkronisasi data mungkin gagal atau data mungkin hilang. Untuk informasi lebih lanjut, lihat bagian Aturan penamaan untuk kolom tambahan dari topik Modifikasi aturan penamaan untuk kolom tambahan.

    Ubah Nama Basis Data 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.

    Replikasi Tabel Sementara Saat DMS Melakukan Operasi DDL

    Jika Anda menggunakan DMS untuk melakukan operasi DDL online pada database sumber, Anda dapat menentukan apakah akan menyinkronkan tabel sementara yang dihasilkan oleh operasi DDL online.

    • Yes: DTS menyinkronkan data tabel sementara yang dihasilkan oleh operasi DDL Online.

      Catatan

      Jika operasi DDL online menghasilkan sejumlah besar data, tugas sinkronisasi data mungkin mengalami penundaan.

    • No: DTS tidak menyinkronkan data tabel sementara yang dihasilkan oleh operasi DDL online. Hanya data DDL asli dari database sumber yang disinkronkan.

      Catatan

      Jika Anda memilih Tidak, tabel di database tujuan mungkin akan terkunci.

    Waktu Ulangi untuk Koneksi Gagal

    Secara default, jika DTS gagal terhubung ke database sumber atau tujuan, DTS akan mencoba kembali dalam 720 menit (12 jam) berikutnya. Anda dapat menentukan waktu percobaan ulang sesuai dengan kebutuhan Anda. Jika DTS berhasil tersambung 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 akan 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. Opsional. Di bagian Selected, arahkan pointer ke nama tabel yang akan disinkronkan dan klik Edit. Di kotak dialog yang muncul, konfigurasikan kunci shard yang digunakan untuk mempartisi tabel.

  10. Di sudut kanan bawah halaman, klik Precheck.

    Catatan
    • Sebelum Anda dapat memulai tugas sinkronisasi data, DTS melakukan pemeriksaan pendahuluan. Anda hanya dapat memulai tugas sinkronisasi data setelah tugas lulus pemeriksaan pendahuluan.

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

      • Setelah Anda menangani masalah berdasarkan detail yang diberikan, mulai precheck baru.

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

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

  12. Tunggu hingga sinkronisasi awal selesai dan tugas sinkronisasi data memasuki status Synchronizing.

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

Skema topik DataHub

Ketika DTS menyinkronkan data inkremental ke topik DataHub, DTS menambahkan kolom tambahan untuk menyimpan metadata di dalam topik. Gambar berikut menunjukkan skema dari sebuah topik DataHub.

Catatan

Dalam contoh ini, id, name, dan address adalah bidang data. DTS menambahkan awalan dts_ ke bidang data, termasuk bidang data asli yang disinkronkan dari database sumber ke database tujuan, karena aturan penamaan versi sebelumnya untuk kolom tambahan digunakan. Jika Anda menggunakan aturan penamaan baru untuk kolom tambahan, DTS tidak akan menambahkan awalan ke bidang data asli yang disinkronkan dari database sumber ke database tujuan.

Topic定义

Tabel berikut menjelaskan kolom tambahan di topik DataHub.

Nama kolom tambahan sebelumnya

Nama kolom tambahan baru

Tipe

Deskripsi

dts_record_id

new_dts_sync_dts_record_id

String

ID unik dari entri log inkremental.

Catatan
  • Secara default, ID bertambah otomatis untuk setiap entri log baru. Dalam skenario pemulihan bencana, rollback mungkin terjadi, dan ID mungkin tidak bertambah otomatis. Oleh karena itu, beberapa ID mungkin duplikat.

  • Jika operasi UPDATE dilakukan, DTS menghasilkan dua entri log inkremental untuk mencatat nilai pra-update dan pasca-update. Nilai dari field dts_record_id di kedua entri log inkremental tersebut sama.

dts_operation_flag

new_dts_sync_dts_operation_flag

String

Tipe operasi. Nilai yang valid:

  • I: operasi INSERT.

  • D: operasi DELETE.

  • U: operasi UPDATE.

  • F: sinkronisasi data penuh.

dts_instance_id

new_dts_sync_dts_instance_id

String

ID server database.

dts_db_name

new_dts_sync_dts_db_name

String

Nama database.

dts_table_name

new_dts_sync_dts_table_name

String

Nama tabel.

dts_utc_timestamp

new_dts_sync_dts_utc_timestamp

String

Timestamp operasi yang ditampilkan dalam UTC. Ini juga merupakan timestamp file log.

dts_before_flag

new_dts_sync_dts_before_flag

String

Menunjukkan apakah nilai kolom adalah nilai pra-pembaruan. Nilai yang valid: Y dan N.

dts_after_flag

new_dts_sync_dts_after_flag

String

Menunjukkan apakah nilai kolom adalah nilai pasca-pembaruan. Nilai yang valid: Y dan N.

Informasi tambahan tentang bidang dts_before_flag dan dts_after_flag

Nilai dari bidang dts_before_flag dan dts_after_flag dalam entri log tambahan berbeda berdasarkan tipe operasi:

  • INSERT

    Untuk operasi INSERT, nilai kolom adalah nilai rekaman baru yang dimasukkan (nilai pasca-pembaruan). Nilai dari bidang dts_before_flag adalah N, dan nilai dari bidang dts_after_flag adalah Y.

    INSERT操作

  • UPDATE

    DTS menghasilkan dua entri log tambahan untuk operasi UPDATE. Dua entri log tambahan tersebut memiliki nilai yang sama untuk bidang dts_record_id, dts_operation_flag, dan dts_utc_timestamp.

    Entri log pertama mencatat nilai pra-pembaruan. Oleh karena itu, nilai dari bidang dts_before_flag adalah Y, dan nilai dari bidang dts_after_flag adalah N. Entri log kedua mencatat nilai pasca-pembaruan. Oleh karena itu, nilai dari bidang dts_before_flag adalah N, dan nilai dari bidang dts_after_flag adalah Y.

    UPDATE操作

  • DELETE

    Untuk operasi DELETE, nilai kolom adalah nilai rekaman yang dihapus (nilai pra-pembaruan). Nilai dari bidang dts_before_flag adalah Y, dan nilai dari bidang dts_after_flag adalah N.

    DELETE操作

Apa yang harus dilakukan selanjutnya

Setelah Anda mengonfigurasi tugas sinkronisasi data, Anda dapat menggunakan Alibaba Cloud Realtime Compute for Apache Flink untuk menganalisis data yang disinkronkan ke proyek DataHub. Untuk informasi lebih lanjut, lihat Apa itu Alibaba Cloud Realtime Compute for Apache Flink?