Dokumen ini menjelaskan cara memigrasi data dari instance ApsaraDB RDS for MySQL ke instance ApsaraMQ for Kafka menggunakan Data Transmission Service (DTS).
Prasyarat
Instance ApsaraDB RDS for MySQL sumber dan instance ApsaraMQ for Kafka tujuan telah dibuat.
CatatanUntuk informasi lebih lanjut tentang cara membuat instance ApsaraDB RDS for MySQL, lihat Buat Instance ApsaraDB RDS for MySQL.
Untuk informasi tentang versi yang didukung dari database sumber dan tujuan, lihat Ikhtisar Skenario Migrasi Data.
Ruang penyimpanan yang tersedia di instance ApsaraMQ for Kafka tujuan lebih besar daripada total ukuran data di instance ApsaraDB RDS for MySQL sumber.
Di dalam instance ApsaraMQ for Kafka tujuan, sebuah topik telah dibuat untuk menerima data yang dimigrasikan. Untuk informasi lebih lanjut, lihat bagian "Langkah 1: Buat Topik" dari topik Langkah 3: Buat Sumber Daya.
Batasan
DTS tidak memigrasikan kunci asing di database sumber ke database tujuan. Oleh karena itu, operasi kaskade dan hapus dari database sumber tidak dimigrasikan ke database tujuan.
Kategori | Deskripsi |
Batasan pada database sumber |
|
Batasan lainnya |
|
Kasus khusus |
|
Aturan penagihan
Jenis Migrasi | Biaya Konfigurasi Tugas | Biaya Lalu Lintas Internet |
Migrasi Skema dan Migrasi Data Penuh | Gratis. | Dikenakan biaya hanya ketika data dimigrasikan dari Alibaba Cloud melalui Internet. Untuk informasi lebih lanjut, lihat Ikhtisar Penagihan. |
Migrasi Data Tambahan | Dikenakan biaya. Untuk informasi lebih lanjut, lihat Ikhtisar Penagihan. |
Jenis Migrasi
Migrasi Skema
DTS memigrasikan skema objek yang dipilih dari database sumber ke database tujuan.
Migrasi Data Penuh
DTS memigrasikan data historis objek yang diperlukan dari database sumber ke database tujuan.
Migrasi Data Tambahan
Setelah migrasi data penuh selesai, DTS memigrasikan data tambahan dari database sumber ke database tujuan. Migrasi data tambahan memastikan data dimigrasikan dengan lancar tanpa mengganggu layanan aplikasi yang dikelola sendiri selama proses migrasi.
Operasi SQL yang dapat dimigrasikan secara tambahan
Jenis Operasi | Pernyataan SQL |
DML | INSERT, UPDATE, dan DELETE |
DDL |
|
Izin yang diperlukan untuk akun database
Instance | Migrasi Skema | Migrasi Data Penuh | Migrasi Data Tambahan |
Instance ApsaraDB RDS for MySQL sumber | Hak baca pada objek yang akan dimigrasi. | ||
Prosedur
Gunakan salah satu metode berikut untuk pergi ke halaman Migrasi Data dan pilih wilayah tempat instance migrasi data berada.
Konsol DTS
Masuk ke Konsol DTS.
Di bilah navigasi kiri, klik Data Migration.
Di sudut kiri atas halaman, pilih wilayah tempat instance migrasi data berada.
Konsol DMS
CatatanOperasi sebenarnya dapat bervariasi berdasarkan mode dan tata letak Konsol DMS. Untuk informasi lebih lanjut, lihat Simple Mode dan Kustomisasi Tata Letak dan Gaya Konsol DMS.
Masuk ke Konsol DMS.
Di bilah navigasi atas, gerakkan pointer ke atas .
Dari daftar drop-down di sebelah kanan Data Migration Tasks, pilih wilayah tempat instance sinkronisasi data berada.
Klik Create Task untuk pergi ke halaman konfigurasi tugas.
Konfigurasikan database sumber dan tujuan. Tabel berikut menjelaskan parameter.
PeringatanSetelah Anda mengonfigurasi database sumber dan tujuan, kami sarankan Anda membaca Limits yang ditampilkan di bagian atas halaman. Jika tidak, tugas mungkin gagal atau ketidaksesuaian data mungkin terjadi.
Bagian
Parameter
Deskripsi
Tidak Ada
Task Name
Nama tugas DTS. DTS secara otomatis menghasilkan nama tugas. Kami sarankan Anda menentukan nama deskriptif yang memudahkan identifikasi tugas. Anda tidak perlu menentukan nama tugas yang unik.
Source Database
Select Existing Connection
Jika Anda menggunakan instance database yang terdaftar dengan DTS, pilih instance dari daftar drop-down. DTS secara otomatis mengisi parameter database berikut untuk instance tersebut. Untuk informasi lebih lanjut, lihat Kelola koneksi database.
CatatanDi Konsol DMS, Anda dapat memilih instance database dari daftar drop-down Select a DMS database instance.
Jika Anda gagal mendaftarkan instance dengan DTS, atau Anda tidak perlu menggunakan instance yang terdaftar dengan DTS, Anda harus mengonfigurasi informasi database berikut.
Database Type
Jenis database sumber. Pilih MySQL.
Connection Type
Metode akses database sumber. Pilih Alibaba Cloud Instance.
Instance Region
Wilayah tempat instance ApsaraDB RDS for MySQL sumber berada.
Cross-account
Menentukan apakah akan memigrasi data di antara akun Alibaba Cloud. Dalam contoh ini, No dipilih.
RDS Instance ID
ID instance ApsaraDB RDS for MySQL sumber.
Database Account
Akun database dari instance ApsaraDB RDS for MySQL sumber. Akun tersebut harus memiliki izin baca pada objek yang akan dimigrasi.
Database Password
Kata sandi yang digunakan untuk mengakses database.
Connection Method
Menentukan apakah akan mengenkripsi koneksi ke database. Anda dapat memilih Non-encrypted atau SSL-encrypted berdasarkan kebutuhan bisnis Anda. Jika Anda ingin menyetel parameter ini ke SSL-encrypted, Anda harus mengaktifkan enkripsi SSL untuk instance ApsaraDB RDS for MySQL sebelum mengonfigurasi tugas DTS. Untuk informasi lebih lanjut, lihat Gunakan sertifikat cloud untuk mengaktifkan enkripsi SSL.
Destination Database
Select Existing Connection
Jika Anda menggunakan instance database yang terdaftar dengan DTS, pilih instance dari daftar drop-down. DTS secara otomatis mengisi parameter database berikut untuk instance tersebut. Untuk informasi lebih lanjut, lihat Kelola koneksi database.
CatatanDi Konsol DMS, Anda dapat memilih instance database dari daftar drop-down Select a DMS database instance.
Jika Anda gagal mendaftarkan instance dengan DTS, atau Anda tidak perlu menggunakan instance yang terdaftar dengan DTS, Anda harus mengonfigurasi informasi database berikut.
Database Type
Jenis database tujuan. Pilih Kafka.
Connection Type
Metode akses database tujuan. Pilih Alibaba Cloud Instance.
Instance Region
Wilayah tempat instance ApsaraMQ for Kafka tujuan berada.
Kafka Instance ID
ID instance ApsaraMQ for Kafka tujuan.
Connection Method
Menentukan apakah akan mengenkripsi koneksi ke instance tujuan. Pilih Non-encrypted atau SCRAM-SHA-256 berdasarkan kebutuhan bisnis dan keamanan Anda.
Topic
Topik yang digunakan untuk menerima data yang dimigrasi. Pilih topik dari daftar drop-down.
Topic That Stores DDL Information
Topik yang digunakan untuk menyimpan informasi DDL. Pilih topik dari daftar drop-down. Jika Anda tidak mengonfigurasi parameter ini, informasi DDL disimpan di topik yang ditentukan oleh parameter Topic.
Use Kafka Schema Registry
Menentukan apakah akan menggunakan Kafka Schema Registry. Kafka Schema Registry menyediakan lapisan layanan untuk metadata Anda. Ini menyediakan API RESTful untuk menyimpan dan mengambil skema Avro Anda. Nilai valid:
No
Yes: Jika Anda memilih Ya untuk parameter ini, Anda harus memasukkan URL atau alamat IP yang terdaftar di Kafka Schema Registry untuk skema Avro Anda.
Di bagian bawah halaman, klik Test Connectivity and Proceed.
CatatanPastikan blok CIDR server DTS dapat ditambahkan secara otomatis atau manual ke pengaturan keamanan database sumber dan tujuan untuk mengizinkan akses dari server DTS. Untuk informasi lebih lanjut, lihat Tambahkan Blok CIDR Server DTS.
Jika database sumber atau tujuan adalah database yang dikelola sendiri dan Access Method-nya tidak diatur ke Alibaba Cloud Instance, klik Test Connectivity di kotak dialog CIDR Blocks of DTS Servers.
Konfigurasikan objek yang akan dimigrasikan.
Di halaman Configure Objects, konfigurasikan objek yang ingin Anda migrasikan.
Parameter
Deskripsi
Migration Types
Untuk hanya melakukan migrasi data penuh, pilih Schema Migration dan Full Data Migration.
Untuk memastikan kontinuitas layanan selama migrasi data, pilih Schema Migration, Full Data Migration, dan Incremental Data Migration.
CatatanSchema migration tidak didukung saat database tujuan adalah instance ApsaraMQ for Kafka.
Jika Anda tidak memilih Incremental Data Migration, kami sarankan Anda tidak menulis data ke database sumber selama migrasi data. Hal ini memastikan konsistensi data antara database sumber dan tujuan.
Processing Mode of Conflicting Tables
Precheck and Report Errors: Memeriksa apakah database tujuan berisi tabel yang menggunakan nama yang sama dengan tabel di database sumber. Jika database sumber dan tujuan tidak berisi tabel dengan nama identik, pemeriksaan awal berhasil dilewati. Jika tidak, kesalahan akan dikembalikan selama pemeriksaan awal dan tugas migrasi data tidak dapat dimulai.
CatatanJika database sumber dan tujuan berisi tabel dengan nama identik dan tabel di database tujuan tidak dapat dihapus atau diganti namanya, Anda dapat menggunakan fitur pemetaan nama objek untuk mengganti nama tabel yang dimigrasikan ke database tujuan. Untuk informasi lebih lanjut, lihat Pemetaan Nama Objek.
Ignore Errors and Proceed: Melewati pemeriksaan awal untuk nama tabel identik di database sumber dan tujuan.
PeringatanJika Anda memilih Ignore Errors and Proceed, ketidaksesuaian data mungkin terjadi dan bisnis Anda mungkin terpapar risiko potensial berikut:
Jika database sumber dan tujuan memiliki skema yang sama, dan catatan data memiliki kunci utama yang sama dengan catatan data yang ada di database tujuan, skenario berikut mungkin terjadi:
Selama migrasi data penuh, DTS tidak memigrasikan catatan data ke database tujuan. Catatan data yang ada di database tujuan dipertahankan.
Selama migrasi data tambahan, DTS memigrasikan catatan data ke database tujuan. Catatan data yang ada di database tujuan ditimpa.
Jika database sumber dan tujuan memiliki skema yang berbeda, hanya kolom tertentu yang dimigrasikan atau tugas migrasi data gagal. Lanjutkan dengan hati-hati.
Data Format in Kafka
Format penyimpanan data di instance ApsaraMQ for Kafka tujuan.
Jika Anda memilih DTS Avro, data diuraikan berdasarkan definisi skema DTS Avro. Untuk informasi lebih lanjut, lihat GitHub.
Jika Anda memilih Canal Json, data diuraikan menjadi format Canal JSON. Untuk informasi lebih lanjut tentang parameter yang digunakan untuk menguraikan data ke format Canal JSON dan contoh kode, lihat bagian Canal Json dalam topik "Format Data dalam Antrian Pesan".
Kafka Data Compression Format
Format kompresi untuk data terkompresi Kafka. Pilih format kompresi berdasarkan kebutuhan bisnis Anda. Nilai valid:
LZ4: (default): rasio kompresi rendah dan kecepatan kompresi tinggi.
GZIP: rasio kompresi tinggi dan kecepatan kompresi rendah.
CatatanKompresi GZIP mengonsumsi sejumlah besar sumber daya CPU.
Snappy: rasio kompresi sedang dan kecepatan kompresi sedang.
Policy for Shipping Data to Kafka Partitions
Kebijakan migrasi data ke partisi Kafka. Pilih kebijakan berdasarkan kebutuhan bisnis Anda. Untuk informasi lebih lanjut, lihat Tentukan Kebijakan untuk Migrasi Data ke Partisi Kafka.
Message acknowledgement mechanism
Mekanisme pengakuan pesan saat DTS memigrasikan data ke instance Apache Kafka. Untuk informasi lebih lanjut, lihat Mekanisme Pengakuan Pesan.
Capitalization of Object Names in Destination Instance
Kapitalisasi nama database, nama tabel, dan nama kolom di instance tujuan. Secara default, DTS default policy dipilih. Anda dapat memilih opsi lain untuk memastikan bahwa kapitalisasi nama objek konsisten dengan database sumber atau tujuan. Untuk informasi lebih lanjut, lihat Tentukan Kapitalisasi Nama Objek di Instance Tujuan.
Source Objects
Pilih satu atau lebih objek dari bagian Source Objects. Klik ikon
untuk menambahkan objek ke bagian Selected Objects.CatatanAnda hanya dapat memilih tabel sebagai objek yang akan dimigrasikan.
Selected Objects
Dalam contoh ini, Anda tidak perlu mengonfigurasi parameter ini. Anda dapat menggunakan fitur pemetaan nama objek untuk menentukan informasi tentang instance ApsaraMQ for Kafka tujuan, seperti nama topik ke mana data dalam tabel sumber dimigrasi, jumlah partisi dalam topik, dan kunci partisi. Untuk informasi lebih lanjut, lihat bagian Gunakan Fitur Pemetaan Nama Objek dari topik ini.
CatatanJika Anda menggunakan fitur pemetaan nama objek untuk mengganti nama objek, objek lain yang bergantung pada objek tersebut mungkin gagal dimigrasikan.
Untuk memigrasikan operasi DML atau DDL yang dilakukan pada objek selama migrasi tambahan, klik kanan objek di bagian Selected Objects. Di kotak dialog yang muncul, pilih operasi DML dan DDL yang ingin Anda migrasikan. Untuk informasi lebih lanjut, lihat bagian Operasi SQL yang Dapat Dimigrasikan Secara Tambahan dari topik ini.
Klik Next: Advanced Settings untuk mengonfigurasi pengaturan lanjutan.
Parameter
Deskripsi
Dedicated Cluster for Task Scheduling
Secara default, DTS menjadwalkan tugas migrasi data ke klaster bersama jika Anda tidak menentukan klaster khusus. Jika Anda ingin meningkatkan stabilitas tugas migrasi data, belilah klaster khusus. Untuk informasi lebih lanjut, lihat Apa Itu Klaster Khusus DTS?
Retry Time for Failed Connections
Rentang waktu ulang untuk koneksi gagal. Jika database sumber atau tujuan gagal terhubung setelah tugas migrasi data dimulai, DTS segera mencoba kembali koneksi dalam rentang waktu ulang. Nilai valid: 10 hingga 1.440. Unit: menit. Nilai default: 720. Kami sarankan Anda menyetel parameter ini ke nilai lebih dari 30. Jika DTS tersambung kembali ke database sumber dan tujuan dalam rentang waktu ulang yang ditentukan, DTS melanjutkan tugas migrasi data. Jika tidak, tugas migrasi data gagal.
CatatanJika Anda menentukan rentang waktu ulang yang berbeda untuk beberapa tugas migrasi data yang berbagi database sumber atau tujuan yang sama, nilai yang ditentukan kemudian akan berlaku.
Saat DTS mencoba kembali koneksi, Anda akan dikenakan biaya untuk instance DTS. Kami sarankan Anda menentukan rentang waktu ulang berdasarkan kebutuhan bisnis Anda. Anda juga dapat melepaskan instance DTS sesegera mungkin setelah database sumber dan instance tujuan dilepaskan.
Retry Time for Other Issues
Rentang waktu ulang untuk masalah lainnya. Misalnya, jika operasi DDL atau DML gagal dilakukan setelah tugas migrasi data dimulai, DTS segera mencoba kembali operasi dalam rentang waktu ulang. Nilai valid: 1 hingga 1.440. Unit: menit. Nilai default: 10. Kami sarankan Anda menyetel parameter ini ke nilai lebih dari 10. Jika operasi yang gagal berhasil dilakukan dalam rentang waktu ulang yang ditentukan, DTS melanjutkan tugas migrasi data. Jika tidak, tugas migrasi data gagal.
PentingNilai parameter Retry Time for Other Issues harus lebih kecil dibandingkan nilai parameter Retry Time for Failed Connections.
Enable Throttling for Full Data Migration
Menentukan apakah akan mengaktifkan pembatasan untuk migrasi data penuh. Selama migrasi data penuh, DTS menggunakan sumber daya baca dan tulis dari database sumber dan tujuan. Ini dapat meningkatkan beban pada server database. Anda dapat mengaktifkan pembatasan untuk migrasi data penuh berdasarkan kebutuhan bisnis Anda. Untuk mengonfigurasi pembatasan, Anda harus mengonfigurasi parameter Queries per second (QPS) to the source database, RPS of Full Data Migration, dan Data migration speed for full migration (MB/s). Ini mengurangi beban pada server database tujuan.
CatatanAnda hanya dapat mengonfigurasi parameter ini jika Anda memilih Full Data Migration untuk parameter Migration Types.
Enable Throttling for Incremental Data Migration
Menentukan apakah akan mengaktifkan pembatasan untuk migrasi data tambahan. Untuk mengonfigurasi pembatasan, Anda harus mengonfigurasi parameter RPS of Incremental Data Migration dan Data migration speed for incremental migration (MB/s). Ini mengurangi beban pada server database tujuan.
CatatanAnda hanya dapat mengonfigurasi parameter ini jika Anda memilih Incremental Data Migration untuk parameter Migration Types.
Whether to delete SQL operations on heartbeat tables of forward and reverse tasks
Menentukan apakah akan menulis operasi SQL pada tabel detak jantung ke database sumber saat instance DTS sedang berjalan. Nilai valid:
Yes: tidak menulis operasi SQL pada tabel detak jantung. Dalam hal ini, latensi instance DTS mungkin ditampilkan.
No: menulis operasi SQL pada tabel heartbeat. Dalam hal ini, fitur seperti pencadangan fisik dan kloning basis data sumber mungkin terpengaruh.
Environment Tag
Tag lingkungan yang digunakan untuk mengidentifikasi instance DTS. Anda dapat memilih tag lingkungan berdasarkan kebutuhan bisnis Anda. Dalam contoh ini, tidak ada tag lingkungan yang ditambahkan.
Configure ETL
Menentukan apakah akan mengaktifkan fitur ekstraksi, transformasi, dan pemuatan (ETL). Untuk informasi lebih lanjut, lihat Apa Itu ETL? Nilai valid:
Yes: mengonfigurasi fitur ETL. Anda dapat memasukkan pernyataan pemrosesan data di editor kode. Untuk informasi lebih lanjut, lihat Konfigurasikan ETL dalam Tugas Migrasi Data atau Sinkronisasi Data.
No: tidak mengonfigurasi fitur ETL.
Monitoring and Alerting
Menentukan apakah akan mengonfigurasi peringatan untuk tugas migrasi data. Jika tugas gagal atau latensi migrasi melebihi ambang batas yang ditentukan, kontak peringatan akan menerima notifikasi. Nilai valid:
No: tidak mengonfigurasi peringatan.
Yes: mengonfigurasi peringatan. Dalam hal ini, Anda juga harus mengonfigurasi ambang batas peringatan dan pengaturan notifikasi peringatan peringatan. Untuk informasi lebih lanjut, lihat bagian Konfigurasikan Pemantauan dan Peringatan Saat Membuat Tugas DTS dari topik Konfigurasikan Pemantauan dan Peringatan.
Simpan pengaturan tugas dan jalankan pra-pemeriksaan.
Untuk melihat parameter yang harus ditentukan saat Anda memanggil operasi API terkait untuk mengonfigurasi tugas DTS, gerakkan pointer ke atas Next: Save Task Settings and Precheck dan klik Preview OpenAPI parameters.
Jika Anda tidak perlu melihat atau telah melihat parameter tersebut, klik Next: Save Task Settings and Precheck di bagian bawah halaman.
CatatanSebelum Anda dapat memulai tugas migrasi data, DTS melakukan pra-pemeriksaan. Anda hanya dapat memulai tugas migrasi data setelah tugas tersebut lulus pra-pemeriksaan.
Jika tugas gagal lulus pra-pemeriksaan, klik View Details di sebelah setiap item yang gagal. Setelah Anda menganalisis penyebab berdasarkan hasil pemeriksaan, atasi masalah tersebut. Kemudian, jalankan pra-pemeriksaan lagi.
Jika peringatan dipicu untuk suatu item selama pra-pemeriksaan:
Jika item peringatan tidak dapat diabaikan, klik View Details di sebelah item yang gagal dan atasi masalah tersebut. Kemudian, jalankan pra-pemeriksaan lagi.
Jika item peringatan dapat diabaikan, klik Confirm Alert Details. Di kotak dialog Lihat Detail, klik Ignore. Di pesan yang muncul, klik OK. Kemudian, klik Precheck Again untuk menjalankan pra-pemeriksaan lagi. Jika Anda mengabaikan item peringatan, ketidaksesuaian data mungkin terjadi, dan bisnis Anda mungkin terpapar risiko potensial.
Beli instance.
Tunggu hingga Success Rate menjadi 100%. Kemudian, klik Next: Purchase Instance.
Di halaman Purchase Instance, konfigurasikan parameter Kelas Instance untuk instance migrasi data. Tabel berikut menjelaskan parameter.
Bagian
Parameter
Deskripsi
New Instance Class
Resource Group
Grup sumber daya tempat instance migrasi data berada. Nilai default: default resource group. Untuk informasi lebih lanjut, lihat Apa itu Manajemen Sumber Daya?
Instance Class
DTS menyediakan kelas instance yang bervariasi dalam kecepatan migrasi. Anda dapat memilih kelas instance berdasarkan skenario bisnis Anda. Untuk informasi lebih lanjut, lihat Kelas instance dari instance migrasi data.
Baca dan setujui Data Transmission Service (Pay-as-you-go) Service Terms dengan memilih kotak centang.
Klik Buy and Start. Di pesan yang muncul, klik OK.
Anda dapat melihat kemajuan tugas di halaman Data Migration.
CatatanJika tugas migrasi data tidak dapat digunakan untuk memigrasikan data tambahan, tugas tersebut secara otomatis berhenti. Completed ditampilkan di bagian Status .
Jika tugas migrasi data dapat digunakan untuk memigrasikan data tambahan, tugas tersebut tidak berhenti secara otomatis. Tugas migrasi data tambahan tidak pernah berhenti atau selesai. Running ditampilkan di bagian Status.
Gunakan fitur pemetaan nama objek
Di bagian Selected Objects, gerakkan pointer ke atas nama topik.
Klik kanan Edit.
Di kotak dialog yang muncul, konfigurasikan parameter yang dijelaskan dalam tabel berikut.
Parameter
Deskripsi
Table Name
Nama topik ke mana data dalam tabel sumber dimigrasi. Secara default, parameter ini disetel ke nilai Topic di bagian Destination Database dalam langkah Configurations for Source and Destination Databases.
PentingSaat database tujuan adalah instance ApsaraMQ for Kafka, topik harus ada di instance ApsaraMQ for Kafka tujuan. Jika tidak, migrasi data gagal. Saat Anda memigrasikan data ke klaster Kafka yang dikelola sendiri, dan tugas migrasi skema termasuk dalam instance migrasi, DTS mencoba membuat topik yang Anda tentukan di database tujuan.
Jika Anda mengubah nilai parameter Table Name untuk tabel sumber menjadi nama topik di database tujuan, data dalam tabel ditulis ke topik yang ditentukan.
Filter Conditions
Untuk informasi lebih lanjut, lihat Tentukan kondisi filter.
Number of Partitions
Jumlah partisi dalam topik ke mana data dimigrasi.
Partition Key
Jika Anda menyetel parameter Policy for Shipping Data to Kafka Partitions ke Ship Data to Separate Partitions Based on Hash Values of Primary Keys, konfigurasikan parameter ini untuk menentukan satu atau lebih kolom sebagai kunci partisi untuk menghitung nilai hash. DTS mengirimkan baris yang berbeda ke setiap partisi topik tujuan berdasarkan nilai hash yang dihitung.
CatatanUntuk memilih Partition Key untuk kolom, Anda harus terlebih dahulu membersihkan Sync All Columns.
Klik OK.