All Products
Search
Document Center

Data Transmission Service:Sinkronisasi data dari RDS for MySQL ke SelectDB

Last Updated:Jul 18, 2026

ApsaraDB for SelectDB mendukung respons kueri dalam subdetik pada dataset besar, puluhan ribu kueri titik konkuren, serta analitik kompleks ber-throughput tinggi. Data Transmission Service (DTS) menyinkronkan data dari sumber MySQL—seperti database MySQL yang dikelola sendiri atau instans ApsaraDB RDS for MySQL—ke instans ApsaraDB for SelectDB untuk analitik data skala besar. Menggunakan instans ApsaraDB RDS for MySQL sebagai contoh, topik ini menjelaskan prosedurnya.

Prasyarat

Anda telah membuat instans target ApsaraDB for SelectDB dengan kapasitas penyimpanan yang melebihi kapasitas yang digunakan oleh instans sumber ApsaraDB RDS for MySQL. Untuk informasi selengkapnya, lihat Buat instans.

Pertimbangan

Jenis

Deskripsi

Batasan database sumber

  • Persyaratan untuk objek sinkronisasi:

    • Jika semua tabel yang akan disinkronkan memiliki primary key atau unique constraint:

      Pastikan kolom yang membentuk key atau constraint tersebut berisi nilai unik.

    • Jika objek sinkronisasi mencakup tabel yang tidak memiliki primary key maupun unique constraint:

      Saat mengonfigurasi instansi sinkronisasi data, kami merekomendasikan Anda memilih Schema Synchronization untuk Synchronization Types. Kemudian, pada langkah Configurations for Databases, Tables, and Columns, atur Engine tabel menjadi duplicate. Jika tidak, instans mungkin gagal atau terjadi kehilangan data.

      Catatan

      Selama schema synchronization, DTS menambahkan kolom ke tabel tujuan. Untuk informasi selengkapnya, lihat Kolom tambahan.

  • Jika Anda melakukan sinkronisasi di tingkat tabel dan perlu mengedit pemetaan (seperti pemetaan nama kolom), setiap tugas sinkronisasi mendukung hingga 1.000 tabel. Jika melebihi batas ini, tugas akan gagal dengan error. Untuk mengatasinya, bagi tabel ke beberapa tugas atau konfigurasikan tugas sinkronisasi seluruh database.

  • Binary logs:

    • ApsaraDB RDS for MySQL mengaktifkan binary logging secara default. Pastikan parameter binlog_row_image diatur ke full. Jika tidak, pemeriksaan awal gagal dan tugas sinkronisasi tidak dapat dimulai. Untuk petunjuknya, lihat Konfigurasi parameter instans.

      Penting
      • Jika instans sumber Anda adalah database MySQL yang dikelola sendiri, aktifkan binary logging dan atur binlog_format ke row serta binlog_row_image ke full.

      • Jika database MySQL yang dikelola sendiri Anda merupakan klaster dual-primary (kedua node berperan sebagai primary dan secondary), aktifkan parameter log_slave_updates agar DTS dapat menangkap semua event log biner. Untuk petunjuknya, lihat Buat akun dan konfigurasi binary logging untuk database MySQL yang dikelola sendiri.

    • Log biner lokal untuk instans ApsaraDB RDS for MySQL harus dipertahankan minimal tiga hari (tujuh hari direkomendasikan). Untuk database MySQL yang dikelola sendiri, pertahankan log biner lokal minimal tujuh hari. Jika tidak, DTS mungkin gagal mengambil log biner, sehingga tugas gagal. Dalam kasus ekstrem, hal ini dapat menyebabkan inkonsistensi data atau kehilangan data. Masalah yang disebabkan oleh periode retensi log biner lebih pendek dari yang dipersyaratkan DTS tidak dicakup dalam SLA DTS.

      Catatan

      Untuk mengonfigurasi retention period log biner lokal pada instans ApsaraDB RDS for MySQL, lihat Hapus log lokal secara otomatis.

  • Jangan menjalankan operasi DDL yang mengubah skema database atau tabel selama schema synchronization atau full synchronization. Jika dilakukan, tugas sinkronisasi akan gagal.

    Catatan

    Selama full synchronization, DTS melakukan kueri ke database sumber. Hal ini membuat metadata lock yang dapat memblokir operasi DDL pada database sumber.

  • Data yang dihasilkan dari perubahan yang tidak ditulis ke log biner—seperti data yang dipulihkan dari backup fisik atau dibuat oleh operasi kaskade—tidak disinkronkan ke database tujuan.

    Catatan

    Jika hal ini terjadi, hapus database atau tabel yang terpengaruh dari objek sinkronisasi, lalu tambahkan kembali. Anda hanya dapat melakukannya jika bisnis Anda mengizinkannya. Untuk informasi selengkapnya, lihat Ubah objek sinkronisasi.

  • Jika database sumber Anda menggunakan MySQL 8.0.23 atau versi lebih baru dan berisi kolom tersembunyi tak terlihat (invisible hidden columns), DTS mungkin tidak membaca kolom tersebut. Hal ini dapat menyebabkan kehilangan data.

    Catatan

    Jalankan perintah ALTER TABLE <table_name> ALTER COLUMN <column_name> SET VISIBLE; untuk membuat kolom tersembunyi menjadi terlihat. Untuk informasi selengkapnya, lihat Invisible Columns.

Batasan lainnya

  • Anda hanya dapat menyinkronkan data ke tabel yang menggunakan engine Unique atau Duplicate pada instans Alibaba Cloud SelectDB.

    Unique engine

    Jika tabel tujuan menggunakan Unique engine, pastikan semua unique key pada tabel tujuan ada di tabel sumber dan termasuk dalam objek sinkronisasi. Jika tidak, inkonsistensi data dapat terjadi.

    Duplicate engine

    Jika tabel tujuan menggunakan Duplicate engine, kondisi berikut dapat menyebabkan data duplikat di database tujuan. Anda dapat menghapus duplikat secara manual berdasarkan kolom tambahan (_is_deleted, _version, dan _record_id):

    • Instansi sinkronisasi data diulang (retried).

    • Instansi sinkronisasi data dijalankan ulang (restarted).

    • Dua operasi DML atau lebih dilakukan pada baris yang sama setelah instansi sinkronisasi data dimulai.

      Catatan

      Ketika tabel tujuan menggunakan Duplicate engine, DTS mengonversi pernyataan UPDATE atau DELETE menjadi pernyataan INSERT.

  • DTS tidak menyinkronkan objek INDEX, PARTITION, VIEW, PROCEDURE, FUNCTION, TRIGGER, atau foreign key (FK).

  • Saat mengonfigurasi parameter di bagian Selected Objects, Anda hanya dapat mengatur parameter bucket_count (jumlah bucket).

    Catatan

    Nilai parameter bucket_count harus berupa bilangan bulat positif. Nilai default-nya adalah auto.

  • Selama sinkronisasi data, jangan membuat klaster di instans Alibaba Cloud SelectDB tujuan. Jika dilakukan, tugas akan gagal. Anda dapat menjalankan ulang instansi sinkronisasi data untuk melanjutkan tugas.

  • Jika nama database atau tabel yang disinkronkan tidak diawali huruf, ubah namanya menggunakan fitur pemetaan nama objek.

  • Jika nama objek yang disinkronkan (seperti database, tabel, atau kolom) mengandung karakter Tionghoa, ubah namanya menggunakan fitur pemetaan nama objek, misalnya ke nama berbahasa Inggris. Jika tidak, tugas mungkin gagal.

  • DTS tidak mendukung operasi DDL yang memodifikasi beberapa kolom sekaligus atau operasi DDL berturut-turut pada tabel yang sama.

  • Selama sinkronisasi data, jangan menambahkan node BE ke database Alibaba Cloud SelectDB. Jika dilakukan, tugas akan gagal. Anda dapat menjalankan ulang instansi sinkronisasi data untuk melanjutkan tugas.

  • Dalam skenario sinkronisasi tabel many-to-one—di mana data dari beberapa tabel sumber disinkronkan ke satu tabel tujuan—pastikan skema semua tabel sumber identik. Jika tidak, inkonsistensi data atau kegagalan tugas dapat terjadi.

  • Pada MySQL, M dalam VARCHAR(M) merepresentasikan jumlah karakter. Di Alibaba Cloud SelectDB, N dalam VARCHAR(N) merepresentasikan jumlah byte. Jika Anda tidak menggunakan fitur schema synchronization yang disediakan DTS, kami merekomendasikan mengatur panjang field VARCHAR di Alibaba Cloud SelectDB menjadi empat kali panjang field VARCHAR yang sesuai di MySQL.

  • Saat Anda menggunakan DMS atau tool gh-ost untuk menjalankan operasi online DDL pada sumber, DTS hanya menyinkronkan pernyataan DDL aslinya ke tujuan. Dalam skenario ini, DTS tidak perlu menyinkronkan banyak data tabel sementara, tetapi hal ini dapat menyebabkan penguncian (lock) pada tabel tujuan.

    Catatan

    DTS tidak mendukung sinkronisasi perubahan online DDL yang dibuat dengan tool seperti pt-online-schema-change. Jika perubahan semacam itu ada di sumber, data dapat hilang di tujuan atau instansi sinkronisasi dapat gagal.

  • Sebelum menyinkronkan data, evaluasi kinerja database sumber dan tujuan. Lakukan sinkronisasi data selama jam sepi. Sinkronisasi data penuh awal mengonsumsi sumber daya baca dan tulis dari kedua database, yang dapat meningkatkan beban database.

  • Sinkronisasi data penuh awal menjalankan operasi INSERT secara konkuren, yang menyebabkan fragmentasi pada tabel database tujuan. Akibatnya, ruang tabel database tujuan lebih besar daripada database sumber setelah sinkronisasi data penuh awal selesai.

  • Selama sinkronisasi data, jangan gunakan tool seperti pt-online-schema-change untuk melakukan perubahan online DDL pada objek sinkronisasi di database sumber. Jika dilakukan, tugas akan gagal.

  • Selama sinkronisasi data, jika sumber selain DTS menulis data ke database tujuan, inkonsistensi data dapat terjadi.

  • Jika instans ApsaraDB RDS for MySQL Anda telah mengaktifkan Always-Encrypted, sinkronisasi data penuh tidak didukung.

    Catatan

    Instans ApsaraDB RDS for MySQL yang telah mengaktifkan Transparent Data Encryption (TDE) mendukung schema synchronization, sinkronisasi data penuh awal, dan sinkronisasi data inkremental.

  • Selama sinkronisasi inkremental, DTS menggunakan strategi sinkronisasi batch untuk mengurangi beban pada tujuan. Secara default, DTS menulis ke satu objek sinkronisasi paling sering sekali setiap 5 detik. Oleh karena itu, tugas sinkronisasi DTS mungkin mengalami latensi sinkronisasi reguler—biasanya dalam 10 detik. Untuk mengurangi latensi sinkronisasi reguler ini, ubah parameter instans DTS selectdb.reservoir.timeout.milliseconds di Konsol untuk menyesuaikan interval batch. Rentang yang diizinkan adalah [1000, 10000] milidetik.

    Catatan

    Saat menyesuaikan interval batch, nilai yang lebih kecil meningkatkan frekuensi penulisan DTS. Hal ini dapat meningkatkan beban dan waktu respons (RT) penulisan pada tujuan, yang pada gilirannya meningkatkan latensi sinkronisasi DTS. Sesuaikan nilai berdasarkan beban pada tujuan.

  • Jika tugas gagal, staf dukungan DTS akan mencoba memulihkannya dalam waktu delapan jam. Selama pemulihan, mereka mungkin menjalankan ulang tugas atau menyesuaikan parameternya.

    Catatan

    Hanya parameter tugas DTS yang dimodifikasi—bukan parameter database. Parameter yang mungkin disesuaikan termasuk yang tercantum dalam Ubah parameter instans.

Kasus khusus

  • Untuk database sumber MySQL yang dikelola sendiri:

    • Jika terjadi alih bencana (switchover) primary/secondary di database sumber selama sinkronisasi, tugas akan gagal.

    • DTS menghitung latensi dengan membandingkan timestamp catatan terakhir yang disinkronkan dengan waktu saat ini. Jika tidak ada operasi DML yang dijalankan dalam waktu lama di database sumber, pelaporan latensi mungkin tidak akurat. Jika latensi tampak terlalu tinggi, jalankan operasi DML di database sumber untuk memperbarui latensi.

      Catatan

      Jika Anda memilih seluruh database untuk sinkronisasi, buatlah tabel heartbeat. Perbarui atau tulis ke tabel ini setiap detik.

    • DTS secara berkala menjalankan perintah CREATE DATABASE IF NOT EXISTS `test` di database sumber untuk memajukan offset log biner.

    • Jika database sumber Anda adalah Amazon Aurora MySQL atau instans MySQL berklaster lainnya, pastikan nama domain atau alamat IP yang digunakan dalam konfigurasi tugas—dan resolusi DNS-nya—selalu mengarah ke node read/write (RW). Jika tidak, sinkronisasi mungkin gagal.

  • Untuk database sumber ApsaraDB RDS for MySQL:

    • Instans hanya baca—seperti instans hanya baca ApsaraDB RDS for MySQL 5.6—yang tidak mencatat log transaksi tidak dapat berfungsi sebagai database sumber.

    • DTS secara berkala menjalankan perintah CREATE DATABASE IF NOT EXISTS `test` di database sumber untuk memajukan offset log biner.

Penagihan

Jenis sinkronisasi

Harga

Schema synchronization dan sinkronisasi data penuh awal

Gratis.

Sinkronisasi data inkremental

Dikenai biaya. Untuk informasi selengkapnya, lihat Ikhtisar penagihan.

SQL untuk sinkronisasi inkremental

Jenis operasi

Pernyataan SQL

DML

INSERT, UPDATE, dan DELETE

DDL

  • ADD COLUMN

  • MODIFY COLUMN

  • CHANGE COLUMN

  • DROP COLUMN dan DROP TABLE

  • TRUNCATE TABLE

  • RENAME TABLE

    Penting

    Operasi RENAME TABLE dapat menyebabkan inkonsistensi data. Misalnya, jika objek sinkronisasi adalah satu tabel dan Anda mengganti nama tabel ini di instans sumber selama sinkronisasi, data tabel ini tidak disinkronkan ke database tujuan. Untuk mencegah masalah ini, pilih seluruh database tempat tabel tersebut berada sebagai objek sinkronisasi. Pastikan database tempat tabel berada sebelum dan sesudah operasi RENAME TABLE termasuk dalam objek sinkronisasi.

Izin akun database

Database

Izin yang diperlukan

Tindakan

Sumber ApsaraDB RDS for MySQL

Izin baca dan tulis pada objek yang akan disinkronkan

Buat akun dan Ubah izin akun

Instans tujuan ApsaraDB for SelectDB

Izin akses klaster (Usage_priv) dan izin baca/tulis pada database (Select_priv, Load_priv, Alter_priv, Create_priv, dan Drop_priv)

Kelola izin klaster dan Kelola izin dasar

Catatan

Jika Anda membuat akun database sumber di luar Konsol ApsaraDB RDS for MySQL, pastikan akun tersebut memiliki izin REPLICATION CLIENT, REPLICATION SLAVE, SHOW VIEW, dan SELECT.

Prosedur

  1. Buka halaman daftar tugas sinkronisasi di wilayah tujuan. Anda dapat menggunakan salah satu dari dua metode berikut:

    Dari Konsol DTS

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

    2. Di panel navigasi kiri, klik Data Synchronization.

    3. Di pojok kiri atas halaman, pilih wilayah tempat instans sinkronisasi berada.

    Dari Konsol DMS

    Catatan

    Operasi aktual dapat berbeda tergantung mode dan tata letak Konsol DMS. Untuk informasi selengkapnya, lihat Mode sederhana dan Sesuaikan tata letak dan gaya antarmuka DMS.

    1. Masuk ke Data Management (DMS).

    2. Di bilah menu atas, pilih Data + AI > Data Transmission (DTS) > Data Synchronization.

    3. Di sebelah kanan Data Synchronization Tasks, pilih wilayah tempat instans sinkronisasi berada.

  2. Klik Create Task untuk membuka halaman konfigurasi tugas.

  3. Konfigurasikan database sumber dan tujuan.

    Bagian

    Parameter

    Deskripsi

    N/A

    Task Name

    DTS secara otomatis menghasilkan nama tugas. Kami merekomendasikan Anda menentukan nama deskriptif agar mudah diidentifikasi. Nama tidak harus unik.

    Source Database

    Select Existing Connection

    • Untuk menggunakan instans database yang ditambahkan ke sistem (baru dibuat atau disimpan), pilih instans database dari daftar drop-down. Informasi database akan dikonfigurasi secara otomatis.

      Catatan

      Di Konsol DMS, item konfigurasi ini bernama Select a DMS database instance..

    • Jika Anda belum menambahkan instans database ke sistem, atau tidak perlu menggunakan instans yang sudah ditambahkan, konfigurasikan informasi database berikut secara manual.

    Database Type

    Pilih MySQL.

    Access Method

    Pilih Alibaba Cloud Instance.

    Instance Region

    Pilih wilayah untuk instans sumber ApsaraDB RDS for MySQL.

    Replicate Data Across Alibaba Cloud Accounts

    Dalam contoh ini, data disinkronkan dalam satu Akun Alibaba Cloud. Pilih No.

    RDS Instance ID

    Pilih ID instans sumber ApsaraDB RDS for MySQL.

    Database Account

    Masukkan akun database instans sumber ApsaraDB RDS for MySQL. Untuk informasi tentang izin yang diperlukan, lihat Izin yang diperlukan untuk akun database.

    Database Password

    Masukkan kata sandi yang sesuai dengan akun database.

    Encryption

    Pilih Non-encrypted atau SSL-encrypted sesuai kebutuhan. Jika Anda memilih SSL-encrypted, Anda harus mengaktifkan enkripsi SSL untuk instans RDS for MySQL terlebih dahulu. Untuk informasi selengkapnya, lihat Gunakan sertifikat cloud untuk mengaktifkan enkripsi SSL dengan cepat.

    Destination Database

    Select Existing Connection

    • Untuk menggunakan instans database yang ditambahkan ke sistem (baru dibuat atau disimpan), pilih instans database dari daftar drop-down. Informasi database akan dikonfigurasi secara otomatis.

      Catatan

      Di Konsol DMS, item konfigurasi ini bernama Select a DMS database instance..

    • Jika Anda belum menambahkan instans database ke sistem, atau tidak perlu menggunakan instans yang sudah ditambahkan, konfigurasikan informasi database berikut secara manual.

    Database Type

    Pilih ApsaraDB for SelectDB.

    Access Method

    Pilih Alibaba Cloud Instance.

    Instance Region

    Pilih wilayah untuk instans tujuan ApsaraDB for SelectDB.

    Replicate Data Across Alibaba Cloud Accounts

    Dalam contoh ini, data disinkronkan dalam satu Akun Alibaba Cloud. Pilih No.

    Instance ID

    Pilih ID instans tujuan ApsaraDB for SelectDB.

    Database Account

    Masukkan akun database instans tujuan ApsaraDB for SelectDB. Untuk informasi tentang izin yang diperlukan, lihat Izin yang diperlukan untuk akun database.

    Database Password

    Masukkan kata sandi yang sesuai dengan akun database.

  4. Setelah menyelesaikan konfigurasi, klik Test Connectivity and Proceed di bagian bawah halaman.

    Catatan
    • Pastikan blok CIDR alamat IP server DTS telah ditambahkan ke pengaturan keamanan database sumber dan tujuan untuk mengizinkan akses dari server DTS. Hal ini dapat dilakukan secara otomatis atau manual. Untuk informasi selengkapnya, lihat Tambahkan blok CIDR alamat IP server DTS ke daftar putih.

    • Jika database sumber atau tujuan adalah database yang dikelola sendiri (di mana Access Method bukan Alibaba Cloud Instance), Anda juga harus mengklik Test Connectivity di kotak dialog CIDR Blocks of DTS Servers.

  5. Konfigurasikan objek tugas.

    1. Di halaman Configure Objects, konfigurasikan objek yang akan disinkronkan.

      Parameter

      Deskripsi

      Synchronization Types

      Incremental Data Synchronization dipilih. Secara default, Anda juga harus memilih Schema Synchronization dan Full Data Synchronization. Setelah pemeriksaan awal selesai, DTS melakukan sinkronisasi data penuh dari objek yang dipilih dari instans sumber ke klaster tujuan. Ini berfungsi sebagai garis dasar data untuk sinkronisasi data inkremental berikutnya.

      Penting

      Tipe data dikonversi saat data disinkronkan dari MySQL ke ApsaraDB for SelectDB. Jika Anda tidak memilih Schema Synchronization, Anda harus membuat tabel yang menggunakan model Unique atau Duplicate dengan skema yang sesuai di instans tujuan ApsaraDB for SelectDB terlebih dahulu. Untuk informasi selengkapnya, lihat Pemetaan tipe data, Kolom tambahan, dan Model data.

      Processing Mode of Conflicting Tables

      • Precheck and Report Errors: DTS memeriksa tabel dengan nama yang sama di database tujuan. Jika terjadi konflik, DTS melaporkan error selama pemeriksaan awal dan tidak memulai tugas.

        Catatan

        Jika tidak praktis untuk menghapus atau mengganti nama tabel yang konflik, Anda dapat memetakan tabel ke nama yang berbeda. Untuk informasi selengkapnya, lihat Map object names.

      • Ignore Errors and Proceed: Melewati pemeriksaan tabel dengan nama yang sama di database tujuan.

        Peringatan

        Jika Anda memilih Ignore Errors and Proceed, inkonsistensi data dapat terjadi. Misalnya:

        • Jika skema tabel konsisten, catatan tujuan dengan primary key atau unique key yang sama dengan catatan sumber akan ditimpa.

        • Jika skema tabel tidak konsisten, tugas mungkin gagal atau hanya menyinkronkan data sebagian. Lanjutkan dengan hati-hati.

      Capitalization of Object Names in Destination Instance

      Anda dapat mengonfigurasi kebijakan case sensitivity untuk nama objek database, tabel, dan kolom yang disinkronkan ke instans tujuan. Secara default, DTS default policy dipilih. Anda juga dapat memilih untuk menggunakan kebijakan default database sumber dan tujuan. Untuk informasi selengkapnya, lihat Case sensitivity policy for destination object names.

      Source Objects

      Di kotak Source Objects, klik objek yang akan disinkronkan, lalu klik 向右 untuk memindahkannya ke kotak Selected Objects.

      Catatan

      Anda dapat memilih objek di tingkat database atau tabel.

      Selected Objects

      • Untuk mengubah nama objek sinkronisasi di instans tujuan, klik kanan objek di kotak Selected Objects. Untuk informasi selengkapnya, lihat Map object names.

      • Jika Anda memilih Schema Synchronization untuk Synchronization Types, memilih tabel sebagai objek sinkronisasi, dan perlu mengatur jumlah bucket (parameter bucket_count), klik kanan tabel di kotak Selected Objects. Di bagian Parameter Settings, atur Enable Parameter Settings ke Yes, tentukan Value sesuai kebutuhan, lalu klik OK.

      Catatan
      • Untuk memilih operasi SQL inkremental yang akan disinkronkan di tingkat database atau tabel, klik kanan objek di kotak Selected Objects dan pilih operasi SQL yang diinginkan di kotak dialog yang muncul.

      • Untuk memfilter data menggunakan klausa WHERE, klik kanan tabel di kotak Selected Objects dan atur kondisi filter di kotak dialog yang muncul. Untuk informasi selengkapnya, lihat Configure filter conditions.

      • Jika Anda menggunakan fitur pemetaan nama objek, objek lain yang bergantung pada objek yang diganti namanya mungkin gagal disinkronkan.

    2. Klik Next: Advanced Settings untuk mengonfigurasi parameter lanjutan.

      Parameter

      Deskripsi

      Dedicated Cluster for Task Scheduling

      Secara default, DTS menjadwalkan tugas pada klaster bersama, dan Anda tidak perlu memilih klaster. Untuk kinerja yang lebih stabil, Anda dapat membeli klaster khusus untuk menjalankan tugas sinkronisasi DTS. Untuk informasi selengkapnya, lihat What is a DTS dedicated cluster?.

      Retry Time for Failed Connections

      Setelah tugas sinkronisasi dimulai, jika koneksi ke database sumber atau tujuan gagal, DTS melaporkan error dan segera mulai mencoba menghubungkan kembali. Durasi percobaan ulang default adalah 720 menit. Anda juga dapat menentukan durasi kustom dari 10 hingga 1.440 menit. Kami merekomendasikan Anda mengatur durasi minimal 30 menit. Jika DTS berhasil terhubung kembali ke database dalam durasi yang ditentukan, tugas sinkronisasi secara otomatis dilanjutkan. Jika tidak, tugas gagal.

      Catatan
      • Jika Anda memiliki beberapa instans DTS (misalnya, Instans A dan Instans B) yang berbagi sumber atau tujuan yang sama, dan Anda mengatur waktu percobaan ulang jaringan menjadi 30 menit untuk Instans A dan 60 menit untuk Instans B, durasi yang lebih pendek yaitu 30 menit akan digunakan untuk keduanya.

      • Karena DTS menagih berdasarkan waktu proses tugas selama periode percobaan ulang koneksi, kami merekomendasikan Anda menyesuaikan durasi percobaan ulang berdasarkan kebutuhan bisnis atau segera melepas instans DTS setelah instans database sumber dan tujuan dilepas.

      Retry Time for Other Issues

      Setelah tugas sinkronisasi dimulai, jika terjadi masalah non-koneksi lainnya pada database sumber atau tujuan (seperti exception eksekusi DDL atau DML), DTS melaporkan error dan segera mulai melakukan operasi percobaan ulang berkelanjutan. Durasi percobaan ulang default adalah 10 menit. Anda juga dapat menyesuaikan durasi percobaan ulang dalam rentang 1 hingga 1.440 menit. Kami merekomendasikan Anda mengaturnya minimal 10 menit. Jika operasi terkait berhasil dalam durasi percobaan ulang yang ditetapkan, tugas sinkronisasi secara otomatis dilanjutkan. Jika tidak, tugas gagal.

      Penting

      Nilai untuk Retry Time for Other Issues harus lebih kecil daripada nilai untuk Retry Time for Failed Connections.

      Enable Throttling for Full Data Synchronization

      Selama tahap sinkronisasi penuh, DTS mengonsumsi sumber daya baca dan tulis dari database sumber dan tujuan, yang dapat meningkatkan beban database. Untuk mengurangi beban pada database sumber dan tujuan, Anda dapat mengatur batas laju untuk tugas sinkronisasi penuh dengan mengonfigurasi parameter Queries per second (QPS) to the source database, RPS of Full Data Migration, dan Data migration speed for full migration (MB/s).

      Catatan
      • Item konfigurasi ini hanya tersedia ketika Synchronization Types diatur ke Full Data Synchronization.

      • Anda juga dapat menyesuaikan laju sinkronisasi penuh setelah instans sinkronisasi berjalan.

      Enable Throttling for Incremental Data Synchronization

      Anda juga dapat mengatur batas laju untuk tugas sinkronisasi inkremental. Untuk mengurangi tekanan pada database tujuan, atur RPS of Incremental Data Synchronization dan Data synchronization speed for incremental synchronization (MB/s).

      Environment Tag

      Anda dapat memilih environment tag untuk mengidentifikasi instans berdasarkan kebutuhan Anda. Contoh ini tidak memerlukan tag.

      Whether to delete SQL operations on heartbeat tables of forward and reverse tasks

      Pilih apakah akan menulis informasi SQL heartbeat ke database sumber saat instans DTS berjalan.

      • Yes: Informasi SQL heartbeat tidak ditulis ke database sumber. Hal ini dapat menyebabkan instans DTS melaporkan delay.

      • No: Menulis informasi SQL heartbeat ke database sumber. Hal ini dapat mengganggu fitur seperti backup fisik dan kloning database sumber.

      Configure ETL

      Pilih apakah akan mengaktifkan fitur extract, transform, and load (ETL). Untuk informasi selengkapnya, lihat What is ETL? Nilai yang valid:

      Monitoring and Alerting

      Tentukan apakah akan mengonfigurasi peringatan. Jika sinkronisasi gagal atau latensi melebihi ambang batas yang ditentukan, notifikasi akan dikirim ke kontak peringatan.

    3. Opsional: Setelah menyelesaikan konfigurasi di atas, klik Next: Configure Database and Table Fields untuk mengatur Primary Key Column, Distribution Key, dan Engine untuk tabel tujuan.

      Catatan
      • Langkah ini hanya tersedia jika Anda memilih Schema Synchronization untuk Synchronization Types saat mengonfigurasi objek sinkronisasi. Anda dapat mengatur Definition Status ke All untuk memodifikasi pengaturan.

      • Anda dapat memilih beberapa kolom untuk membentuk Primary Key Column komposit. Anda juga harus memilih satu atau beberapa kolom dari Primary Key Column sebagai Distribution Key.

      • Untuk tabel tanpa primary key atau unique constraint, Anda harus memilih duplicate untuk Engine. Jika tidak, tugas mungkin gagal atau terjadi kehilangan data.

  6. Simpan tugas dan jalankan pemeriksaan awal.

    • Untuk melihat parameter API untuk mengonfigurasi instans ini, arahkan kursor ke tombol Next: Save Task Settings and Precheck dan klik Preview OpenAPI parameters di balon informasi.

    • Jika Anda telah selesai melihat parameter API, klik Next: Save Task Settings and Precheck di bagian bawah halaman.

    Catatan
    • Sebelum pekerjaan sinkronisasi dimulai, DTS menjalankan pemeriksaan awal. Pekerjaan hanya dapat dimulai setelah semua item pemeriksaan awal lolos.

    • Jika pemeriksaan awal gagal, klik View Details untuk item yang gagal. Perbaiki masalah sesuai petunjuk, lalu jalankan pemeriksaan awal lagi.

    • Jika pemeriksaan awal mengembalikan peringatan:

      • Jika item pemeriksaan gagal dan tidak dapat diabaikan, klik View Details di sebelah item tersebut. Ikuti petunjuk untuk memperbaiki masalah, lalu jalankan pemeriksaan awal lagi.

      • Untuk item pemeriksaan yang dapat diabaikan, Anda dapat mengklik Confirm Alert Details, Ignore, OK, dan Precheck Again secara berurutan untuk melewati peringatan dan menjalankan ulang pemeriksaan awal. Jika Anda memilih untuk mengabaikan item peringatan, hal ini dapat menyebabkan masalah seperti inkonsistensi data dan menimbulkan risiko bagi bisnis Anda.

  7. Beli instans.

    1. Ketika Success Rate mencapai 100%, klik Next: Purchase Instance.

    2. Di halaman Purchase, pilih metode penagihan dan spesifikasi link untuk instans sinkronisasi data. Tabel berikut menjelaskan parameter-parameter ini secara detail.

      Kategori

      Parameter

      Deskripsi

      New Instance Class

      Billing Method

      • Subscription: Anda membayar saat membuat instans. Ini cocok untuk kebutuhan jangka panjang dan lebih hemat biaya dibandingkan pay-as-you-go. Semakin lama durasi langganan, semakin tinggi diskonnya.

      • Pay-as-you-go: Anda dikenai biaya per jam. Ini cocok untuk kebutuhan jangka pendek. Anda dapat melepas instans segera setelah digunakan untuk menghemat biaya.

      Resource Group Configuration

      Kelompok sumber daya tempat instans berada. Default-nya adalah kelompok sumber daya default. Untuk informasi selengkapnya, lihat What is Resource Management?.

      Link Specification

      DTS menyediakan spesifikasi sinkronisasi dengan tingkat kinerja berbeda. Spesifikasi link sinkronisasi memengaruhi laju sinkronisasi. Anda dapat memilih spesifikasi berdasarkan skenario bisnis Anda. Untuk informasi selengkapnya, lihat Data synchronization link specifications.

      Subscription Duration

      Dalam mode subscription, pilih durasi dan jumlah untuk instans langganan. Anda dapat memilih langganan bulanan dari 1 hingga 9 bulan, atau langganan tahunan selama 1, 2, 3, atau 5 tahun.

      Catatan

      Opsi ini hanya tersedia ketika metode penagihan adalah Subscription.

    3. Setelah menyelesaikan konfigurasi, baca dan pilih Data Transmission Service (Pay-as-you-go) Service Terms.

    4. Klik Buy and Start. Di kotak dialog OK, klik OK.

      Anda dapat melihat progres tugas di halaman Data Synchronization.

Pemetaan tipe data

Kategori

Tipe MySQL

Tipe SelectDB

NUMERIC

TINYINT

TINYINT

TINYINT UNSIGNED

SMALLINT

SMALLINT

SMALLINT

SMALLINT UNSIGNED

INT

MEDIUMINT

INT

MEDIUMINT UNSIGNED

BIGINT

INT

INT

INT UNSIGNED

BIGINT

BIGINT

BIGINT

BIGINT UNSIGNED

LARGEINT

BIT(M)

INT

DECIMAL

DECIMAL

Catatan

ZEROFILL tidak didukung.

NUMERIC

Decimal

FLOAT

FLOAT

DOUBLE

DOUBLE

  • BOOL

  • BOOLEAN

BOOLEAN

DATE AND TIME

DATE

DATEV2

DATETIME[(fsp)]

DATETIMEV2

TIMESTAMP[(fsp)]

DATETIMEV2

TIME[(fsp)]

VARCHAR

YEAR[(4)]

INT

STRING

  • CHAR

  • VARCHAR

VARCHAR

Penting

Untuk mencegah kehilangan data, data CHAR dan VARCHAR(n) dikonversi ke VARCHAR(4*n) saat disinkronkan ke instans tujuan ApsaraDB for SelectDB.

  • Jika panjang data tidak ditentukan, default-nya adalah VARCHAR(65533).

  • Jika panjang data melebihi 65533, data dikonversi ke STRING.

  • BINARY

  • VARBINARY

STRING

  • TINYTEXT

  • TEXT

  • MEDIUMTEXT

  • LONGTEXT

STRING

  • TINYBLOB

  • BLOB

  • MEDIUMBLOB

  • LONGBLOB

STRING

ENUM

STRING

SET

STRING

JSON

STRING

Kolom tambahan

Catatan

Tabel ini mencantumkan kolom tambahan yang secara otomatis ditambahkan DTS atau yang harus Anda tambahkan secara manual ke tabel model duplicate tujuan.

Parameter

Tipe

Default

Deskripsi

_is_deleted

Int

0

Menunjukkan apakah baris tersebut dihapus.

  • Insert: Nilainya 0.

  • Update: Nilainya 0.

  • Delete: Nilainya 1.

_version

Bigint

0

  • Untuk data dari sinkronisasi penuh, nilainya 0.

  • Untuk data dari sinkronisasi inkremental, nilainya adalah timestamp commit (dalam detik) perubahan dari log biner database sumber.

_record_id

Bigint

0

  • Untuk data dari sinkronisasi penuh, nilainya 0.

  • Untuk data dari sinkronisasi inkremental, nilainya adalah ID catatan dari log inkremental. ID ini secara unik mengidentifikasi entri log.

    Catatan

    ID bersifat unik dan meningkat secara monoton.