Data Transmission Service (DTS) mendukung migrasi data dari database MySQL—seperti database MySQL yang dikelola sendiri atau instans RDS MySQL—ke database Doris untuk analitik data skala besar. Topik ini menggunakan instans RDS MySQL sebagai database sumber dan database Doris yang diterapkan pada instans ECS sebagai database tujuan untuk menjelaskan prosedurnya.
Persiapan
Buat database Doris tujuan. Pastikan ruang penyimpanan database tujuan lebih besar daripada ruang penyimpanan yang digunakan oleh instans RDS MySQL sumber.
Untuk informasi mengenai versi database sumber dan tujuan yang didukung, lihat Ikhtisar solusi migrasi.
Catatan
Tipe | Catatan |
Batasan database sumber |
|
Batasan lainnya |
|
Kasus khusus |
|
Penagihan
Tipe migrasi | Biaya konfigurasi link | Biaya transfer data |
Schema migration dan migrasi data penuh | Gratis. | Contoh ini gratis. Catatan Biaya transfer data dikenakan jika Anda mengatur Access Method untuk database tujuan ke Public IP Address. Untuk informasi lebih lanjut, lihat Ikhtisar penagihan. |
Migrasi data inkremental | Dikenakan biaya. Untuk informasi lebih lanjut, lihat Ikhtisar penagihan. |
Operasi SQL yang didukung untuk migrasi inkremental
Tipe operasi | Operasi SQL |
DML | INSERT, UPDATE, DELETE |
DDL |
|
Izin yang diperlukan untuk akun database
Database | Schema migration | Migrasi penuh | Migrasi inkremental |
Instans RDS MySQL sumber | Izin SELECT | Izin SELECT | Baca dan tulis |
Database Doris tujuan | Izin akses (Usage_priv) dan izin baca-tulis (Select_priv, Load_priv, Alter_priv, Create_priv, dan Drop_priv) pada database | ||
Untuk membuat dan memberikan izin kepada akun database:
Untuk instans RDS MySQL, lihat Buat akun dan Ubah izin akun.
Untuk database Doris, lihat Autentikasi dan Otorisasi.
Jika akun database sumber tidak dibuat dan diberikan izin di Konsol RDS MySQL, pastikan akun tersebut memiliki izin REPLICATION CLIENT, REPLICATION SLAVE, SHOW VIEW, dan SELECT.
Prosedur
Gunakan salah satu metode berikut untuk membuka halaman Data Migration dan pilih wilayah tempat instans migrasi data berada.
Konsol DTS
Masuk ke Konsol DTS.
Di panel navigasi sebelah kiri, klik Data Migration.
Di pojok kiri atas halaman, pilih wilayah tempat instans migrasi data berada.
Konsol DMS
CatatanOperasi aktual mungkin berbeda tergantung pada mode dan tata letak Konsol DMS. Untuk informasi lebih lanjut, lihat Mode sederhana dan Sesuaikan tata letak dan gaya Konsol DMS.
Masuk ke Konsol DMS.
Di bilah navigasi atas, arahkan kursor ke .
Dari daftar drop-down di sebelah kanan Data Migration Tasks, pilih wilayah tempat instans sinkronisasi data berada.
Klik Create Task untuk membuka halaman konfigurasi tugas.
Konfigurasikan database sumber dan tujuan. Tabel berikut menjelaskan parameter-parameternya.
Kategori
Konfigurasi
Catatan
Tidak ada
Task Name
Nama tugas DTS. DTS secara otomatis menghasilkan nama tugas. Kami menyarankan Anda menentukan nama yang informatif agar mudah mengidentifikasi tugas tersebut. Anda tidak perlu menentukan nama tugas yang unik.
Source Database
Select Existing Connection
Jika Anda menggunakan instans database yang terdaftar di DTS, pilih instans tersebut dari daftar drop-down. DTS secara otomatis mengisi parameter database berikut untuk instans tersebut. Untuk informasi lebih lanjut, lihat Kelola koneksi database.
CatatanDi Konsol DMS, Anda dapat memilih instans database dari daftar drop-down Select a DMS database instance.
Jika Anda gagal mendaftarkan instans ke DTS, atau tidak perlu menggunakan instans yang terdaftar di DTS, Anda harus mengonfigurasi informasi database berikut.
Database Type
Pilih MySQL.
Access Method
Pilih Alibaba Cloud Instance.
Instance Region
Pilih wilayah tempat instans RDS MySQL sumber berada.
Replicate Data Across Alibaba Cloud Accounts
Dalam contoh ini, digunakan instans database dari Akun Alibaba Cloud saat ini. Pilih No.
RDS Instance ID
Pilih ID instans RDS MySQL sumber.
Database Account
Masukkan akun database instans RDS MySQL sumber. Untuk informasi tentang izin yang diperlukan, lihat Izin yang diperlukan untuk akun database.
Database Password
Kata sandi yang digunakan untuk mengakses instans database.
Encryption
Pilih Non-encrypted Connection atau SSL Secure Connection sesuai kebutuhan. Jika Anda mengatur ini ke SSL Secure Connection, Anda harus mengaktifkan enkripsi SSL untuk instans RDS for MySQL terlebih dahulu. Untuk informasi lebih lanjut, lihat Gunakan sertifikat cloud untuk mengaktifkan enkripsi link SSL dengan cepat.
Destination Database
Select Existing Connection
Jika Anda menggunakan instans database yang terdaftar di DTS, pilih instans tersebut dari daftar drop-down. DTS secara otomatis mengisi parameter database berikut untuk instans tersebut. Untuk informasi lebih lanjut, lihat Kelola koneksi database.
CatatanDi Konsol DMS, Anda dapat memilih instans database dari daftar drop-down Select a DMS database instance.
Jika Anda gagal mendaftarkan instans ke DTS, atau tidak perlu menggunakan instans yang terdaftar di DTS, Anda harus mengonfigurasi informasi database berikut.
Database Type
Pilih Doris.
Access Method
Pilih jenis koneksi berdasarkan lokasi penerapan database tujuan. Contoh ini menggunakan Self-managed Database on ECS.
CatatanJika Anda menghubungkan database yang dikelola sendiri ke DTS dengan cara lain, Anda juga harus melakukan persiapan yang diperlukan. Untuk informasi lebih lanjut, lihat Persiapan.
Instance Region
Pilih wilayah tempat database Doris tujuan berada.
ECS Instance ID
Pilih ID instans ECS yang menghosting database Doris tujuan.
CatatanJika database Doris tujuan diterapkan pada beberapa instans ECS (misalnya, node BE atau FE diterapkan pada instans ECS lain), Anda harus menambahkan Blok CIDR server DTS secara manual ke aturan keamanan setiap instans ECS tempat node tersebut diterapkan.
Port Number
Masukkan port layanan database Doris tujuan. Port default-nya adalah 9030.
Database Account
Masukkan akun database Doris tujuan. Untuk informasi tentang izin yang diperlukan, lihat Izin yang diperlukan untuk akun database.
Database Password
Kata sandi yang digunakan untuk mengakses instans database.
Di bagian bawah halaman, klik Test Connectivity and Proceed, lalu klik Test Connectivity di kotak dialog CIDR Blocks of DTS Servers yang muncul.
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 alamat IP server DTS ke daftar putih.
Konfigurasikan objek yang akan dimigrasikan.
Di halaman Configure Objects, konfigurasikan objek yang ingin Anda migrasikan.
Konfigurasi
Deskripsi
Migration Types
Untuk melakukan hanya migrasi data penuh, pilih Schema Migration dan Full Data Migration.
Untuk melakukan migrasi tanpa gangguan layanan, pilih Schema Migration, Full Data Migration, dan Incremental Data Migration.
PentingMigrasi data dari MySQL ke Doris melibatkan konversi tipe data. Jika Anda tidak memilih Schema Migration, Anda harus membuat tabel model Unique atau Duplicate dengan struktur yang sesuai di instans Doris tujuan terlebih dahulu. Untuk informasi lebih lanjut, lihat Pemetaan Tipe Data, Informasi Kolom Tambahan, dan Primary Key Model.
Jika Anda tidak memilih Incremental Data Migration, jangan menulis data baru ke instans sumber selama migrasi data untuk memastikan konsistensi data.
Processing Mode of Conflicting Tables
Precheck and Report Errors: Sistem memeriksa apakah tabel dengan nama yang sama sudah ada di database tujuan. Jika tabel dengan nama yang sama tidak ada, tugas lolos pemeriksaan awal ini. Jika tabel dengan nama yang sama ada, kesalahan dilaporkan selama pemeriksaan awal, dan tugas migrasi data tidak dimulai.
CatatanJika Anda tidak dapat menghapus atau mengganti nama tabel dengan nama yang sama di database tujuan, Anda dapat mengubah nama tabel di database tujuan. Untuk informasi lebih lanjut, lihat Petakan nama tabel dan kolom.
Ignore Errors and Proceed: Melewati pemeriksaan untuk tabel dengan nama yang sama di database tujuan.
PeringatanJika Anda memilih Ignore Errors and Proceed, ketidakkonsistenan data mungkin terjadi dan menimbulkan risiko bagi bisnis Anda. Misalnya:
Jika skema tabel konsisten, ketika DTS menemukan catatan di database tujuan yang memiliki nilai primary key yang sama dengan catatan di database sumber, catatan dari database sumber akan menimpa catatan di database tujuan.
Jika skema tabel tidak konsisten, hanya data di beberapa kolom yang mungkin dimigrasikan, atau migrasi mungkin gagal. Harap berhati-hati.
Capitalization of Object Names in Destination Instance
Huruf kapital untuk nama database, tabel, dan kolom di instans tujuan. Secara default, DTS default policy dipilih. Anda dapat memilih opsi lain untuk memastikan huruf kapital nama objek konsisten dengan database sumber atau tujuan. Untuk informasi lebih lanjut, lihat Tentukan huruf kapital nama objek di instans tujuan.
Source Objects
Pilih satu atau beberapa objek dari bagian Source Objects. Klik ikon
untuk menambahkan objek ke bagian Selected Objects.CatatanAnda dapat memilih objek untuk dimigrasikan pada tingkat database atau tabel.
Selected Objects
Untuk mengubah nama objek migrasi di instans tujuan, klik kanan objek migrasi di kotak Selected Objects. Untuk informasi lebih lanjut, lihat Pemetaan Nama Database, Tabel, dan Kolom.
Jika Anda mengatur Migration Types ke Schema Migration, objek migrasi dipilih pada tingkat tabel. Untuk mengatur jumlah bucket (parameter
bucket_count), klik kanan tabel di daftar Selected Objects. Di area Parameter Settings, atur Enable Parameter Settings ke Yes, atur Value sesuai kebutuhan, lalu klik OK.
CatatanUntuk memilih operasi SQL untuk migrasi inkremental pada tingkat database atau tabel, klik kanan objek target di kotak Selected Objects dan pilih operasi SQL yang diinginkan di kotak dialog yang muncul.
Untuk mengatur kondisi WHERE untuk memfilter data, klik kanan tabel yang akan dimigrasikan di kotak Selected Objects dan atur kondisi filter di kotak dialog yang muncul. Untuk informasi lebih lanjut, lihat Atur kondisi filter.
Jika Anda menggunakan fitur pemetaan nama objek, objek lain yang bergantung pada objek yang dipetakan mungkin gagal dimigrasikan.
Klik Next: Advanced Settings untuk mengonfigurasi pengaturan lanjutan.
Konfigurasi
Catatan
Dedicated Cluster for Task Scheduling
Secara default, DTS menjadwalkan tugas migrasi data ke kluster bersama jika Anda tidak menentukan kluster khusus. Jika Anda ingin meningkatkan stabilitas tugas migrasi data, beli kluster khusus. Untuk informasi lebih lanjut, lihat Apa itu kluster khusus DTS.
Retry Time for Failed Connections
Rentang waktu retry untuk koneksi yang gagal. Jika database sumber atau tujuan gagal terhubung setelah tugas migrasi data dimulai, DTS segera mencoba menghubungkan kembali dalam rentang waktu retry tersebut. Nilai valid: 10 hingga 1.440 menit. Nilai default: 720. Disarankan mengatur parameter ini ke nilai lebih dari 30. Jika DTS berhasil terhubung kembali ke database sumber dan tujuan dalam rentang waktu retry yang ditentukan, tugas migrasi data dilanjutkan. Jika tidak, tugas migrasi data gagal.
CatatanJika Anda menentukan rentang waktu retry yang berbeda untuk beberapa tugas migrasi data yang berbagi database sumber atau tujuan yang sama, nilai yang ditentukan terakhir akan diutamakan.
Saat DTS mencoba menghubungkan kembali, Anda dikenai biaya untuk instans DTS. Disarankan menentukan rentang waktu retry sesuai kebutuhan bisnis. Anda juga dapat melepaskan instans DTS sesegera mungkin setelah database sumber dan instans tujuan dilepas.
Retry Time for Other Issues
Rentang waktu retry untuk masalah lain. Misalnya, jika operasi DDL atau DML gagal dilakukan setelah tugas migrasi data dimulai, DTS segera mencoba mengulang operasi tersebut dalam rentang waktu retry. Nilai valid: 1 hingga 1.440 menit. Nilai default: 10. Disarankan mengatur parameter ini ke nilai lebih dari 10. Jika operasi yang gagal berhasil dilakukan dalam rentang waktu retry yang ditentukan, DTS melanjutkan tugas migrasi data. Jika tidak, tugas migrasi data gagal.
PentingNilai parameter Retry Time for Other Issues harus lebih kecil daripada nilai parameter Retry Time for Failed Connections.
Enable Throttling for Full Data Migration
Menentukan apakah akan mengaktifkan pembatasan kecepatan untuk migrasi data penuh. Selama migrasi data penuh, DTS menggunakan resource baca dan tulis database sumber dan tujuan, yang dapat meningkatkan beban server database. Anda dapat mengaktifkan pembatasan kecepatan berdasarkan kebutuhan bisnis. Untuk mengonfigurasi pembatasan kecepatan, Anda harus mengatur parameter Queries per second (QPS) to the source database, RPS of Full Data Migration, dan Data migration speed for full migration (MB/s). Hal ini mengurangi beban server database tujuan.
CatatanAnda dapat mengonfigurasi parameter ini hanya jika memilih Full Data Migration untuk parameter Migration Types.
Enable Throttling for Incremental Data Migration
Menentukan apakah akan mengaktifkan pembatasan kecepatan untuk migrasi data inkremental. Untuk mengonfigurasi pembatasan kecepatan, Anda harus mengatur parameter RPS of Incremental Data Migration dan Data migration speed for incremental migration (MB/s). Hal ini mengurangi beban server database tujuan.
CatatanAnda dapat mengonfigurasi parameter ini hanya jika memilih Incremental Data Migration untuk parameter Migration Types.
Whether to delete SQL operations on heartbeat tables of forward and reverse tasks
Berdasarkan kebutuhan bisnis Anda, 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 mungkin menyebabkan instans DTS melaporkan delay.
No: Menulis informasi SQL heartbeat ke database sumber, yang mungkin mengganggu fitur seperti physical backup dan cloning database sumber.
Environment Tag
Anda dapat memilih tag lingkungan untuk mengidentifikasi instans sesuai kebutuhan. Contoh ini tidak memerlukan tag.
Configure ETL
Menentukan apakah akan mengaktifkan fitur extract, transform, and load (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 alert notification settings. Untuk informasi lebih lanjut, lihat bagian Konfigurasikan monitoring dan peringatan saat membuat tugas DTS dalam topik Konfigurasikan monitoring dan peringatan.
Opsional: Setelah menyelesaikan konfigurasi di atas, klik Next: Configure Database and Table Fields untuk mengatur Primary Key Column, Distribution Key, dan Engine untuk tabel di database tujuan.
CatatanLangkah ini tersedia hanya jika Anda mengatur Migration Types ke Schema Migration saat mengonfigurasi objek tugas. Anda dapat mengatur Definition Status ke All untuk melakukan modifikasi.
Primary Key Column dapat berupa kunci komposit yang terdiri dari beberapa kolom. Anda harus memilih satu atau beberapa Primary Key Column sebagai Distribution Key.
Untuk tabel tanpa primary key atau kendala UNIQUE, atur Engine ke duplicate. Jika tidak, instans mungkin gagal atau terjadi kehilangan data.
Simpan pengaturan tugas dan jalankan pemeriksaan awal.
Untuk melihat parameter yang perlu ditentukan saat memanggil operasi API terkait untuk mengonfigurasi tugas DTS, arahkan kursor ke 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 pemeriksaan awal. Anda hanya dapat memulai tugas migrasi data setelah tugas tersebut lolos pemeriksaan awal.
Jika tugas gagal lolos pemeriksaan awal, klik View Details di sebelah setiap item yang gagal. Setelah menganalisis penyebab berdasarkan hasil pemeriksaan, atasi masalah tersebut. Kemudian, jalankan pemeriksaan awal lagi.
Jika peringatan dipicu untuk suatu item selama pemeriksaan awal:
Jika item peringatan tidak dapat diabaikan, klik View Details di sebelah item yang gagal dan atasi masalah tersebut. Kemudian, jalankan pemeriksaan awal lagi.
Jika item peringatan dapat diabaikan, klik Confirm Alert Details. Di kotak dialog View Details, klik Ignore. Di pesan yang muncul, klik OK. Kemudian, klik Precheck Again untuk menjalankan pemeriksaan awal lagi. Jika Anda mengabaikan item peringatan, ketidakkonsistenan data mungkin terjadi, dan bisnis Anda mungkin terpapar risiko potensial.
Beli instance.
Tunggu hingga Success Rate menjadi 100%. Lalu, klik Next: Purchase Instance.
Di halaman Purchase Instance, konfigurasikan parameter Instance Class untuk instans migrasi data. Tabel berikut menjelaskan parameter-parameternya.
Bagian
Parameter
Deskripsi
New Instance Class
Resource Group
Kelompok sumber daya tempat instans migrasi data berada. Nilai default: default resource group. Untuk informasi lebih lanjut, lihat Apa itu Resource Management?
Instance Class
DTS menyediakan kelas instans dengan kecepatan migrasi yang berbeda. Anda dapat memilih kelas instans berdasarkan skenario bisnis Anda. Untuk informasi lebih lanjut, lihat Kelas instans untuk instans 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 progres tugas di halaman Data Migration.
CatatanJika tugas migrasi data tidak dapat digunakan untuk memigrasikan data inkremental, tugas tersebut akan berhenti secara otomatis. Completed ditampilkan di bagian Status .
Jika tugas migrasi data dapat digunakan untuk memigrasikan data inkremental, tugas tersebut tidak akan berhenti secara otomatis. Tugas migrasi data inkremental tidak pernah berhenti atau selesai. Running ditampilkan di bagian Status.
Pemetaan tipe data
Kategori | Tipe data MySQL | Tipe data Doris |
Numerik | 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 Atribut zerofill tidak didukung. | |
Numeric | Decimal | |
Float | Float | |
Double | DOUBLE | |
| BOOLEAN | |
DATE dan TIME | DATE | DATEV2 |
DATETIME[(fsp)] | DATETIMEV2 | |
Timestamp[(fsp)] | DATETIMEV2 | |
Time[(fsp)] | VARCHAR | |
YEAR[(4)] | INT | |
STRING |
| VARCHAR Penting Untuk mencegah kehilangan data, data tipe CHAR dan VARCHAR(n) dikonversi ke VARCHAR(4*n) setelah dimigrasikan ke Doris.
|
| STRING | |
| STRING | |
| STRING | |
ENUM | STRING | |
SET | STRING | |
JSON | STRING |
Informasi kolom tambahan
Tabel berikut menjelaskan kolom tambahan yang secara otomatis ditambahkan DTS atau yang harus Anda tambahkan secara manual ke tabel tujuan yang menggunakan model data Duplicate.
Nama | Tipe Data | Nilai Default | Deskripsi |
_is_deleted | Int | 0 | Menunjukkan apakah data dihapus.
|
_version | Bigint | 0 |
|
_record_id | Bigint | 0 |
|