Pelajari cara menggunakan Data Transmission Service (DTS) untuk memigrasikan data dari kluster PolarDB for PostgreSQL (Compatible with Oracle) ke instans Message Queue for Apache Kafka.
Prasyarat
-
Pada kluster sumber PolarDB for PostgreSQL (Oracle-compatible), parameter wal_level harus diatur ke logical agar informasi yang diperlukan untuk logical decoding ditambahkan ke write-ahead logging (WAL). Untuk informasi selengkapnya, lihat Setel parameter kluster.
-
Buat instans tujuan Alibaba Cloud Message Queue for Kafka dengan kapasitas penyimpanan lebih besar daripada yang digunakan oleh instans sumber PolarDB for PostgreSQL (Compatible with Oracle).
CatatanUntuk informasi versi yang didukung untuk sumber dan tujuan, lihat Ikhtisar solusi migrasi.
-
Buat topik di instans tujuan Alibaba Cloud Message Queue for Kafka untuk menerima data yang dimigrasikan. Untuk petunjuknya, lihat Langkah 1: Buat topik.
Batasan
|
Jenis |
Deskripsi |
|
Batasan database sumber |
|
|
Batasan lainnya |
|
Penagihan
|
Jenis migrasi |
Biaya konfigurasi tugas |
Biaya lalu lintas internet |
|
Migrasi skema dan migrasi data penuh |
Gratis. |
DTS mengenakan biaya lalu lintas internet ketika Access Method database tujuan diatur ke Public IP Address. Ikhtisar penagihan. |
|
Migrasi data inkremental |
Dikenai biaya. Ikhtisar penagihan. |
Operasi SQL yang didukung untuk migrasi inkremental
|
Jenis |
Pernyataan SQL |
|
DML |
INSERT, UPDATE, dan DELETE |
|
DDL |
Penting
|
Izin akun database
|
Database |
Izin |
Referensi |
|
kluster PolarDB for PostgreSQL (Compatible with Oracle) |
akun istimewa |
Prosedur
Buka halaman daftar tugas migrasi untuk wilayah tujuan menggunakan salah satu metode berikut.
Dari Konsol DTS
Login ke Konsol Data Transmission Service (DTS).
Di panel navigasi kiri, klik Data Migration.
Di pojok kiri atas halaman, pilih wilayah tempat instans migrasi berada.
Dari Konsol DMS
CatatanOperasi aktual dapat berbeda tergantung mode dan tata letak Konsol DMS. Untuk informasi selengkapnya, lihat Konsol mode sederhana dan Sesuaikan tata letak dan gaya Konsol DMS.
Login ke Konsol Data Management (DMS).
Di bilah menu atas, pilih .
Di sebelah kanan Data Migration Tasks, pilih wilayah tempat instans migrasi berada.
Klik Create Task untuk membuka halaman konfigurasi tugas.
-
Konfigurasikan database sumber dan tujuan.
CatatanUntuk informasi cara memperoleh parameter instans tujuan Message Queue for Apache Kafka, lihat Konfigurasi parameter untuk instans Message Queue for Apache Kafka.
Kategori
Parameter
Deskripsi
N/A
Task Name
DTS secara otomatis menghasilkan nama tugas. Kami merekomendasikan menentukan nama deskriptif agar mudah diidentifikasi. Nama tersebut tidak harus unik.
Source Database
Select Existing Connection
Untuk menggunakan instans database yang telah ditambahkan ke sistem (dibuat atau disimpan), pilih instans database yang diinginkan dari daftar drop-down. Informasi database di bawah ini akan dikonfigurasi secara otomatis.
CatatanDi Konsol DMS, parameter ini bernama Select a DMS database instance..
Jika Anda belum mendaftarkan instans database ke sistem, atau tidak perlu menggunakan instans yang terdaftar, konfigurasikan informasi database secara manual di bawah ini.
Database Type
Pilih PolarDB (Compatible with Oracle).
Access Method
Pilih Alibaba Cloud Instance.
Instance Region
Pilih wilayah tempat kluster sumber PolarDB (Compatible with Oracle) berada.
Replicate Data Across Alibaba Cloud Accounts
Dalam contoh ini, data dimigrasikan dalam satu akun Alibaba Cloud yang sama. Pilih No.
Instance ID
Pilih ID instans kluster sumber PolarDB (Compatible with Oracle).
Database Name
Masukkan nama database di kluster sumber PolarDB (Compatible with Oracle) yang berisi objek yang akan dimigrasikan.
Database Account
Masukkan akun database untuk kluster sumber PolarDB (Compatible with Oracle). Untuk informasi izin yang diperlukan, lihat Izin yang diperlukan untuk akun database.
Database Password
Masukkan password yang sesuai dengan akun database.
Destination Database
Select Existing Connection
Untuk menggunakan instans database yang telah ditambahkan ke sistem (dibuat atau disimpan), pilih instans database yang diinginkan dari daftar drop-down. Informasi database di bawah ini akan dikonfigurasi secara otomatis.
CatatanDi Konsol DMS, parameter ini bernama Select a DMS database instance..
Jika Anda belum mendaftarkan instans database ke sistem, atau tidak perlu menggunakan instans yang terdaftar, konfigurasikan informasi database secara manual di bawah ini.
Database Type
Pilih Kafka.
Access Method
Pilih Express Connect, VPN Gateway, or Smart Access Gateway.
CatatanPada langkah ini, instans Message Queue for Apache Kafka dikonfigurasi sebagai database Kafka yang dikelola sendiri untuk instans migrasi.
Instance Region
Pilih wilayah tempat instans tujuan Message Queue for Apache Kafka berada.
Connected VPC
Pilih ID Virtual Private Cloud (VPC) tempat instans tujuan Message Queue for Apache Kafka berada.
Domain Name or IP
Masukkan alamat IP apa pun dari Default Endpoint instans tujuan Message Queue for Apache Kafka.
Port Number
Masukkan port layanan instans tujuan Message Queue for Apache Kafka. Nilai default-nya adalah 9092.
Database Account
Anda tidak perlu mengonfigurasi parameter ini dalam contoh ini.
Database Password
Kafka Version
Pilih versi yang sesuai dengan instans Kafka Anda.
Encryption
Berdasarkan kebutuhan bisnis dan keamanan Anda, pilih Non-encrypted atau SCRAM-SHA-256.
Topic
Dari daftar drop-down, pilih Topik untuk menerima data.
Use Kafka Schema Registry
Kafka Schema Registry adalah lapisan layanan untuk metadata Anda. Layanan ini menyediakan API RESTful untuk menyimpan dan mengambil skema Avro.
-
No: Jangan gunakan Kafka Schema Registry.
-
Yes: Gunakan Kafka Schema Registry. Di field URL or IP Address of Schema Registry, masukkan URL atau alamat IP yang terdaftar di Kafka Schema Registry untuk skema Avro Anda.
Setelah menyelesaikan konfigurasi, klik Test Connectivity and Proceed di bagian bawah halaman.
CatatanPastikan segmen alamat IP layanan DTS telah ditambahkan secara otomatis atau manual ke pengaturan keamanan database sumber dan tujuan untuk mengizinkan akses dari server DTS. Untuk informasi selengkapnya, lihat Tambahkan alamat IP server DTS ke daftar putih.
Jika database sumber atau tujuan adalah database yang dikelola sendiri (Access Method bukan Alibaba Cloud Instance), Anda juga harus mengklik Test Connectivity di kotak dialog CIDR Blocks of DTS Servers yang muncul.
-
Konfigurasikan objek tugas.
-
Di halaman Configure Objects, atur objek yang ingin dimigrasikan.
Parameter
Deskripsi
Migration Types
-
Jika hanya perlu melakukan migrasi data penuh, pilih Schema Migration dan Full Data Migration.
-
Untuk migrasi tanpa downtime, pilih Schema Migration, Full Data Migration, dan Incremental Data Migration.
Catatan-
Jika Access Method untuk instans Kafka tujuan adalah Alibaba Cloud Instance, Schema Migration tidak didukung.
-
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: Memeriksa apakah tabel dengan nama yang sama ada di database tujuan. Jika tidak ada tabel dengan nama yang sama, pemeriksaan awal lolos. Jika ada tabel dengan nama yang sama, error dilaporkan selama pemeriksaan awal, dan tugas migrasi data tidak dimulai.
CatatanJika tabel di database tujuan memiliki nama yang sama tetapi tidak dapat dengan mudah dihapus atau diganti namanya, Anda dapat mengubah nama tabel di database tujuan. Untuk informasi selengkapnya, lihat Pemetaan nama objek.
Ignore Errors and Proceed: Melewati pemeriksaan untuk tabel dengan nama yang sama.
PeringatanMemilih Ignore Errors and Proceed dapat menyebabkan ketidakkonsistenan data dan risiko bisnis. Misalnya:
Jika skema tabel konsisten dan catatan di database tujuan memiliki nilai primary key yang sama dengan catatan di database sumber:
Selama migrasi penuh, DTS menyimpan catatan di database tujuan. Catatan dari database sumber tidak dimigrasikan.
Selama migrasi inkremental, DTS tidak menyimpan catatan di database tujuan. Catatan dari database sumber menimpa catatan di database tujuan.
Jika skema tabel tidak konsisten, hanya beberapa kolom data yang mungkin dimigrasikan, atau migrasi dapat gagal. Lakukan dengan hati-hati.
Data Format in Kafka
Pilih format penyimpanan data di instans Kafka berdasarkan kebutuhan bisnis Anda.
-
Jika memilih Canal JSON, lihat Canal JSON untuk deskripsi parameter dan contohnya.
CatatanSaat ini, hanya wilayah China (Qingdao) dan China (Beijing) yang mendukung format Canal JSON.
Jika memilih DTS Avro, Anda harus mengurai data berdasarkan definisi skema DTS Avro. Untuk informasi selengkapnya, lihat Definisi skema DTS Avro dan Contoh deserialisasi DTS Avro.
-
Jika memilih Shareplex JSON, lihat Shareplex JSON untuk deskripsi parameter dan contohnya.
Kafka Data Compression Format
Pilih format kompresi untuk pesan Kafka berdasarkan kebutuhan Anda.
LZ4 (default): rasio kompresi rendah, kecepatan kompresi tinggi.
GZIP: rasio kompresi tinggi, kecepatan kompresi rendah.
CatatanKonsumsi CPU tinggi.
Snappy: rasio kompresi sedang, kecepatan kompresi sedang.
Policy for Shipping Data to Kafka Partitions
Pilih kebijakan berdasarkan kebutuhan bisnis Anda.
Message acknowledgement mechanism
Pilih mekanisme pengakuan pesan berdasarkan kebutuhan bisnis Anda.
Topic That Stores DDL Information
Pilih topik untuk menyimpan informasi DDL.
CatatanJika tidak ada topik yang dipilih, DTS menyimpan informasi DDL di topik data secara default.
Capitalization of Object Names in Destination Instance
Anda dapat mengonfigurasi kebijakan sensitivitas huruf besar/kecil untuk nama objek yang dimigrasikan, seperti database, tabel, dan kolom, di instans tujuan. Secara default, DTS default policy dipilih. Anda juga dapat memilih untuk menjaga sensitivitas huruf besar/kecil konsisten dengan kebijakan default database sumber atau tujuan. Untuk informasi selengkapnya, lihat Sensitivitas huruf besar/kecil nama objek di database tujuan.
Source Objects
Di kotak Source Objects, klik objek yang akan dimigrasikan, lalu klik
untuk memindahkannya ke kotak Selected Objects.CatatanAnda dapat memilih tabel sebagai objek migrasi.
Selected Objects
Tidak diperlukan konfigurasi tambahan dalam contoh ini. Anda dapat menggunakan fitur pemetaan untuk mengatur nama Topik, jumlah partisi di Topik, dan kunci partisi untuk tabel sumber di instans Kafka tujuan. Untuk informasi selengkapnya, lihat Informasi pemetaan.
Catatan-
Jika menggunakan fitur pemetaan nama objek, objek lain yang bergantung pada objek yang dipetakan mungkin gagal dimigrasikan.
-
Untuk memilih operasi SQL untuk migrasi inkremental, klik kanan objek migrasi di kotak Selected Objects, lalu pilih operasi SQL yang diinginkan di kotak dialog yang muncul.
-
-
Klik Next: Advanced Settings untuk mengonfigurasi parameter lanjutan.
Parameter
Deskripsi
Dedicated Cluster for Task Scheduling
Secara default, DTS menjadwalkan tugas di kluster bersama. Anda tidak perlu memilihnya. Jika menginginkan tugas yang lebih stabil, Anda dapat membeli kluster khusus untuk menjalankan tugas migrasi DTS.
Retry Time for Failed Connections
Setelah tugas migrasi dimulai, jika koneksi ke database sumber atau tujuan gagal, DTS melaporkan error dan segera mulai mencoba menghubungkan kembali. Durasi coba ulang default adalah 720 menit. Anda dapat menyesuaikan waktu coba ulang ke nilai antara 10 hingga 1.440 menit. Kami merekomendasikan menetapkan durasi lebih dari 30 menit. Jika DTS berhasil terhubung kembali ke database sumber dan tujuan dalam durasi yang ditentukan, tugas migrasi akan dilanjutkan secara otomatis. Jika tidak, tugas akan gagal.
CatatanUntuk beberapa instans DTS yang berbagi sumber atau tujuan yang sama, waktu coba ulang jaringan ditentukan oleh pengaturan tugas yang terakhir dibuat.
Karena Anda dikenai biaya untuk tugas selama periode coba ulang koneksi, kami merekomendasikan menyesuaikan waktu coba ulang berdasarkan kebutuhan bisnis Anda, atau segera merilis instans DTS setelah instans database sumber dan tujuan dirilis.
Retry Time for Other Issues
Setelah tugas migrasi dimulai, jika terjadi masalah non-konektivitas, seperti exception eksekusi DDL atau DML, di database sumber atau tujuan, DTS melaporkan error dan segera mulai mencoba mengulang operasi tersebut. Durasi coba ulang default adalah 10 menit. Anda dapat menyesuaikan waktu coba ulang ke nilai antara 1 hingga 1.440 menit. Kami merekomendasikan menetapkan durasi lebih dari 10 menit. Jika operasi terkait berhasil dalam durasi coba ulang yang ditentukan, tugas migrasi akan dilanjutkan secara otomatis. Jika tidak, tugas akan gagal.
PentingNilai Retry Time for Other Issues harus lebih kecil dari nilai Retry Time for Failed Connections.
Enable Throttling for Full Data Migration
Selama migrasi penuh, DTS mengonsumsi sumber daya baca dan tulis di database sumber dan tujuan, yang dapat meningkatkan beban database. Jika diperlukan, Anda dapat mengaktifkan pembatasan kecepatan untuk tugas migrasi penuh. Anda dapat mengatur Queries per second (QPS) to the source database, RPS of Full Data Migration, dan Data migration speed for full migration (MB/s) untuk mengurangi beban di database tujuan.
CatatanItem konfigurasi ini tersedia hanya jika Anda memilih Full Data Migration untuk Migration Types.
Anda juga dapat menyesuaikan kecepatan migrasi penuh setelah instans migrasi berjalan.
Enable Throttling for Incremental Data Migration
Jika diperlukan, Anda juga dapat memilih untuk mengatur batas kecepatan untuk tugas migrasi inkremental. Anda dapat mengatur RPS of Incremental Data Migration dan Data migration speed for incremental migration (MB/s) untuk mengurangi beban di database tujuan.
CatatanItem konfigurasi ini tersedia hanya jika Anda memilih Incremental Data Migration untuk Migration Types.
Anda juga dapat menyesuaikan kecepatan migrasi inkremental setelah instans migrasi berjalan.
Environment Tag
Anda dapat memilih tag lingkungan untuk mengidentifikasi instans berdasarkan kebutuhan bisnis Anda. Tidak perlu memilih tag dalam contoh ini.
Configure ETL
Pilih apakah akan mengaktifkan fitur extract, transform, and load (ETL). Untuk informasi selengkapnya, lihat Apa itu ETL? Nilai yang valid:
-
Yes: Mengaktifkan fitur ETL. Masukkan pernyataan pemrosesan data di editor kode. Untuk informasi selengkapnya, lihat Konfigurasi ETL dalam tugas migrasi data atau sinkronisasi data.
-
No: Menonaktifkan fitur ETL.
Monitoring and Alerting
Pilih apakah akan mengatur peringatan dan menerima pemberitahuan peringatan berdasarkan kebutuhan bisnis Anda.
No: Tidak mengatur peringatan.
Yes: Konfigurasikan peringatan dengan mengatur ambang batas peringatan dan pemberitahuan peringatan. Jika migrasi gagal atau latensi melebihi ambang batas, sistem akan mengirimkan pemberitahuan peringatan.
-
Simpan tugas dan jalankan pemeriksaan awal.
Untuk melihat parameter konfigurasi instans ini saat memanggil Operasi API, arahkan pointer ke tombol Next: Save Task Settings and Precheck lalu klik Preview OpenAPI parameters di balon yang muncul.
Jika tidak perlu melihat atau telah selesai melihat parameter API, klik Next: Save Task Settings and Precheck di bagian bawah halaman.
CatatanSebelum tugas migrasi dimulai, DTS melakukan pemeriksaan awal. Tugas hanya dimulai setelah lolos pemeriksaan awal.
Jika pemeriksaan awal gagal, klik View Details di sebelah item pemeriksaan yang gagal, perbaiki masalah berdasarkan prompt, lalu jalankan pemeriksaan awal lagi.
Jika peringatan dilaporkan selama pemeriksaan awal:
Untuk item pemeriksaan yang tidak dapat diabaikan, klik View Details di sebelah item yang gagal, perbaiki masalah berdasarkan prompt, lalu jalankan pemeriksaan awal lagi.
Untuk item pemeriksaan yang dapat diabaikan, Anda dapat mengklik Confirm Alert Details, Ignore, OK, dan Precheck Again untuk melewati item peringatan dan menjalankan pemeriksaan awal lagi. Jika memilih mengabaikan peringatan, hal ini dapat menyebabkan masalah seperti ketidakkonsistenan data dan menimbulkan risiko bagi bisnis Anda.
-
Beli instans.
Saat Success Rate mencapai 100%, klik Next: Purchase Instance.
Di halaman Purchase, pilih spesifikasi link untuk instans migrasi data. Untuk informasi selengkapnya, lihat tabel berikut.
Kategori
Parameter
Deskripsi
New Instance Class
Resource Group Settings
Pilih kelompok sumber daya tempat instans tersebut berada. Nilai default-nya adalah kelompok sumber daya default. Untuk informasi selengkapnya, lihat Apa itu manajemen sumber daya?
Instance Class
DTS menyediakan spesifikasi migrasi dengan tingkat kinerja berbeda. Spesifikasi link memengaruhi kecepatan migrasi. Anda dapat memilih spesifikasi berdasarkan skenario bisnis Anda. Untuk informasi selengkapnya, lihat Spesifikasi link migrasi data.
Setelah konfigurasi selesai, baca dan pilih Data Transmission Service (Pay-as-you-go) Service Terms.
Klik Buy and Start. Di kotak dialog OK yang muncul, klik OK.
Anda dapat melihat progres tugas migrasi di halaman daftar Data Migration Tasks.
CatatanJika tugas migrasi tidak mencakup migrasi inkremental, tugas akan berhenti secara otomatis setelah migrasi penuh selesai. Setelah tugas berhenti, Status-nya berubah menjadi Completed.
Jika tugas migrasi mencakup migrasi inkremental, tugas tidak berhenti secara otomatis. Tugas migrasi inkremental terus berjalan. Selama tugas migrasi inkremental berjalan, Status tugas adalah Running.
Informasi pemetaan
-
Di area Selected Objects, arahkan kursor ke nama topik tujuan (pada level tabel).
-
Klik Edit di sebelah nama topik tujuan.
-
Di kotak dialog Edit Table, konfigurasikan informasi pemetaan.
Catatan-
Kotak dialog ini berjudul Edit Schema pada level skema dan Edit Table pada level tabel. Kotak dialog Edit Schema berisi lebih sedikit parameter.
-
Jika Anda tidak memigrasikan seluruh skema, Anda tidak dapat memodifikasi Name of target Topic dan Number of Partitions di kotak dialog Edit Schema.
Parameter
Deskripsi
Name of target Topic
Nama topik tujuan yang menerima data dari tabel sumber. Secara default, ini adalah Topic yang Anda pilih di bagian Destination Database selama langkah Configurations for Source and Destination Databases.
Penting-
Untuk instans Alibaba Cloud Message Queue for Apache Kafka, topik yang ditentukan harus sudah ada. Jika tidak, migrasi data akan gagal. Untuk database Kafka yang dikelola sendiri, jika tugas migrasi dikonfigurasi untuk membuat struktur skema dan tabel, DTS akan mencoba membuat topik yang ditentukan.
-
Jika Anda mengubah Name of target Topic, data akan ditulis ke topik baru.
Filter Conditions
Untuk informasi selengkapnya, lihat Atur kondisi filter.
Number of Partitions
Menentukan jumlah partisi untuk topik tujuan.
Partition Key
Jika Anda mengatur parameter Policy for Shipping Data to Kafka Partitions ke Ship Data to Separate Partitions Based on Hash Values of Primary Keys, Anda harus mengonfigurasi parameter ini. Tentukan satu atau beberapa kolom sebagai kunci partisi. DTS menghitung nilai hash dari kunci tersebut dan menggunakan nilai tersebut untuk mendistribusikan baris ke partisi di topik tujuan. Jika tidak, kebijakan ini tidak diterapkan selama fase penulisan inkremental.
CatatanAnda hanya dapat memilih Partition Key di kotak dialog Edit Table.
-
-
Klik OK.