All Products
Search
Document Center

Data Transmission Service:Migrasi data dari klaster PolarDB for MySQL ke proyek MaxCompute

Last Updated:Sep 21, 2026

Gunakan Data Transmission Service (DTS) untuk memigrasikan data dari klaster PolarDB for MySQL ke proyek MaxCompute. DTS mendukung migrasi skema, migrasi data penuh, dan migrasi data inkremental—mencakup data historis serta perubahan yang sedang berlangsung.

Cara kerja

DTS menggunakan pipeline tiga tahap untuk memindahkan data dari PolarDB for MySQL ke MaxCompute:

  1. Schema migration: DTS membaca skema tabel sumber dan membuat tabel yang sesuai di MaxCompute dengan menambahkan akhiran _base pada setiap nama tabel. Misalnya, tabel customer menjadi customer_base di MaxCompute.

  2. Full data migration: DTS menyalin semua baris yang ada dari setiap tabel sumber ke tabel _base yang sesuai di MaxCompute. Tabel-tabel ini disebut tabel garis dasar penuh dan berfungsi sebagai titik awal untuk sinkronisasi inkremental.

  3. Incremental data migration: DTS membuat tabel _log terpisah untuk setiap tabel yang dimigrasikan (misalnya, customer_log) dan mengalirkan operasi INSERT, UPDATE, dan DELETE yang sedang berlangsung dari log biner sumber ke tabel-tabel tersebut secara real time.

Prasyarat

Sebelum memulai, pastikan Anda telah memiliki:

Alih-alih menggunakan pasangan AccessKey akun utama, buat Pengguna RAM dan tetapkan sebagai super administrator untuk proyek MaxCompute.

Batasan

Kondisi yang menghambat tugas (perbaiki sebelum memulai)

Kondisi-kondisi berikut menyebabkan tugas migrasi gagal:

  • Server tempat database sumber di-deploy harus memiliki bandwidth keluar yang mencukupi. Jika tidak, kecepatan migrasi data akan menurun.

  • Tabel yang akan dimigrasikan harus memiliki PRIMARY KEY atau kendala UNIK dengan semua bidang unik. Tanpa ini, tujuan mungkin berisi catatan duplikat.

  • Jika Anda memilih tabel sebagai objek migrasi dan perlu mengganti nama tabel atau kolom, satu tugas mendukung hingga 1.000 tabel. Tugas dengan lebih dari 1.000 tabel dalam mode ini akan mengembalikan kesalahan permintaan. Konfigurasikan beberapa tugas atau lakukan migrasi pada tingkat database saja.

  • Untuk migrasi data inkremental, binary logging harus diaktifkan dan parameter loose_polar_log_bin harus diatur ke on. Jika binary logging tidak diaktifkan, Pemeriksaan Awal gagal dan tugas tidak dapat dimulai. Lihat Aktifkan binary logging dan Ubah parameter.

  • Jangan mengeksekusi pernyataan DDL untuk mengubah skema database atau tabel selama migrasi skema atau migrasi data penuh. Tugas migrasi akan gagal jika skema berubah di tengah proses.

  • Jangan gunakan alat seperti pt-online-schema-change untuk operasi DDL online pada objek yang sedang dimigrasikan. Tugas migrasi akan gagal.

Mengaktifkan binary logging pada klaster PolarDB for MySQL akan dikenai biaya penyimpanan untuk file log biner.

Risiko integritas data (tinjau sebelum memulai)

Kondisi-kondisi berikut dapat menyebabkan ketidakkonsistenan atau kehilangan data:

  • Log biner harus dipertahankan minimal selama 3 hari; pertahankan selama 7 hari untuk keamanan. Jika DTS tidak dapat membaca log biner, tugas akan gagal. Dalam kasus luar biasa, ketidakkonsistenan atau kehilangan data dapat terjadi. Mempertahankan log kurang dari durasi yang disyaratkan berarti Perjanjian Tingkat Layanan (SLA) untuk DTS mungkin tidak berlaku. Lihat Ubah periode retensi.

  • Jangan menulis data ke database sumber selama migrasi hanya penuh (migrasi skema + migrasi data penuh tanpa inkremental). Menulis ke sumber selama fase ini menyebabkan ketidakkonsistenan data. Untuk menulis ke sumber secara aman selama migrasi, sertakan migrasi data inkremental.

  • Jangan menulis data dari sumber lain ke proyek MaxCompute tujuan selama migrasi. Penulisan eksternal menyebabkan ketidakkonsistenan data.

  • MaxCompute tidak mendukung kendala kunci primer. Jika terjadi kesalahan jaringan, DTS mungkin menulis catatan duplikat ke proyek MaxCompute.

  • DTS mencoba mengulang tugas yang gagal hingga 7 hari. Sebelum beralih beban kerja ke tujuan, hentikan atau lepas tugas yang gagal. Atau, cabut izin tulis dari akun DTS di tujuan. Jika tidak, data sumber akan menimpa data tujuan saat tugas yang gagal dilanjutkan.

Batasan operasional

  • DTS tidak memigrasikan node read-only dari klaster PolarDB for MySQL sumber.

  • DTS tidak memigrasikan tabel eksternal Object Storage Service (OSS) dari klaster PolarDB for MySQL sumber.

  • DTS tidak memigrasikan kunci asing. Operasi cascade dan delete yang bergantung pada kunci asing tidak direplikasi ke tujuan.

  • Lakukan migrasi data selama jam sepi. Migrasi data penuh menggunakan sumber daya baca dan tulis di sumber maupun tujuan, yang meningkatkan beban pada kedua server database.

  • Setelah migrasi data penuh, ruang tabel tujuan lebih besar daripada sumber karena operasi INSERT konkuren menyebabkan fragmentasi tabel.

  • Jika instans DTS gagal, tim dukungan DTS berusaha memulihkannya dalam waktu 8 jam. Pemulihan mungkin melibatkan restart instans atau penyesuaian parameter instans DTS (bukan parameter database). Untuk parameter yang mungkin diubah, lihat Ubah parameter instans.

  • Migrasi data bertipe VECTOR tidak didukung.

Penagihan

Jenis migrasi

Biaya konfigurasi tugas

Biaya lalu lintas internet

Migrasi skema dan migrasi data penuh

Gratis

Gratis, kecuali Access Method diatur ke Public IP Address. Lihat Ikhtisar penagihan.

Migrasi data inkremental

Dikenai biaya. Lihat Ikhtisar penagihan.

—

Operasi SQL yang didukung untuk migrasi inkremental

Jenis operasi

Pernyataan SQL

DML

INSERT, UPDATE, DELETE

DDL

ADD COLUMN

Operasi ADD COLUMN yang mencakup kolom atribut tidak dapat dimigrasikan.

Izin akun database yang diperlukan

Database

Izin yang diperlukan

Cara memberikan

PolarDB for MySQL

Izin baca pada objek yang akan dimigrasikan

Buat dan kelola akun database dan Kelola password akun database

Buat tugas migrasi

Langkah 1: Buka halaman Migrasi Data

Gunakan Konsol DTS atau Konsol DMS.

Konsol DTS

  1. Login ke Konsol DTS.Konsol DTS

  2. Di panel navigasi kiri, klik Data Migration.

  3. Di pojok kiri atas, pilih wilayah tempat instans migrasi akan berada.

Konsol DMS

Catatan

Tata letak Konsol DMS bervariasi tergantung mode. Lihat Mode simple dan Sesuaikan tata letak dan gaya Konsol DMS.

  1. Login ke Konsol DMS.Konsol DMS

  2. Di bilah navigasi atas, arahkan pointer ke Data + AI > DTS (DTS) > Data Migration.

  3. Dari daftar drop-down di samping Data Migration Tasks, pilih wilayah tempat instans migrasi akan berada.

Langkah 2: Konfigurasi database sumber dan tujuan

  1. Klik Create Task.

  2. Konfigurasikan parameter berikut.

Umum

Parameter

Deskripsi

Task Name

Nama untuk tugas DTS. DTS menghasilkan nama default. Tentukan nama deskriptif agar mudah mengidentifikasi tugas. Nama tugas tidak perlu unik.

Database sumber

Parameter

Deskripsi

Select Existing Connection

Jika database sumber sudah terdaftar di DTS, pilih dari daftar drop-down. DTS akan mengisi kolom lainnya secara otomatis. Jika tidak, konfigurasikan kolom di bawah ini. Di Konsol DMS, pilih dari Select a DMS database instance.

Database Type

Pilih PolarDB for MySQL.

Access Method

Pilih Alibaba Cloud Instance.

Instance Region

Wilayah tempat klaster PolarDB for MySQL sumber berada.

Replicate Data Across Alibaba Cloud Accounts

Pilih No saat melakukan migrasi dalam Akun Alibaba Cloud yang sama.

PolarDB Cluster ID

ID klaster PolarDB for MySQL sumber.

Database Account

Akun database untuk klaster sumber. Lihat Izin akun database yang diperlukan.

Database Password

Password untuk akun database.

Encryption

Apakah koneksi ke database sumber dienkripsi. Lihat Konfigurasi enkripsi SSL.

Database tujuan

Parameter

Deskripsi

Select Existing Connection

Jika proyek MaxCompute tujuan sudah terdaftar di DTS, pilih dari daftar drop-down. Jika tidak, konfigurasikan kolom di bawah ini.

Database Type

Pilih MaxCompute.

Access Method

Pilih Alibaba Cloud Instance.

Instance Region

Wilayah tempat proyek MaxCompute tujuan berada.

Project

Nama proyek MaxCompute tujuan.

AccessKey ID of Alibaba Cloud Account

ID AccessKey dari pasangan Kunci Akses yang telah Anda siapkan pada prasyarat.

AccessKey Secret of Alibaba Cloud Account

Secret AccessKey dari pasangan Kunci Akses.

  1. Klik Test Connectivity and Proceed.

Pastikan blok CIDR server DTS telah ditambahkan ke pengaturan keamanan database sumber dan tujuan. DTS dapat menambahkannya secara otomatis, atau Anda dapat menambahkannya secara manual. Lihat Tambahkan alamat IP server DTS ke daftar putih.
  1. Klik OK untuk memberikan izin DTS pada proyek MaxCompute. Lalu klik Test Connectivity and Proceed.

Langkah 3: Konfigurasi objek migrasi

  1. Di halaman Configure Objects, atur parameter berikut.

Migration types

Parameter

Deskripsi

Migration Types

Pilih jenis migrasi berdasarkan kasus penggunaan Anda: <br>- Schema Migration + Full Data Migration: hanya memigrasikan data historis. Tugas selesai dan berhenti secara otomatis.<br>- Schema Migration + Full Data Migration + Incremental Data Migration: memigrasikan data historis dan mereplikasi perubahan yang sedang berlangsung secara real time. Tugas berjalan terus-menerus hingga Anda menghentikannya.

Jika Anda melewatkan Schema Migration, buat database dan tabel tujuan secara manual sebelum memulai tugas, dan aktifkan pemetaan nama objek di Selected Objects.
Jika Anda melewatkan Incremental Data Migration, jangan menulis ke database sumber selama migrasi untuk menghindari ketidakkonsistenan data.

Konfigurasi tabel

Parameter

Deskripsi

Naming Rules of Additional Columns

Setelah migrasi, DTS menambahkan kolom tambahan ke tabel tujuan. Jika nama kolom tambahan bentrok dengan kolom yang sudah ada, tugas akan gagal. Pilih New Rule atau Previous Rule berdasarkan pengaturan Anda. Periksa kemungkinan bentrok nama sebelum memilih. Lihat Aturan penamaan untuk kolom tambahan.

Partition Definition of Incremental Data Table

Pilih nama partisi untuk tabel data inkremental. Lihat Partisi.

Processing Mode of Conflicting Tables

Cara DTS menangani tabel di tujuan yang memiliki nama sama dengan tabel di sumber:<br>- Precheck and Report Errors: tugas gagal dalam Pemeriksaan Awal jika ditemukan bentrok nama. Untuk menyelesaikan bentrok tanpa mengganti nama tabel tujuan, gunakan pemetaan nama objek. Lihat Pemetaan nama objek.<br>- Ignore Errors and Proceed: melewati pemeriksaan bentrok. Jika skema sumber dan tujuan cocok dan kunci primer bentrok, migrasi penuh melewati catatan yang bentrok (catatan tujuan dipertahankan), sedangkan migrasi inkremental menimpanya. Jika skema berbeda, hanya kolom tertentu yang dimigrasikan atau tugas gagal. Gunakan dengan hati-hati.

Capitalization of Object Names in Destination Instance

Kebijakan kapitalisasi untuk nama database, tabel, dan kolom di tujuan. Default-nya adalah DTS default policy. Lihat Tentukan kapitalisasi nama objek di instans tujuan.

Pemilihan objek

Parameter

Deskripsi

Source Objects

Pilih objek yang akan dimigrasikan. Klik ikon 向右小箭头 untuk memindahkannya ke Selected Objects. Tabel adalah satu-satunya jenis objek yang didukung untuk jalur migrasi ini.

Selected Objects

Untuk mengganti nama satu objek di tujuan, klik kanan objek tersebut di Selected Objects. Lihat Pemetaan nama satu objek. Untuk mengganti nama beberapa objek sekaligus, klik Batch Edit. Lihat Pemetaan nama beberapa objek sekaligus. Untuk memfilter baris dalam tabel, klik kanan tabel tersebut dan konfigurasikan kondisi filter. Lihat Tentukan kondisi filter.

Catatan

Mengganti nama objek dengan pemetaan nama objek dapat menyebabkan objek dependen gagal dimigrasikan.

  1. Klik Next: Advanced Settings.

Langkah 4: Konfigurasi pengaturan lanjutan

Parameter

Deskripsi

Dedicated Cluster for Task Scheduling

Secara default, DTS menjadwalkan tugas ke kluster bersama. Untuk stabilitas lebih tinggi, beli klaster khusus. Lihat Apa itu klaster khusus DTS.

Retry Time for Failed Connections

Berapa lama DTS mencoba ulang saat database sumber atau tujuan tidak dapat dijangkau. Nilai valid: 10–1.440 menit. Default: 720 menit. Kami menyarankan Anda mengatur parameter ini ke nilai lebih dari 30. Jika DTS terhubung kembali dalam jendela percobaan ulang, tugas dilanjutkan. Jika tidak, tugas gagal.

Catatan

Saat beberapa tugas berbagi database sumber atau tujuan, waktu percobaan ulang yang paling baru diatur akan berlaku. DTS menagih instans selama percobaan ulang.

Retry Time for Other Issues

Berapa lama DTS mencoba ulang setelah kegagalan DDL atau DML. Nilai valid: 1–1.440 menit. Default: 10 menit. Kami menyarankan Anda mengatur parameter ini ke nilai lebih dari 10. Harus lebih kecil dari Retry Time for Failed Connections.

Enable Throttling for Full Data Migration

Membatasi beban baca dan tulis pada sumber dan tujuan selama migrasi data penuh. Konfigurasikan Queries per second (QPS) to the source database, RPS of Full Data Migration (baris per detik), dan Data migration speed for full migration (MB/s). Hanya tersedia saat Full Data Migration dipilih.

Enable Throttling for Incremental Data Migration

Membatasi beban selama migrasi data inkremental. Konfigurasikan RPS of Incremental Data Migration dan Data migration speed for incremental migration (MB/s). Hanya tersedia saat Incremental Data Migration dipilih.

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

Mengontrol apakah DTS menulis operasi SQL ke tabel heartbeat di database sumber saat berjalan. Yesalert notification settings: tidak menulis ke tabel heartbeat (indikator latensi mungkin muncul di instans). No: menulis ke tabel heartbeat (dapat memengaruhi backup fisik atau kloning sumber).

Environment Tag

Tag opsional untuk mengidentifikasi instans DTS berdasarkan lingkungan (misalnya, produksi atau uji coba).

Configure ETL

Apakah akan mengaktifkan fitur extract, transform, and load (ETL). Yes: konfigurasikan pernyataan pemrosesan data di editor kode. Lihat Konfigurasi ETL dalam tugas migrasi data atau sinkronisasi data. No: lewati konfigurasi ETL. Lihat Apa itu ETL?

Monitoring and Alerting

Apakah akan mengonfigurasi peringatan untuk tugas migrasi. Yes: atur ambang batas peringatan dan kontak notifikasi. Peringatan muncul jika tugas gagal atau latensi migrasi melebihi ambang batas. Lihat Konfigurasi pemantauan dan peringatan saat membuat tugas DTS. No: lewati peringatan.

Langkah 5: Jalankan Pemeriksaan Awal

  1. Untuk melihat pratinjau parameter API sebelum menyimpan, arahkan kursor ke Next: Save Task Settings and Precheck dan klik Preview OpenAPI parameters.

  2. Klik Next: Save Task Settings and Precheck.

DTS menjalankan Pemeriksaan Awal sebelum tugas migrasi dapat dimulai. Tugas hanya dimulai setelah Pemeriksaan Awal berhasil.

  • Jika suatu item pemeriksaan gagal, klik View Details di sebelahnya, perbaiki masalahnya, lalu klik Precheck Again.

  • Jika peringatan muncul pada suatu item pemeriksaan dan item tersebut dapat diabaikan dengan aman, klik Confirm Alert Details, lalu klik Ignore di kotak dialog dan klik OK. Lalu klik Precheck Again. Mengabaikan peringatan dapat menyebabkan ketidakkonsistenan data.

Langkah 6: Beli instans dan mulai tugas

  1. Tunggu hingga Success Rate mencapai 100%, lalu klik Next: Purchase Instance.

  2. Di halaman Purchase Instance, konfigurasikan parameter berikut.

Parameter

Deskripsi

Resource Group

Kelompok sumber daya untuk instans migrasi. Default-nya adalah kelompok sumber daya default. Lihat Apa itu Manajemen Resource?

Instance Class

Kelas kecepatan migrasi. Pilih berdasarkan kebutuhan throughput Anda. Lihat Kelas instans untuk instans migrasi data.

  1. Baca dan terima Data Transmission Service (Pay-as-you-go) Service Terms dengan memilih kotak centang.

  2. Klik Buy and Start, lalu klik OK di dialog konfirmasi.

Tugas muncul di halaman Data Migration.

  • Tugas tanpa migrasi inkremental berhenti secara otomatis saat migrasi penuh selesai. Statusnya menunjukkan Completed.

  • Tugas dengan migrasi inkremental berjalan terus-menerus. Statusnya menunjukkan Running. Hentikan tugas secara manual saat Anda siap melakukan cut over.

Struktur tabel data inkremental

Jalankan set odps.sql.allow.fullscan=true; di MaxCompute untuk mengizinkan pemindaian tabel penuh pada proyek sebelum mengkueri tabel data inkremental.

DTS menulis perubahan inkremental dari sumber ke tabel _log di MaxCompute (misalnya, customer_log). Setiap baris di tabel data inkremental merepresentasikan satu event perubahan dan mencakup kolom data dari tabel sumber serta kolom metadata berikut.

Bidang

Deskripsi

record_id

Pengidentifikasi unik untuk entri log inkremental. ID bertambah otomatis untuk setiap entri baru. Untuk operasi UPDATE, DTS menghasilkan dua entri (nilai sebelum dan sesudah update) dengan record_id yang sama.

operation_flag

Jenis perubahan: I (INSERT), D (DELETE), atau U (UPDATE).

utc_timestamp

Timestamp operasi dalam UTC, diambil dari log biner.

before_flag

Apakah baris berisi nilai sebelum update: Y atau N.

after_flag

Apakah baris berisi nilai sesudah update: Y atau N.