Migrasikan data dari Oracle ke Microsoft Azure Cosmos DB Cassandra API menggunakan Blitzz

BERLAKU UNTUK: Cassandra API

Cassandra API di Microaoft Azure Cosmos DB telah menjadi pilihan yang bagus untuk beban kerja perusahaan yang berjalan di Oracle karena berbagai alasan seperti:

  • Skalabilitas dan ketersediaan yang lebih baik: Hal ini menghilangkan satu titik kegagalan, skalabilitas yang lebih baik, dan ketersediaan untuk aplikasi Anda.

  • Penghematan biaya yang signifikan: Anda dapat menghemat biaya dengan Microaoft Azure Cosmos DB yang mencakup biaya Komputer Virtual, bandwidth, dan lisensi yang berlaku. Anda tidak perlu mengelola pusat data, server, penyimpanan SSD, jaringan, dan biaya listrik.

  • Tidak ada biaya pengelolaan dan pemantauan: Sebagai layanan cloud yang dikelola sepenuhnya, Microsoft Azure Cosmos DB menghapus biaya mengelola dan memantau berbagai macam pengaturan.

Ada banyak cara untuk memigrasikan beban kerja database dari satu platform ke platform lainnya. Blitzz adalah alat yang menawarkan cara yang aman dan andal untuk melakukan migrasi tanpa waktu henti dari berbagai database ke Microsoft Azure Cosmos DB. Artikel ini menjelaskan langkah-langkah yang diperlukan untuk melakukan migrasi data dari database Oracle ke Microaoft Azure Cosmos DB Cassandra API menggunakan Blitzz.

Manfaat menggunakan Blitzz untuk migrasi

Solusi migrasi Blitzz mengikuti pendekatan langkah demi langkah untuk memigrasikan beban kerja operasional yang kompleks. Berikut ini adalah beberapa aspek utama dari rencana migrasi nol-downtime Blitzz:

  • Ini menawarkan migrasi otomatis logika bisnis (tabel, indeks, tampilan) dari database Oracle ke Microsoft Azure Cosmos DB. Anda tidak perlu membuat skema secara manual.

  • Blitzz menawarkan replikasi database volume tinggi dan paralel. Ini memungkinkan platform sumber dan target untuk disinkronkan selama migrasi dengan menggunakan teknik yang disebut Change-Data-Capture (CDC). Dengan menggunakan CDC, Blitzz terus-menerus menarik aliran perubahan dari database sumber (Oracle) dan menerapkannya ke database tujuan (Microaoft Azure Cosmos DB).

  • Ini toleran terhadap kesalahan dan menjamin persis sekali pengiriman data bahkan selama kegagalan perangkat keras atau perangkat lunak dalam sistem.

  • Ini mengamankan data selama transit menggunakan berbagai metodologi keamanan seperti TLS/SSL, enkripsi.

  • Ini menawarkan layanan untuk mengkonversi logika bisnis kompleks yang ditulis dalam PL/SQL menjadi logika bisnis yang setara di Microsoft Azure Cosmos DB.

Langkah-langkah untuk migrasi data

Bagian ini menjelaskan langkah-langkah yang diperlukan untuk mengatur Blitzz dan memigrasikan data dari database Oracle ke Microsoft Azure Cosmos DB.

  1. Dari komputer tempat Anda berencana untuk menginstal replika Blitzz, tambahkan sertifikat keamanan. Sertifikat ini diperlukan oleh replika Blitzz untuk membuat koneksi TLS dengan akun Microaoft Azure Cosmos DB yang ditentukan. Anda bisa menambahkan sertifikat dengan langkah-langkah berikut:

    wget https://cacert.omniroot.com/bc2025.crt
    mv bc2025.crt bc2025.cer
    keytool -keystore $JAVA_HOME/lib/security/cacerts -importcert -alias bc2025ca -file bc2025.cer
    
  2. Anda bisa mendapatkan instalasi Blitzz dan file biner baik dengan meminta demo di situs web Blitzz. Atau, Anda juga dapat mengirim email ke tim.

    Unduhan alat replika Blitzz

    File replika Blitzz

  3. Dari terminal CLI, siapkan konfigurasi database sumber. Buka file konfigurasi menggunakan perintah vi conf/conn/oracle.yml dan tambahkan daftar alamat IP yang dipisahkan koma dari simpul oracle, nomor port, nama pengguna, kata sandi, dan detail lain yang diperlukan. Gambar berikut menunjukkan contoh konfigurasi:

    type: ORACLE
    
    host: localhost
    port: 53546
    
    service-name: IO
    
    username: '<Username of your Oracle database>'
    password: '<Password of your Oracle database>'
    
    conn-cnt: 30
    use-ssl: false
    

    Buka editor koneksi Oracle

    Konfigurasi koneksi Oracle

    Setelah mengisi detail konfigurasi, simpan dan tutup file.

  4. Secara opsional, Anda bisa menyiapkan file filter database sumber. File filter menentukan skema atau tabel mana yang akan dimigrasikan. Buka file konfigurasi menggunakan perintah vi filter/oracle_filter.yml dan masukkan detail konfigurasi berikut:

    
    allow:
    -    schema: “io_blitzz”
    Types: [TABLE]
    

    Setelah mengisi detail filter database, simpan dan tutup file.

  5. Selanjutnya Anda akan mengatur konfigurasi database tujuan. Sebelum Anda menentukan konfigurasi, buat akun API Microaoft Azure Cosmos DB Cassandra. Pilih tombol partisi yang tepat dari data Anda lalu buat Keyspace, dan tabel untuk menyimpan data yang dimigrasikan.

  6. Sebelum memigrasikan data, tingkatkan throughput kontainer ke jumlah yang diperlukan agar aplikasi Anda bermigrasi dengan cepat. Misalnya, Anda dapat meningkatkan throughput ke 100000 RU. Menskalakan throughput sebelum memulai migrasi akan membantu Anda melakukan migrasi data dalam waktu yang lebih singkat.

    Skalakan throughput kontainer Azure Cosmos

    Anda harus mengurangi throughput setelah migrasi selesai. Berdasarkan jumlah data yang disimpan dan RU yang diperlukan untuk setiap operasi, Anda dapat memperkirakan throughput yang diperlukan setelah migrasi data. Untuk mempelajari selengkapnya tentang cara memperkirakan RU yang diperlukan, lihat Throughput penyediaan pada kontainer dan database dan Estimasi RU/s menggunakan artikel perencana kapasitas Microsoft Azure Cosmos DB.

  7. Dapatkan Titik Kontak, Port, Nama Pengguna, , dan Kata Sandi Utama akun Microaoft Azure Cosmos Anda dari panel String Koneksi. Anda akan menggunakan nilai-nilai ini dalam file konfigurasi.

  8. Dari terminal CLI, siapkan konfigurasi database sumber. Buka file konfigurasi menggunakan perintah vi conf/conn/cosmosdb.yml dan tambahkan daftar URI host yang dipisahkan koma, nomor port, nama pengguna, kata sandi, dan parameter lain yang diperlukan. Berikut ini adalah contoh konten dalam file konfigurasi:

    type: COSMOSDB
    
    host: `<Azure Cosmos account’s Contact point>`
    port: 10350
    
    username: 'blitzzdemo'
    password: `<Your Azure Cosmos account’s primary password>'
    
    max-connections: 30
    use-ssl: false
    
  9. Selanjutnya migrasikan data menggunakan Blitzz. Anda dapat menjalankan replika Blizz pada mode penuh atau rekam jepret:

    • Mode penuh - Dalam mode ini, replika terus berjalan setelah migrasi dan mendengarkan setiap perubahan pada sistem Oracle sumber. Jika mendeteksi perubahan apa pun, mereka direplikasi pada akun Microsoft Azure Cosmos target secara real time.

    • Mode rekam jepret - Dalam mode ini, Anda dapat melakukan migrasi skema dan replikasi data satu kali. Replikasi real-time tidak didukung dengan opsi ini.

    Dengan menggunakan dua mode di atas, migrasi dapat dilakukan dengan waktu henti nol.

  10. Untuk memigrasikan data, dari terminal CLI replika Blitzz, jalankan perintah berikut:

    ./bin/replicant full conf/conn/oracle.yaml conf/conn/cosmosdb.yaml --filter filter/oracle_filter.yaml --replace-existing
    

    UI replikasi menunjukkan kemajuan replikasi. Setelah operasi migrasi skema dan rekam jepret selesai, kemajuan menunjukkan 100%. Setelah migrasi selesai, Anda dapat memvalidasi data pada database Azure Cosmos target.

    Output migrasi data Oracle

  11. Karena Anda telah menggunakan mode penuh untuk migrasi, Anda bisa melakukan operasi seperti menyisipkan, memperbarui, atau menghapus data pada database Oracle sumber. Nantinya Anda dapat memvalidasi bahwa mereka direplikasi secara real time pada database Azure Cosmos target. Setelah migrasi, pastikan untuk mengurangi throughput yang dikonfigurasi untuk kontainer Azure Cosmos Anda.

  12. Anda dapat menghentikan replika pada titik mana pun dan memulai ulang dengan tombol --lanjutkan. Replikasi dilanjutkan dari titik yang telah dihentikan tanpa mengorbankan konsistensi data. Perintah berikut ini memperlihatkan cara menggunakan tombol lanjutkan.

    ./bin/replicant full conf/conn/oracle.yaml conf/conn/cosmosdb.yaml --filter filter/oracle_filter.yaml --replace-existing --resume
    

Untuk mempelajari lebih lanjut tentang migrasi data ke tujuan, migrasi real-time, lihat demo replika Blitzz.

Langkah berikutnya