Topik ini menjelaskan cara memigrasikan data dari database Oracle yang dikelola sendiri ke instans Message Queue for Kafka menggunakan Data Transmission Service (DTS).
Prasyarat
-
Anda telah membuat database Oracle sumber yang dikelola sendiri dan instans Message Queue for Apache Kafka tujuan.
CatatanUntuk versi database sumber dan instans tujuan yang didukung, lihat Skenario migrasi.
Anda telah mengaktifkan mode ARCHIVELOG untuk database Oracle yang dikelola sendiri, menetapkan periode retensi yang sesuai untuk file log arsip, dan memastikan bahwa file log arsip dapat diakses. Untuk informasi selengkapnya, lihat ARCHIVELOG.
Anda telah mengaktifkan pencatatan tambahan (supplemental logging) untuk database Oracle yang dikelola sendiri serta menyetel parameter supplemental_log_data_pk dan supplemental_log_data_ui ke YES. Untuk informasi selengkapnya, lihat Supplemental Logging.
-
Ruang penyimpanan instans Message Queue for Apache Kafka tujuan harus lebih besar daripada ruang penyimpanan yang digunakan oleh database Oracle sumber yang dikelola sendiri.
-
Sebuah topik telah dibuat di instans Message Queue for Apache Kafka tujuan untuk menerima data yang dimigrasikan. Untuk informasi selengkapnya, lihat Langkah 1: Buat topik.
Sebelum melakukan migrasi data, kami menyarankan agar Anda memahami kemampuan dan keterbatasan DTS untuk sumber Oracle serta menggunakan ADAM untuk melakukan evaluasi database guna memastikan migrasi ke cloud berjalan lancar. Untuk informasi selengkapnya, lihat Keterbatasan dan persiapan untuk database Oracle dan Ikhtisar evaluasi database.
Batasan
DTS tidak memigrasikan kunci asing (foreign keys). Akibatnya, operasi kaskade seperti cascade delete di database sumber tidak direplikasi di database tujuan.
|
Jenis |
Deskripsi |
|
Batasan database sumber |
|
|
Batasan lainnya |
|
Penagihan
|
Jenis migrasi |
Biaya konfigurasi instans |
Biaya lalu lintas Internet |
|
Migrasi skema dan migrasi data penuh |
Gratis. |
Saat parameter Access Method pada database tujuan diatur ke Public IP Address, Anda akan dikenai biaya untuk lalu lintas internet. Untuk informasi selengkapnya, lihat Ikhtisar penagihan. |
|
Migrasi data inkremental |
Dikenai biaya. Untuk informasi selengkapnya, lihat Ikhtisar penagihan. |
Jenis migrasi
|
Jenis |
Deskripsi |
|
Migrasi skema |
DTS memigrasikan definisi skema objek migrasi ke instans Message Queue for Apache Kafka tujuan. Catatan
DTS tidak memigrasikan trigger. Untuk mencegah ketidakkonsistenan data, hapus trigger dari database sumber. Untuk informasi selengkapnya, lihat Konfigurasi tugas sinkronisasi atau migrasi data untuk database sumber yang berisi trigger. |
|
Migrasi data penuh |
DTS memigrasikan semua data yang ada dari database Oracle sumber Anda ke instans Message Queue for Apache Kafka tujuan. Catatan
Jangan lakukan operasi DDL pada objek migrasi sampai migrasi skema dan migrasi data penuh selesai. Jika tidak, tugas migrasi mungkin gagal. |
|
Migrasi data inkremental |
Setelah migrasi data penuh selesai, DTS menangkap perubahan inkremental dari redo log database Oracle sumber dan memigrasikannya ke instans Message Queue for Apache Kafka tujuan. Proses ini memastikan migrasi lancar dengan downtime aplikasi minimal. |
Operasi SQL yang didukung untuk migrasi inkremental
|
Jenis operasi |
Pernyataan SQL |
|
DML |
INSERT, UPDATE, dan DELETE |
|
DDL |
|
Persiapan
Login ke database Oracle yang dikelola sendiri yang akan dimigrasikan, buat akun untuk pengumpulan data, dan berikan izin yang diperlukan kepada akun tersebut.
Jika Anda telah membuat akun dengan izin yang tercantum di bawah, Anda dapat melewati langkah ini.
|
Database |
Migrasi skema |
Migrasi data penuh |
Migrasi data inkremental |
|
Database Oracle sumber |
Izin pemilik skema |
Izin pemilik skema |
Izin detail halus (fine-grained) |
Untuk membuat akun database dan memberikan izin:
Untuk database Oracle yang dikelola sendiri, lihat Persiapan akun database, CREATE USER, dan GRANT.
Untuk memigrasikan data inkremental, Anda juga harus mengaktifkan pencatatan arsip (archive logging) dan pencatatan tambahan (supplemental logging). Untuk informasi selengkapnya, lihat konfigurasi database.
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 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.
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.
-
Konfigurasi database sumber dan tujuan.
PeringatanSetelah memilih instans sumber dan tujuan, kami menyarankan agar Anda membaca dengan cermat batasan yang ditampilkan di bagian atas halaman. Jika tidak, tugas mungkin gagal atau terjadi ketidakkonsistenan data.
Bagian
Parameter
Deskripsi
N/A
Task Name
DTS secara otomatis menghasilkan nama tugas. Kami menyarankan agar Anda menentukan nama deskriptif untuk memudahkan identifikasi. Nama tidak perlu 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 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.
Database Type
Pilih Oracle.
Access Method
Pilih jenis koneksi yang sesuai dengan penyebaran database sumber Anda. Topik ini menggunakan Self-managed Database on ECS sebagai contoh.
CatatanJika instans sumber adalah database yang dikelola sendiri, Anda harus melakukan persiapan tambahan. Untuk informasi selengkapnya, lihat Ikhtisar persiapan.
Instance Region
Pilih wilayah database Oracle sumber.
ECS Instance ID
Pilih ID instans ECS yang menghosting database Oracle yang dikelola sendiri Anda.
Port Number
Masukkan port layanan database Oracle yang dikelola sendiri. Nilai default adalah 1521.
Oracle Type
-
Non-RAC Instance: Jika memilih opsi ini, Anda juga harus menentukan SID.
-
RAC or PDB Instance: Jika memilih opsi ini, Anda juga harus menentukan Service Name.
Dalam topik ini, Non-RAC Instance dipilih.
Database Account
Masukkan akun untuk database Oracle sumber. Untuk informasi tentang izin yang diperlukan, lihat Persiapan.
Database Password
Masukkan password untuk 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 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.
Database Type
Pilih Kafka.
Access Method
Pilih Express Connect, VPN Gateway, or Smart Access Gateway.
CatatanUntuk konfigurasi ini, perlakukan instans Message Queue for Apache Kafka sebagai database Kafka yang dikelola sendiri.
Instance Region
Pilih wilayah instans Message Queue for Apache Kafka.
Connected VPC
Pilih ID Virtual Private Cloud (VPC) dari instans Message Queue for Apache Kafka tujuan. Anda dapat menemukan ID VPC di halaman Basic Information instans Kafka Anda.
Hostname or IP Address
Masukkan alamat IP dari Default Endpoint untuk instans Message Queue for Apache Kafka.
CatatanAnda dapat memperoleh alamat IP dari Default Endpoint di halaman Basic Information instans Message Queue for Apache Kafka Anda.
Port Number
Port layanan instans Message Queue for Apache Kafka. Default-nya adalah 9092.
Database Account
Masukkan akun database instans Message Queue for Apache Kafka.
CatatanJika instans Message Queue for Apache Kafka Anda bertipe VPC, Anda tidak perlu mengonfigurasi Database Account dan Database Password.
Database Password
Masukkan password untuk akun database.
Kafka Version
Pilih versi instans Kafka Anda.
Connection Method
Pilih Non-encrypted atau SCRAM-SHA-256.
Topic
Dari daftar drop-down, pilih topik tempat Anda ingin mengirim data.
Use Kafka Schema Registry
Kafka Schema Registry adalah lapisan layanan untuk metadata Anda. Ini menyediakan antarmuka RESTful untuk menyimpan dan mengambil skema Avro.
-
No: Jangan gunakan Kafka Schema Registry.
-
Yes: Gunakan Kafka Schema Registry. Anda harus memasukkan URL atau alamat IP skema Avro dari Kafka Schema Registry.
Setelah menyelesaikan konfigurasi, klik Test Connectivity and Proceed di bagian bawah halaman. Di kotak dialog CIDR Blocks of DTS Servers yang muncul, klik Test Connectivity.
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.
-
Konfigurasi objek tugas.
-
Di halaman Configure Objects, konfigurasikan objek yang ingin Anda migrasikan.
Parameter
Deskripsi
Migration Types
Jika hanya perlu melakukan migrasi penuh, pilih Schema Migration dan Full Data Migration.
Untuk melakukan migrasi tanpa downtime, pilih Schema Migration, Full Data Migration, dan Incremental Data Migration.
CatatanJika Anda tidak memilih Schema Migration, Anda harus memastikan bahwa database dan tabel untuk menerima data sudah ada di database tujuan. Anda juga dapat menggunakan fitur pemetaan nama objek di kotak Selected Objects sesuai kebutuhan.
Jika Anda tidak memilih Incremental Data Migration, jangan menulis data baru ke instans sumber selama migrasi data untuk memastikan konsistensi data.
Processing Mode for Existing Destination 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, kesalahan 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 kunci primer 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 mungkin gagal. Lakukan dengan hati-hati.
Data Format in Kafka
Pilih format untuk menyimpan data di instans Kafka tujuan.
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 contoh.
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.
Message acknowledgement mechanism
Pilih mekanisme pengakuan pesan.
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.
Source Objects
Di kotak Source Objects, klik objek yang akan dimigrasikan, lalu klik
untuk memindahkannya ke kotak Selected Objects.Selected Objects
Tidak diperlukan konfigurasi tambahan dalam contoh ini. Anda dapat menggunakan fitur pemetaan untuk menyetel nama topik, jumlah partisi untuk topik, dan kunci partisi untuk tabel sumber di instans Kafka tujuan. Untuk informasi selengkapnya, lihat Informasi pemetaan.
Catatan-
Jika Anda menggunakan fitur pemetaan nama objek, migrasi objek lain yang bergantung pada objek yang dipetakan mungkin gagal.
-
Untuk memilih operasi SQL untuk migrasi data inkremental, klik kanan objek yang akan dimigrasikan di bagian Selected Objects. Di kotak dialog yang muncul, pilih operasi SQL yang diinginkan.
-
Klik Next: Advanced Settings untuk mengonfigurasi parameter lanjutan.
Parameter
Deskripsi
Dedicated Cluster for Task Scheduling
Secara default, DTS menjadwalkan tugas pada kluster bersama. Anda tidak perlu memilihnya. Jika ingin tugas yang lebih stabil, Anda dapat membeli klaster 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 kesalahan dan segera mulai mencoba menghubungkan kembali. Durasi percobaan ulang default adalah 720 menit. Anda dapat menyesuaikan waktu percobaan ulang ke nilai antara 10 hingga 1.440 menit. Kami menyarankan agar Anda menyetel 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 gagal.
CatatanUntuk beberapa instans DTS yang berbagi sumber atau tujuan yang sama, waktu percobaan ulang jaringan ditentukan oleh pengaturan tugas yang terakhir dibuat.
Karena Anda dikenai biaya untuk tugas selama periode percobaan ulang koneksi, kami menyarankan agar Anda menyesuaikan waktu percobaan ulang berdasarkan kebutuhan bisnis Anda, atau segera melepaskan instans DTS setelah instans database sumber dan tujuan dilepaskan.
Retry Time for Other Issues
Setelah tugas migrasi dimulai, jika terjadi masalah non-konektivitas, seperti pengecualian eksekusi DDL atau DML, di database sumber atau tujuan, DTS melaporkan kesalahan dan segera mulai mencoba mengulang operasi tersebut. Durasi percobaan ulang default adalah 10 menit. Anda dapat menyesuaikan waktu percobaan ulang ke nilai antara 1 hingga 1.440 menit. Kami menyarankan agar Anda menyetel durasi lebih dari 10 menit. Jika operasi terkait berhasil dalam durasi percobaan ulang yang ditentukan, tugas migrasi akan dilanjutkan secara otomatis. Jika tidak, tugas gagal.
PentingNilai Retry Time for Other Issues harus lebih kecil daripada 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 menyetel 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 pada 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 menetapkan batas kecepatan untuk tugas migrasi inkremental. Anda dapat menyetel RPS of Incremental Data Migration dan Data migration speed for incremental migration (MB/s) untuk mengurangi beban pada 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. Tidak ada tag yang dipilih dalam contoh ini.
Actual Write Code
Anda dapat memilih set karakter untuk menulis data ke tujuan.
Configure ETL
Pilih apakah akan mengaktifkan fitur ekstrak, transformasi, muat (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 menyetel peringatan dan menerima pemberitahuan peringatan berdasarkan kebutuhan bisnis Anda.
No: Tidak menyetel peringatan.
Yes: Konfigurasikan peringatan dengan menyetel ambang batas peringatan dan pemberitahuan peringatan. Jika migrasi gagal atau latensi melebihi ambang batas, sistem akan mengirim 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 dan klik Preview OpenAPI parameters di gelembung yang muncul.
Jika Anda 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 petunjuk, 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 petunjuk, 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 Anda memilih untuk 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 tautan 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 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 tautan memengaruhi kecepatan migrasi. Anda dapat memilih spesifikasi berdasarkan skenario bisnis Anda. Untuk informasi selengkapnya, lihat Spesifikasi tautan 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.
Pengaturan pemetaan
Di area Selected Objects, arahkan kursor ke nama topik tujuan.
Klik Edit.
Di kotak dialog Edit Table, konfigurasikan pengaturan pemetaan.
CatatanPada tingkat database, muncul kotak dialog Edit Schema, yang menyediakan lebih sedikit parameter. Pada tingkat tabel, muncul kotak dialog Edit Table.
Jika Anda tidak memigrasikan seluruh database, Anda tidak dapat memodifikasi parameter Edit Schema dan Name of target Topic di kotak dialog Number of Partitions.
Parameter
Deskripsi
Name of target Topic
Nama topik tujuan untuk tabel sumber. Secara default, ini adalah Topic yang Anda pilih untuk Destination Database pada langkah Configurations for Source and Destination Databases.
PentingJika database tujuan adalah instans Message Queue for Apache Kafka, nama topik yang Anda masukkan harus ada di instans Kafka tujuan. Jika tidak, migrasi data akan gagal. Jika database tujuan adalah instans Kafka yang dikelola sendiri dan tugas mencakup tugas migrasi skema, DTS akan mencoba membuat topik yang Anda tentukan di database tujuan.
Jika Anda mengubah Name of target Topic, DTS akan menulis data ke topik yang Anda tentukan.
Filter Conditions
Untuk informasi selengkapnya, lihat Konfigurasi kondisi filter.
Number of Partitions
Jumlah partisi di topik tujuan.
Partition Key
Jika Policy for Shipping Data to Kafka Partitions diatur ke Ship Data to Separate Partitions Based on Hash Values of Primary Keys, Anda dapat mengonfigurasi parameter ini. Tentukan satu atau beberapa kolom sebagai kunci partisi. DTS menghitung nilai hash dari kunci tersebut dan menggunakannya untuk mendistribusikan baris ke partisi-partisi topik tujuan.
CatatanAnda dapat memilih Partition Key hanya di kotak dialog Edit Table.
Klik OK.