Layanan Transmisi Data (DTS) memungkinkan Anda menyinkronkan data dari database MySQL—seperti database MySQL yang dikelola sendiri atau instans ApsaraDB RDS for MySQL—ke database Doris guna memenuhi kebutuhan analitik data skala besar. Topik ini menjelaskan cara menyinkronkan data dari instans sumber ApsaraDB RDS for MySQL ke database Doris tujuan yang di-deploy pada instans ECS.
Prasyarat
Anda telah membuat database Doris tujuan dengan ruang penyimpanan yang tersedia melebihi ruang penyimpanan yang digunakan oleh instans sumber RDS MySQL.
Untuk versi database sumber dan tujuan yang didukung, lihat Ikhtisar solusi sinkronisasi data.
Catatan penggunaan
Tipe | Deskripsi |
Batasan pada database sumber |
|
Batasan lainnya |
|
Kasus khusus |
|
Penagihan
| Tipe sinkronisasi | Biaya konfigurasi tugas |
| Sinkronisasi skema dan sinkronisasi data penuh | Gratis. |
| Sinkronisasi data inkremental | Dikenakan biaya. Untuk informasi selengkapnya, lihat Ikhtisar penagihan. |
Operasi SQL yang mendukung sinkronisasi inkremental
Tipe operasi | Pernyataan SQL |
DML | INSERT, UPDATE, dan DELETE |
DDL |
|
Izin yang diperlukan untuk akun database
Database | Izin yang diperlukan | Metode pembuatan dan otorisasi |
Instans sumber RDS MySQL | Izin baca dan tulis pada objek yang akan disinkronkan | |
Database Doris tujuan | Izin USAGE_PRIV dan izin baca tulis berikut: SELECT_PRIV, LOAD_PRIV, ALTER_PRIV, CREATE_PRIV, dan DROP_PRIV |
Jika akun database sumber yang Anda gunakan tidak dibuat dan diotorisasi melalui konsol RDS MySQL, pastikan akun tersebut memiliki izin REPLICATION CLIENT, REPLICATION SLAVE, SHOW VIEW, dan SELECT.
Prosedur
Buka halaman daftar tugas sinkronisasi data di wilayah tujuan menggunakan salah satu metode berikut.
Dari konsol DTS
Masuk ke konsol DTS.
Di panel navigasi sebelah kiri, klik Data Synchronization.
Di pojok kiri atas halaman, pilih wilayah tempat instans sinkronisasi berada.
Dari konsol DMS
CatatanOperasi aktual mungkin berbeda tergantung pada mode dan tata letak konsol DMS. Untuk informasi selengkapnya, lihat Konsol mode sederhana dan Sesuaikan tata letak dan gaya konsol DMS.
Masuk ke konsol DMS.
Dari bilah menu atas, pilih .
Di sebelah kanan Data Synchronization Tasks, pilih wilayah instans sinkronisasi.
Klik Create Task untuk membuka halaman konfigurasi tugas.
Konfigurasikan database sumber dan tujuan. Tabel berikut menjelaskan parameter-parameternya.
Kategori
Parameter
Deskripsi
N/A
Task Name
DTS secara otomatis menghasilkan nama tugas. Kami merekomendasikan agar Anda menentukan nama deskriptif untuk memudahkan identifikasi. Nama tidak perlu unik.
Source Database
Select Existing Connection
Untuk menggunakan instans database yang terdaftar di sistem (baru dibuat atau disimpan), pilih instans database yang diinginkan dari daftar drop-down. Informasi database di bawah ini akan dikonfigurasi secara otomatis.
CatatanDi konsol DMS, item konfigurasi ini adalah Select a DMS database instance..
Jika Anda belum mendaftarkan instans database ke sistem atau tidak perlu menggunakan instans terdaftar, konfigurasikan informasi database di bawah ini secara manual.
Database Type
Pilih MySQL.
Access Method
Pilih Alibaba Cloud Instance.
Instance Region
Pilih wilayah tempat instans sumber ApsaraDB RDS for MySQL berada.
Replicate Data Across Alibaba Cloud Accounts
Contoh ini menggunakan instans database di bawah Akun Alibaba Cloud saat ini. Pilih No.
RDS Instance ID
Pilih ID instans sumber ApsaraDB RDS for MySQL.
Database Account
Akun database instans sumber ApsaraDB RDS for MySQL. Untuk informasi selengkapnya tentang izin yang diperlukan untuk akun tersebut, lihat Izin yang diperlukan untuk akun database.
Database Password
Masukkan password yang sesuai dengan akun 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 selengkapnya, lihat Gunakan sertifikat cloud untuk mengaktifkan enkripsi tautan SSL dengan cepat.
Destination Database
Select Existing Connection
Untuk menggunakan instans database yang terdaftar di sistem (baru dibuat atau disimpan), pilih instans database yang diinginkan dari daftar drop-down. Informasi database di bawah ini akan dikonfigurasi secara otomatis.
CatatanDi konsol DMS, item konfigurasi ini adalah Select a DMS database instance..
Jika Anda belum mendaftarkan instans database ke sistem atau tidak perlu menggunakan instans terdaftar, konfigurasikan informasi database di bawah ini secara manual.
Database Type
Pilih Doris.
Access Method
Pilih berdasarkan lokasi penerapan database tujuan. Dalam contoh ini, pilih Self-managed Database on ECS.
CatatanSaat Anda mengakses database yang dikelola sendiri melalui metode koneksi lain, Anda perlu menyelesaikan persiapan yang sesuai. Untuk informasi selengkapnya, lihat Persiapan.
Instance Region
Pilih wilayah tempat database Doris tujuan berada.
ECS Instance ID
Pilih ID instans ECS tempat database Doris tujuan diterapkan.
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 ke aturan keamanan setiap instans ECS tempat node diterapkan.
Port Number
Masukkan port layanan database Doris tujuan. Nilai default: 9030.
Database Account
Masukkan akun database database Doris tujuan. Untuk informasi selengkapnya tentang izin yang diperlukan untuk akun tersebut, lihat bagian Izin yang diperlukan untuk akun database di topik ini.
Database Password
Masukkan password yang sesuai dengan akun database.
Setelah konfigurasi selesai, klik Test Connectivity and Proceed di bagian bawah halaman. Di kotak dialog CIDR Blocks of DTS Servers, klik Test Connectivity.
CatatanPastikan blok alamat IP layanan DTS telah ditambahkan ke pengaturan keamanan database sumber dan tujuan, baik secara otomatis maupun manual, untuk mengizinkan akses dari server DTS. Untuk informasi selengkapnya, lihat Tambahkan daftar putih alamat IP server DTS.
Konfigurasikan objek tugas.
Di halaman Configure Objects, Anda dapat mengonfigurasi objek yang akan disinkronkan.
Konfigurasi
Deskripsi
Synchronization Types
Incremental Synchronization dipilih secara default. Anda juga perlu memilih Schema Synchronization dan Full Data Synchronization. Setelah pemeriksaan awal selesai, DTS menginisialisasi objek sinkronisasi di kluster tujuan dengan data penuh dari instans sumber. Data ini berfungsi sebagai garis dasar untuk sinkronisasi inkremental berikutnya.
PentingSetelah Anda menyinkronkan data dari instans ApsaraDB RDS for MySQL ke database Doris yang dikelola sendiri, tipe data akan dikonversi. Jika Anda tidak memilih Schema Synchronization, Anda harus membuat tabel yang menggunakan model Unique Key atau model Duplicate key di database Doris tujuan sebelum sinkronisasi data. Untuk informasi selengkapnya, lihat Pemetaan tipe data, Kolom tambahan, dan Model Unique Key.
Processing Mode of Conflicting Tables
Precheck and Report Errors: Memeriksa keberadaan tabel dengan nama yang sama di database tujuan. Jika ditemukan tabel dengan nama yang sama, kesalahan akan dilaporkan selama pemeriksaan awal dan tugas sinkronisasi data tidak dimulai. Jika tidak, pemeriksaan awal berhasil.
CatatanJika Anda tidak dapat menghapus atau mengganti nama tabel dengan nama yang sama di database tujuan, Anda dapat menggunakan fitur pemetaan nama objek untuk mengubah nama tabel di database tujuan. Untuk informasi selengkapnya, lihat Petakan nama objek.
Ignore Errors and Proceed: Melewati pemeriksaan tabrakan nama di database tujuan.
PeringatanMemilih Ignore Errors and Proceed dapat menyebabkan ketidakkonsistenan data dan membahayakan bisnis Anda. Misalnya:
Jika skema tabel konsisten dan catatan di database tujuan memiliki nilai primary key atau unique key yang sama dengan catatan di database sumber:
Selama sinkronisasi data penuh, DTS mempertahankan catatan di kluster tujuan. Catatan yang sesuai dari database sumber tidak disinkronkan.
Selama sinkronisasi inkremental, catatan dari database sumber menimpa catatan di database tujuan.
Jika skema tabel tidak konsisten, inisialisasi data mungkin gagal. Hal ini dapat mengakibatkan hanya sinkronisasi kolom parsial atau kegagalan sinkronisasi total. Harap berhati-hati.
Capitalization of Object Names in Destination Instance
Anda dapat mengonfigurasi kebijakan huruf besar/kecil untuk nama objek database, tabel, dan kolom di instans tujuan. Secara default, DTS Default Policy dipilih. Anda juga dapat memilih untuk menggunakan kebijakan default database sumber atau tujuan. Untuk informasi selengkapnya, lihat Kebijakan huruf besar/kecil untuk nama objek tujuan.
Source Objects
Di kotak Source Objects, klik objek, lalu klik
untuk memindahkannya ke kotak Selected Objects.CatatanPilih database atau tabel sebagai objek yang akan disinkronkan.
Selected Objects
Untuk mengubah nama objek sinkronisasi di instans tujuan, klik kanan objek di kotak Selected Objects. Untuk informasi selengkapnya, lihat Petakan nama objek.
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, atur parameter Value sesuai kebutuhan, lalu klik OK.
CatatanUntuk memilih operasi SQL inkremental yang akan disinkronkan pada tingkat database atau tabel, klik kanan objek sinkronisasi di kotak Selected Objects dan pilih operasi SQL yang diinginkan di kotak dialog yang muncul.
Untuk mengatur klausa WHERE untuk memfilter data, klik kanan tabel di kotak Selected Objects dan atur kondisi filter di kotak dialog yang muncul. Untuk informasi selengkapnya, lihat Atur kondisi filter.
Jika Anda menggunakan fitur pemetaan nama objek, objek lain yang bergantung pada objek yang dipetakan mungkin gagal disinkronkan.
Klik Next: Advanced Settings.
Parameter
Deskripsi
Dedicated Cluster for Task Scheduling
Secara default, DTS menjadwalkan tugas pada kluster bersama, sehingga Anda tidak perlu memilih. Untuk stabilitas tugas yang lebih baik, Anda dapat membeli kluster khusus untuk menjalankan tugas sinkronisasi DTS. Untuk informasi selengkapnya, lihat Apa itu kluster khusus DTS?.
Retry Time for Failed Connections
Jika koneksi ke database sumber atau tujuan gagal setelah tugas sinkronisasi dimulai, DTS melaporkan kesalahan dan segera mencoba menghubungkan kembali. Durasi retry default adalah 720 menit. Anda dapat menyesuaikan waktu retry ke nilai antara 10 hingga 1.440 menit. Kami merekomendasikan pengaturan minimal 30 menit. Jika DTS berhasil terhubung kembali dalam waktu retry yang ditentukan, tugas akan dilanjutkan secara otomatis. Jika tidak, tugas gagal.
CatatanUntuk beberapa instans DTS dengan sumber atau tujuan yang sama—misalnya instans DTS A dan instans DTS B—jika waktu retry jaringan diatur 30 menit untuk A dan 60 menit untuk B, maka waktu yang lebih singkat (30 menit) yang berlaku.
Karena DTS mengenakan biaya untuk waktu proses tugas selama retry koneksi, kami merekomendasikan agar Anda menyesuaikan waktu retry berdasarkan kebutuhan bisnis atau segera melepaskan instans DTS setelah instans database sumber dan tujuan dilepas.
Retry Time for Other Issues
Setelah tugas sinkronisasi dimulai, jika terjadi masalah non-konektivitas di database sumber atau tujuan—seperti kesalahan eksekusi DDL atau DML—DTS melaporkan kesalahan dan segera melakukan operasi retry berkelanjutan. Durasi retry default adalah 10 menit. Anda juga dapat menyesuaikan waktu retry ke nilai antara 1 hingga 1.440 menit. Kami merekomendasikan pengaturan minimal 10 menit. Jika operasi terkait berhasil dalam waktu retry yang ditetapkan, tugas sinkronisasi akan dilanjutkan secara otomatis. Jika tidak, tugas gagal.
PentingNilai Retry Time for Other Issues harus lebih kecil daripada Retry Time for Failed Connections.
Enable Throttling for Full Data Synchronization
Selama fase sinkronisasi data penuh, DTS mengonsumsi sumber daya baca dan tulis dari database sumber dan tujuan, yang dapat meningkatkan beban mereka. Anda dapat mengatur batas laju untuk tugas sinkronisasi data penuh guna mengurangi tekanan pada database tujuan dengan mengonfigurasi Queries per second (QPS) to the source database, RPS of Full Data Migration, dan Data migration speed for full migration (MB/s).
CatatanOpsi ini tersedia hanya jika Synchronization Types diatur ke Full Data Synchronization.
Anda juga dapat menyesuaikan laju sinkronisasi data penuh setelah instans sinkronisasi berjalan.
Enable Throttling for Incremental Data Synchronization
Anda juga dapat mengatur batas laju untuk tugas sinkronisasi inkremental guna mengurangi tekanan pada database tujuan dengan mengatur RPS of Incremental Data Synchronization dan Data synchronization speed for incremental synchronization (MB/s).
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 dapat menyebabkan instans DTS melaporkan keterlambatan.
No: Menulis informasi SQL heartbeat ke database sumber, yang dapat mengganggu fitur seperti backup fisik dan kloning database sumber.
Environment Tag
Label lingkungan yang digunakan untuk mengidentifikasi instans. Anda dapat memilih label lingkungan sesuai kebutuhan. Dalam contoh ini, Anda tidak perlu mengonfigurasi parameter ini.
Configure ETL
Tentukan apakah akan mengaktifkan fitur ekstrak, transformasi, dan muat (ETL). Untuk informasi selengkapnya, lihat Apa itu ETL? Nilai yang valid:
Yes: mengonfigurasi fitur ETL. Anda dapat memasukkan pernyataan pemrosesan data di editor kode. Untuk informasi selengkapnya, lihat Konfigurasi ETL dalam tugas migrasi data atau sinkronisasi data.
No: tidak mengonfigurasi fitur ETL.
Monitoring and Alerting
Tentukan apakah akan mengonfigurasi peringatan. Jika sinkronisasi gagal atau latensi melebihi ambang batas yang ditentukan, notifikasi akan dikirim ke kontak peringatan.
Do Not Set: Tidak ada peringatan yang diatur.
Set: Mengonfigurasi peringatan. Anda juga harus mengatur ambang batas peringatan dan notifikasi peringatan. Untuk informasi selengkapnya, lihat Konfigurasi pemantauan dan peringatan selama konfigurasi tugas.
Opsional: Setelah menyelesaikan konfigurasi di atas, klik Next: Configure Database and Table Fields untuk mengatur Primary Key Column, Distribution Key, dan Engine untuk tabel yang akan disinkronkan di database tujuan.
CatatanLangkah ini tersedia hanya jika Anda memilih Schema Synchronization untuk Synchronization Types saat mengonfigurasi objek tugas. Anda dapat mengatur Definition Status ke All lalu memodifikasi pengaturan.
Anda dapat memilih beberapa kolom untuk Primary Key Column guna membentuk primary key komposit. Anda harus memilih satu atau beberapa kolom dari Primary Key Column sebagai Distribution Key.
Untuk tabel yang tidak memiliki primary key maupun kendala UNIQUE, Anda harus mengatur Engine ke duplicate. Jika tidak, instans mungkin gagal atau data hilang.
Simpan tugas dan lakukan pemeriksaan awal.
Untuk melihat parameter konfigurasi instans ini untuk operasi API, arahkan kursor mouse ke tombol Next: Save Task Settings and Precheck, lalu klik Preview OpenAPI parameters di tooltip.
Jika Anda telah selesai melihat parameter API, klik Next: Save Task Settings and Precheck di bagian bawah halaman.
CatatanSebelum pekerjaan sinkronisasi dimulai, pemeriksaan awal dilakukan. Pekerjaan hanya dapat dimulai setelah lulus pemeriksaan awal.
Jika pemeriksaan awal gagal, klik View Details di sebelah item yang gagal, selesaikan masalah sesuai petunjuk, lalu jalankan kembali pemeriksaan awal.
Jika muncul peringatan selama pemeriksaan awal:
Jika item pemeriksaan gagal dan tidak dapat diabaikan, klik View Details di sebelah item tersebut. Kemudian, ikuti petunjuk untuk memperbaiki masalah dan jalankan kembali pemeriksaan awal.
Untuk item pemeriksaan yang dapat diabaikan, klik Confirm Alert Details, Ignore, OK, dan Precheck Again secara berurutan untuk melewati peringatan dan menjalankan kembali pemeriksaan awal. Mengabaikan peringatan untuk item pemeriksaan dapat menyebabkan masalah seperti ketidakkonsistenan data dan menimbulkan risiko bagi bisnis Anda.
Beli instance.
Saat Success Rate mencapai 100%, klik Next: Purchase Instance.
Di halaman Purchase, pilih metode penagihan dan spesifikasi tautan untuk instans sinkronisasi data. Untuk informasi selengkapnya, lihat tabel berikut.
Kategori
Parameter
Deskripsi
New Instance Class
Metode Penagihan
Langganan: Anda membayar saat membuat instans. Ini cocok untuk kebutuhan jangka panjang, lebih terjangkau daripada bayar sesuai penggunaan, dan menawarkan diskon lebih besar untuk durasi langganan yang lebih lama.
Bayar sesuai penggunaan: Ditagih per jam. Ini cocok untuk kebutuhan jangka pendek. Anda dapat melepaskan instans segera setelah digunakan untuk menghemat biaya.
Konfigurasi Kelompok Sumber Daya
Kelompok sumber daya tempat instans berada. Default-nya adalah default resource group. Untuk informasi selengkapnya, lihat Apa itu Manajemen Sumber Daya?.
Spesifikasi Tautan
DTS menyediakan spesifikasi sinkronisasi dengan tingkat kinerja berbeda. Spesifikasi tautan memengaruhi laju sinkronisasi. Anda dapat memilih salah satu berdasarkan skenario bisnis Anda. Untuk informasi selengkapnya, lihat Spesifikasi tautan sinkronisasi data.
Durasi Langganan
Dalam mode langganan, pilih durasi dan jumlah untuk instans langganan. Anda dapat memilih 1 hingga 9 bulan untuk langganan bulanan, atau 1, 2, 3, atau 5 tahun untuk langganan tahunan.
CatatanOpsi ini muncul hanya ketika metode penagihan adalah Subscription.
Setelah menyelesaikan konfigurasi, baca dan pilih Data Transmission Service (Pay-as-you-go) Service Terms.
Klik Buy and Start, lalu klik OK di kotak dialog OK.
Anda dapat melihat progres tugas di halaman sinkronisasi data.
Pemetaan tipe data
Kategori | Tipe data di ApsaraDB RDS for MySQL | Tipe data di 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 ZEROFILL tidak didukung. | |
Numeric | Decimal | |
Float | Float | |
Double | DOUBLE | |
| BOOLEAN | |
TANGGAL DAN WAKTU | DATE | DATEV2 |
DATETIME[(fsp)] | DATETIMEV2 | |
Timestamp[(fsp)] | DATETIMEV2 | |
Time[(fsp)] | VARCHAR | |
YEAR[(4)] | INT | |
STRING |
| VARCHAR Penting Untuk menghindari kehilangan data, data tipe CHAR dan VARCHAR(n) dikonversi ke VARCHAR(4*n) setelah disinkronkan ke database Doris tujuan.
|
| STRING | |
| STRING | |
| STRING | |
ENUM | STRING | |
SET | STRING | |
JSON | STRING |
Kolom tambahan
Kolom tambahan
Tabel berikut menjelaskan kolom tambahan yang secara otomatis ditambahkan oleh DTS atau yang harus Anda tambahkan secara manual ke tabel tujuan yang menggunakan model Duplicate Key.
Nama | Tipe data | Nilai default | Deskripsi |
_is_deleted | Int | 0 | Menunjukkan apakah data dihapus.
|
_version | Bigint | 0 |
|
_record_id | Bigint | 0 |
|