All Products
Search
Document Center

Data Transmission Service:Migrasi ApsaraDB for MongoDB ke PolarDB for MySQL

Last Updated:Jul 21, 2026

Data Transmission Service (DTS) mendukung migrasi data dari MongoDB ke kluster PolarDB for MySQL. Topik ini memandu Anda melalui proses migrasi menggunakan replica set ApsaraDB for MongoDB sebagai database sumber.

Prasyarat

  • Jika database sumber adalah kluster sharded ApsaraDB for MongoDB, ajukan titik akhir untuk setiap node shard. Pastikan semua node shard menggunakan akun dan kata sandi yang sama. Untuk petunjuknya, lihat Ajukan titik akhir shard.

  • Buat kluster PolarDB for MySQL tujuan dengan kapasitas penyimpanan lebih besar daripada instans ApsaraDB for MongoDB sumber. Untuk petunjuknya, lihat Pembelian Kustom dan Beli kluster subscription.

    Catatan

    Kami menyarankan agar kapasitas penyimpanan kluster tujuan minimal 10% lebih besar daripada kapasitas penyimpanan yang digunakan oleh database sumber.

  • Di kluster PolarDB for MySQL tujuan, buat database dan tabel untuk menerima data. Tabel tersebut harus memiliki primary key. Untuk informasi selengkapnya, lihat Manajemen database.

    Penting
    • Pastikan tipe data pada tabel tujuan kompatibel dengan data MongoDB sumber. Misalnya, jika field _id di MongoDB berupa ObjectId, kolom yang sesuai di kluster PolarDB for MySQL tujuan harus bertipe varchar.

    • Di kluster PolarDB for MySQL, nama kolom pada tabel tujuan tidak boleh _id atau _value.

Catatan

Tipe

Deskripsi

Batasan pada database sumber

  • Keperluan bandwidth: Bandwidth egress yang tidak mencukupi pada server database sumber akan memperlambat migrasi data.

  • Saat memetakan nama koleksi atau melakukan pengeditan lainnya, satu tugas migrasi hanya mendukung hingga 1.000 koleksi. Jika melebihi batas ini, tugas akan gagal saat dikirimkan. Sebagai solusi, bagi koleksi menjadi batch yang lebih kecil dan buat tugas migrasi terpisah untuk masing-masing batch.

  • Jika database sumber adalah instans MongoDB dengan arsitektur satu node, instans Azure Cosmos DB for MongoDB, atau klaster elastis Amazon DocumentDB, hanya migrasi penuh yang didukung.

  • Untuk melakukan migrasi data inkremental:

    Database sumber harus memiliki oplog yang diaktifkan dengan retensi minimal tujuh hari. Atau, change streams harus diaktifkan, dan DTS harus dapat berlangganan perubahan data dari database sumber dalam tujuh hari terakhir melalui change streams. Jika persyaratan ini tidak terpenuhi, tugas migrasi mungkin gagal karena tidak dapat memperoleh perubahan data dari sumber. Dalam kasus ekstrem, hal ini dapat menyebabkan ketidakkonsistenan atau kehilangan data. Masalah yang timbul dari kondisi ini tidak dicakup oleh Perjanjian Tingkat Layanan (SLA) DTS.

    Penting
    • Kami merekomendasikan penggunaan oplog untuk memperoleh perubahan data dari database sumber.

    • Hanya MongoDB versi 4.0 dan yang lebih baru yang mendukung perolehan perubahan data melalui change streams.

    • Jika database sumber adalah kluster Amazon DocumentDB (non-elastis), Anda harus mengaktifkan change streams secara manual. Saat mengonfigurasi tugas, atur Migration Method ke ChangeStream dan Architecture ke Sharded Cluster.

  • Jika sumber adalah instans MongoDB dengan arsitektur kluster sharded, field _id pada koleksi yang akan dimigrasikan harus unik. Jika tidak, ketidakkonsistenan data mungkin terjadi.

  • Jika instans sumber adalah database MongoDB yang dikelola sendiri dengan arsitektur kluster sharded:

    • Access Method hanya mendukung Public IP Address, Express Connect, VPN Gateway, or Smart Access Gateway, dan Cloud Enterprise Network (CEN).

    • Jika database sumber adalah MongoDB 8.0 atau yang lebih baru dan Migration Method adalah Oplog, Anda harus memastikan bahwa akun shard yang digunakan oleh tugas migrasi memiliki izin directShardOperations. Anda dapat memberikan izin ini dengan menjalankan perintah berikut: db.adminCommand({ grantRolesToUser: "username", roles: [{ role: "directShardOperations", db: "admin"}]})

      Catatan

      Ganti username dalam perintah dengan akun shard untuk tugas migrasi.

    • Jika Migration Method adalah Oplog dan tugas mencakup migrasi penuh, berikan izin kepada akun mongos dari kluster sharded MongoDB sumber untuk menjalankan perintah db.runCommand({"balancerStatus":1}). DTS menggunakan perintah ini selama Pemeriksaan Awal untuk memverifikasi bahwa balancer database sumber dinonaktifkan.

  • DTS tidak mendukung koneksi ke database MongoDB menggunakan Rekaman SRV.

  • Jika sumber adalah instans kluster sharded MongoDB, jumlah node mongos tidak boleh melebihi 10. Anda juga harus menghapus dokumen orphaned dari kluster. Jika tidak, migrasi mungkin gagal atau menyebabkan ketidakkonsistenan data. Untuk informasi selengkapnya, lihat Orphaned Documents dan Cara Membersihkan Orphaned Documents di Kluster Sharded MongoDB.

  • Batasan operasional pada database sumber:

    • Selama fase migrasi penuh, jangan lakukan perubahan skema pada database atau koleksi, termasuk pembaruan data bertipe array. Jika dilakukan, tugas migrasi mungkin gagal atau menyebabkan ketidakkonsistenan data.

    • Jika Anda hanya melakukan migrasi penuh, jangan menulis data baru ke instans sumber. Jika dilakukan, ketidakkonsistenan data mungkin terjadi.

    • Jika sumber adalah instans kluster sharded MongoDB, jangan jalankan perintah yang mengubah distribusi data objek yang akan dimigrasikan, seperti shardCollection, reshardCollection, unshardCollection, moveCollection, dan movePrimary, selama instans migrasi sedang berjalan. Jika dilakukan, ketidakkonsistenan data mungkin terjadi.

  • Jika sumber adalah instans MongoDB dengan arsitektur kluster sharded, aktivitas penyeimbangan ulang oleh balancer dapat meningkatkan latensi migrasi.

Batasan lainnya

  • Hanya migrasi tingkat koleksi yang didukung.

  • Tabel tujuan di kluster PolarDB for MySQL harus memiliki primary key satu kolom; primary key komposit tidak didukung. Saat Anda mengonfigurasi field migrasi pada langkah Selected Objects, Parameter Value untuk kolom primary key ini harus berupa bson_value("_id").

  • Tabel tujuan di kluster PolarDB for MySQL tidak boleh berisi kolom bernama _id atau _value. Jika tidak, tugas migrasi akan gagal.

  • Jika tipe data di kluster PolarDB for MySQL tujuan tidak kompatibel dengan tipe data MongoDB sumber, tugas migrasi akan gagal.

  • DTS tidak mendukung migrasi data dari database admin, config, atau local.

  • Informasi transaksi tidak dipertahankan. Transaksi dari database sumber diubah menjadi operasi individual di database tujuan.

  • Jika data Anda mencakup karakter empat byte—seperti karakter Tionghoa langka atau emoji—database dan tabel tujuan harus menggunakan charset utf8mb4.

    Catatan

    Jika Anda menggunakan DTS untuk migrasi skema, atur parameter tingkat instans character_set_server ke utf8mb4 di database tujuan.

  • Sebelum migrasi data, evaluasi kinerja database sumber dan tujuan. Kami merekomendasikan migrasi data dilakukan selama jam sepi. Selama migrasi penuh, DTS mengonsumsi sumber daya baca dan tulis pada kedua database, sehingga meningkatkan beban kerja mereka.

  • Migrasi data penuh menjalankan operasi INSERT secara konkuren, yang menyebabkan fragmentasi pada koleksi database tujuan. Akibatnya, setelah migrasi data penuh selesai, koleksi di database tujuan menggunakan lebih banyak storage space dibandingkan koleksi di instans sumber.

  • Verifikasi bahwa presisi migrasi yang digunakan DTS untuk tipe data FLOAT dan DOUBLE memenuhi kebutuhan bisnis Anda. DTS membaca nilai tipe ini menggunakan ROUND(COLUMN,PRECISION). Jika Anda tidak secara eksplisit menentukan presisi, DTS memigrasikan nilai FLOAT dengan presisi 38 digit dan nilai DOUBLE dengan presisi 308 digit.

  • DTS berusaha melanjutkan tugas migrasi yang gagal dalam waktu tujuh hari. Sebelum Anda memindahkan beban kerja ke instans tujuan, Anda harus menghentikan atau melepas tugas tersebut, atau menggunakan perintah revoke untuk mencabut izin tulis akun akses DTS pada instans tujuan. Hal ini mencegah tugas secara otomatis dilanjutkan dan menimpa data tujuan dengan data sumber.

  • DTS menghitung latensi untuk migrasi inkremental dengan membandingkan timestamp catatan terbaru yang dimigrasikan ke database tujuan dengan timestamp saat ini. Jika database sumber tidak diperbarui dalam periode yang lama, latensi yang dilaporkan mungkin tidak akurat. Jika latensi yang ditampilkan tampak terlalu tinggi, Anda dapat melakukan operasi pembaruan pada database sumber untuk memperbarui informasi latensi.

  • Koleksi time series, yang diperkenalkan di MongoDB 5.0, tidak didukung untuk migrasi.

  • Jika tugas gagal, staf dukungan DTS akan berusaha memulihkannya dalam waktu delapan jam. Selama pemulihan, mereka mungkin me-restart tugas atau menyesuaikan parameternya.

    Catatan

    Hanya parameter tugas DTS yang dimodifikasi—bukan parameter database. Parameter yang mungkin disesuaikan termasuk yang tercantum di Modifikasi parameter instans.

Penagihan

Tipe migrasi

Biaya konfigurasi tugas

Biaya transfer data

migrasi data penuh

Gratis.

Tutorial ini gratis. Namun, biaya transfer data berlaku jika Access Method untuk database tujuan adalah Public IP Address.

migrasi data inkremental

Biaya berlaku. Untuk detailnya, lihat ikhtisar penagihan.

Tipe migrasi

Tipe migrasi

Deskripsi

migrasi data penuh

DTS memigrasikan semua data yang ada dari instans ApsaraDB for MongoDB sumber ke kluster PolarDB for MySQL tujuan.

migrasi data inkremental

Setelah migrasi data penuh selesai, DTS memigrasikan pembaruan inkremental dari instans ApsaraDB for MongoDB sumber ke kluster PolarDB for MySQL tujuan.

Catatan
  • Migrasi data inkremental hanya berlaku untuk operasi insert, update, dan delete pada dokumen dalam koleksi.

  • Untuk pembaruan dokumen inkremental, hanya perubahan yang dilakukan menggunakan perintah $set yang direplikasi.

Izin yang diperlukan untuk akun database

Database

Migrasi data penuh

Migrasi data inkremental

Referensi

Sumber ApsaraDB for MongoDB

izin read pada database yang akan dimigrasikan.

izin read pada database yang akan dimigrasikan, serta pada database admin dan local.

Manajemen akun

Tujuan kluster PolarDB for MySQL

izin read dan write pada database tujuan.

Buat dan kelola akun database

Catatan

Jika Anda menggunakan ChangeStream sebagai metode migrasi inkremental, akun database sumber memerlukan izin baca Change Streams tingkat instans (seperti readAnyDatabase). Jika sumber adalah instans ApsaraDB for MongoDB dengan akun kustom, Anda juga harus memberikan izin baca pada database admin. Untuk detailnya, lihat Izin akun root yang ditentukan saat pembuatan instans.

Prosedur

  1. Buka halaman daftar tugas migrasi untuk wilayah tujuan menggunakan salah satu metode berikut.

    Dari Konsol DTS

    1. Masuk ke Konsol Data Transmission Service (DTS).

    2. Di panel navigasi kiri, klik Data Migration.

    3. Di pojok kiri atas halaman, pilih wilayah tempat instans migrasi berada.

    Dari Konsol DMS

    Catatan

    Operasi 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.

    1. Masuk ke Konsol Data Management (DMS).

    2. Di bilah menu atas, pilih Data + AI > Data Transmission (DTS) > Data Migration.

    3. Di sebelah kanan Data Migration Tasks, pilih wilayah tempat instans migrasi berada.

  2. Klik Create Task untuk membuka halaman konfigurasi tugas.

  3. Konfigurasikan database sumber dan tujuan.

    Kategori

    Parameter

    Deskripsi

    N/A

    Task Name

    DTS secara otomatis menghasilkan nama tugas. Kami menyarankan Anda menentukan nama deskriptif agar mudah diidentifikasi. Nama ini 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.

      Catatan

      Di Konsol DMS, parameter ini bernama Select a DMS database instance..

    • Jika Anda belum mendaftarkan instans database ke sistem, atau tidak perlu menggunakan instans terdaftar, konfigurasikan informasi database secara manual di bawah ini.

    Database Type

    Pilih MongoDB.

    Access Method

    Pilih Alibaba Cloud Instance.

    Instance Region

    Pilih wilayah tempat instans ApsaraDB for MongoDB sumber berada.

    Replicate Data Across Alibaba Cloud Accounts

    Dalam contoh ini, digunakan instans database di bawah Akun Alibaba Cloud saat ini. Pilih No.

    Architecture

    Dalam contoh ini, pilih Replica Set.

    Catatan

    Jika instans ApsaraDB for MongoDB sumber Anda adalah Sharded Cluster, Anda juga harus menentukan Shard account dan Shard password.

    Migration Method

    Pilih metode untuk migrasi data inkremental berdasarkan kebutuhan Anda.

    • Oplog (Direkomendasikan):

      Opsi ini tersedia jika oplog diaktifkan untuk database sumber.

      Catatan

      Oplog diaktifkan secara default baik untuk database MongoDB yang dikelola sendiri maupun instans ApsaraDB for MongoDB. Metode ini menawarkan latensi lebih rendah untuk migrasi data inkremental karena pengambilan log lebih cepat. Oleh karena itu, kami merekomendasikan memilih Oplog.

    • ChangeStream: Opsi ini tersedia jika Change Streams diaktifkan untuk database sumber.

      Catatan
      • Jika database sumber adalah instans Amazon DocumentDB (kluster non-elastis), Anda hanya dapat memilih ChangeStream.

      • Jika Anda mengatur Architecture ke Sharded Cluster untuk database sumber, Anda tidak perlu memasukkan Shard account atau Shard password.

    Instance ID

    Pilih ID instans ApsaraDB for MongoDB sumber.

    Authentication Database

    Masukkan nama database tempat akun database berada di instans ApsaraDB for MongoDB sumber. Jika Anda tidak mengubahnya, nilai default-nya adalah admin.

    Database Account

    Masukkan akun database untuk instans ApsaraDB for MongoDB sumber. Untuk informasi lebih lanjut tentang izin yang diperlukan, lihat Izin akun database.

    Database Password

    Masukkan kata sandi yang sesuai dengan akun database.

    Encryption

    DTS mendukung tiga metode koneksi: Non-encrypted, SSL-encrypted, dan Mongo Atlas SSL. Opsi untuk Encryption bervariasi berdasarkan Access Method dan Architecture yang dipilih. Opsi yang ditampilkan di konsol berlaku.

    Catatan
    • Database MongoDB dengan Architecture Sharded Cluster dan Migration Method Oplog tidak mendukung SSL-encrypted.

    • Jika sumber adalah database MongoDB yang dikelola sendiri (Access Method bukan Alibaba Cloud Instance) dengan arsitektur Replica Set, dan Anda memilih SSL-encrypted, DTS juga memungkinkan Anda mengunggah sertifikat CA untuk memverifikasi koneksi.

    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.

      Catatan

      Di Konsol DMS, parameter ini bernama Select a DMS database instance..

    • Jika Anda belum mendaftarkan instans database ke sistem, atau tidak perlu menggunakan instans terdaftar, konfigurasikan informasi database secara manual di bawah ini.

    Database Type

    Pilih PolarDB for MySQL.

    Access Method

    Pilih Alibaba Cloud Instance.

    Instance Region

    Pilih wilayah tempat kluster PolarDB for MySQL tujuan berada.

    Replicate Data Across Alibaba Cloud Accounts

    Dalam contoh ini, digunakan instans database di bawah Akun Alibaba Cloud saat ini. Pilih No.

    PolarDB Cluster ID

    Pilih ID kluster PolarDB for MySQL tujuan.

    Database Account

    Masukkan akun database untuk kluster PolarDB for MySQL tujuan. Untuk informasi lebih lanjut tentang izin yang diperlukan, lihat Izin akun database.

    Database Password

    Masukkan kata sandi untuk akun database.

    Encryption

    Pilih opsi berdasarkan kebutuhan bisnis Anda. Untuk informasi selengkapnya tentang fitur enkripsi SSL, lihat Aktifkan enkripsi SSL.

  4. Setelah menyelesaikan konfigurasi, klik Test Connectivity and Proceed di bagian bawah halaman.

    Catatan
    • Pastikan 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.

  5. Konfigurasikan objek tugas.

    1. Di halaman Configure Objects, konfigurasikan objek yang ingin Anda migrasikan.

      Parameter

      Deskripsi

      Migration Types

      • Jika Anda hanya perlu melakukan migrasi penuh, pilih Full Data Migration.

      • Untuk melakukan migrasi tanpa downtime, pilih Full Data Migration dan Incremental Data Migration.

      Catatan

      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 koleksi dengan nama yang sama ada di database tujuan. Jika tidak ada koleksi dengan nama yang sama, pemeriksaan awal lolos. Jika ada koleksi dengan nama yang sama, kesalahan dilaporkan selama pemeriksaan awal, dan tugas migrasi data tidak dimulai.

        Catatan

        Jika koleksi di database tujuan memiliki nama yang sama tetapi tidak dapat dengan mudah dihapus atau diganti namanya, Anda dapat mengubah nama koleksi di database tujuan. Untuk informasi selengkapnya, lihat Pemetaan nama objek.

      • Ignore Errors and Proceed: Melewati pemeriksaan koleksi dengan nama yang sama.

        Peringatan

        Memilih Ignore Errors and Proceed dapat menyebabkan ketidakkonsistenan data dan risiko bisnis. Misalnya:

        • Jika catatan di database tujuan memiliki nilai primary key yang sama dengan catatan di database sumber, catatan di database tujuan dipertahankan. Catatan dari database sumber tidak dimigrasikan ke database tujuan.

        • Inisialisasi data mungkin gagal, hanya sebagian data yang dimigrasikan, atau migrasi gagal.

      Capitalization of Object Names in Destination Instance

      Anda dapat mengonfigurasi kebijakan case sensitivity 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 case sensitivity konsisten dengan kebijakan default database sumber atau tujuan. Untuk informasi selengkapnya, lihat Case sensitivity nama objek di database tujuan.

      Source Objects

      Di kotak Source Objects, klik objek yang akan dimigrasikan, lalu klik Right arrow untuk memindahkannya ke kotak Selected Objects.

      Catatan

      Anda dapat memilih objek pada tingkat koleksi.

      Selected Objects

      1. Edit pemetaan nama database.

        1. Di kotak Selected Objects, klik kanan database sumber yang berisi koleksi yang akan dimigrasikan.

          Dalam contoh ini, nama database adalah dtsdb, yang berada di akar struktur pohon.

        2. Ubah Schema Name menjadi nama database yang menerima data di kluster PolarDB for MySQL tujuan. Di panel Edit Schema, ubah Schema Name menjadi nama tujuan (misalnya, dtsdb).

        3. Klik OK.

      2. Edit pemetaan nama tabel.

        1. Di kotak Selected Objects, klik kanan koleksi yang ingin Anda migrasikan.

          Misalnya, jika struktur pohon di panel Selected Objects adalah dtsdb > Table > class, klik kanan koleksi target.

        2. Ubah Table Name menjadi nama tabel yang menerima data di kluster PolarDB for MySQL tujuan. Setelah Anda mengklik kanan, Anda dapat mengubah Table Name di halaman Edit Table yang muncul (misalnya, class). Catatan: Setelah Anda mengedit nama tabel atau nama kolom, nama tabel dan kolom di database tujuan akan berubah menjadi nama baru tersebut.

        3. Opsional: Tetapkan kondisi filter untuk migrasi data penuh. Untuk informasi selengkapnya, lihat Tetapkan kondisi filter. Di kotak teks Filter Conditions, Anda dapat memasukkan pernyataan filter. Sintaksnya berbeda dari klausa WHERE SQL standar. Misalnya, untuk memfilter berdasarkan ID pengguna, Anda dapat menggunakan: {"_id": {$gt:"user100844658590795****",$lte:"user101674868045948****"}}, di mana $gt berarti lebih besar dari dan $lte berarti kurang dari atau sama dengan.

        4. Opsional: Di bagian Select DDL and DML Operations to Be Synchronized, pilih operasi untuk migrasi data inkremental. Di bagian Select DML Operations to Synchronize, Anda dapat memilih insert, update, dan delete.

      3. Konfigurasikan field yang akan dimigrasikan dari MongoDB.

        Secara default, DTS memetakan data koleksi yang akan dimigrasikan dan mengonfigurasi ekspresi di kolom Parameter Value. Periksa apakah ekspresi tersebut memenuhi kebutuhan Anda dan konfigurasikan parameter seperti Column Name, Type, Length, dan Precision.

        Penting
        • Anda harus memberikan nilai bson_value("_id") ke kolom primary key tabel tujuan.

        • Saat mengonfigurasi ekspresi bson_value(), Anda harus menentukan path hingga subfield tingkat terendah dalam hierarki. Jika tidak, kehilangan data atau kegagalan tugas mungkin terjadi.

        1. Di ekspresi bson_value() pada kolom Parameter Value, periksa nama field yang sesuai di MongoDB.

          Teks di dalam tanda kutip ("") adalah nama field di MongoDB. Misalnya, jika ekspresinya adalah bson_value("age"), baris ini sesuai dengan field age di MongoDB.

        2. Opsional: Hapus field yang tidak perlu dimigrasikan.

          Catatan

          Untuk menghapus field, klik ikon image di baris tersebut.

        3. Konfigurasikan field yang akan dimigrasikan.

          Langkah selanjutnya tergantung pada apakah ekspresi default bson_value() memenuhi kebutuhan Anda.

          Ekspresi kustom

          Catatan

          Ini mungkin berlaku untuk field dengan struktur hierarkis, seperti hubungan induk-anak.

          1. Di kolom Actions, klik ikon image di baris tersebut.

          2. Klik + Add Column.

          3. Konfigurasikan Column Name, Type, Length, dan Precision.

            Penting

            Pastikan tipe data tabel tujuan kompatibel dengan data MongoDB sumber. Untuk informasi selengkapnya tentang pemetaan tipe data, lihat Pemetaan tipe data.

          4. Di kotak teks di bawah Parameter Value, masukkan ekspresi bson_value(). Untuk informasi selengkapnya, lihat Contoh konfigurasi penugasan.

          5. Ulangi langkah-langkah ini untuk memetakan semua field yang relevan.

          Ekspresi default

          1. Masukkan Column Name.

            Catatan

            Ini adalah nama kolom di tabel yang menerima data di kluster PolarDB for MySQL tujuan.

          2. Pilih Type data untuk kolom tersebut.

            Penting

            Pastikan tipe data tabel tujuan kompatibel dengan data MongoDB sumber. Untuk informasi selengkapnya tentang pemetaan tipe data, lihat Pemetaan tipe data.

          3. Opsional: Konfigurasikan Length dan Precision untuk data kolom.

          4. Ulangi langkah-langkah ini untuk memetakan semua field yang relevan.

      4. Klik OK.

    2. 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 memilih satu. Jika Anda menginginkan tugas yang lebih stabil, Anda dapat membeli dedicated cluster untuk menjalankan tugas migrasi DTS.

      Select the engine type of the destination database

      Pilih mesin penyimpanan untuk database tujuan berdasarkan kebutuhan Anda.

      • InnoDB: Mesin penyimpanan default.

      • X-Engine: Mesin penyimpanan database untuk pemrosesan transaksi online (OLTP).

      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 Anda mengatur 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.

      Catatan
      • Untuk 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 Anda menyesuaikan waktu percobaan ulang berdasarkan kebutuhan bisnis Anda, atau segera melepas instans DTS setelah instans database sumber dan tujuan dilepas.

      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 Anda mengatur 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.

      Penting

      Nilai 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 pada 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 pada database tujuan.

      Catatan
      • Item konfigurasi ini hanya tersedia jika Anda memilih Full Data Migration untuk Migration Types.

      • Anda juga dapat menyesuaikan kecepatan migrasi penuh setelah instans migrasi berjalan.

      Only one data type for primary key _id in a table of the data to be synchronized

      Menentukan apakah tipe data primary key _id unik dalam koleksi yang sama untuk data yang akan dimigrasikan.

      Penting
      • Pilih opsi berdasarkan kebutuhan Anda. Jika tidak, kehilangan data mungkin terjadi.

      • Parameter ini hanya tersedia jika Anda memilih Full Data Migration untuk Migration Types.

      • Yes: Tipe data unik. Selama migrasi data penuh, DTS tidak memindai tipe data primary key di data sumber. Untuk satu koleksi, DTS hanya memigrasikan data yang sesuai dengan satu tipe data primary key.

      • No: Tipe data tidak unik. Selama migrasi data penuh, DTS memindai tipe data primary key di data sumber dan memigrasikan semua data.

      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 pada database tujuan.

      Catatan

      Environment Tag

      Anda dapat memilih tag lingkungan untuk mengidentifikasi instans berdasarkan kebutuhan Anda. Tidak diperlukan tag untuk contoh ini.

      Configure ETL

      Pilih apakah akan mengaktifkan fitur ekstrak, transformasi, dan muat (ETL). Untuk informasi selengkapnya, lihat Apa itu ETL? Nilai yang valid:

      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 alert threshold dan alert notifications. Jika migrasi gagal atau latensi melebihi ambang batas, sistem akan mengirim pemberitahuan peringatan.

  6. Simpan tugas dan jalankan pemeriksaan awal.

    • Untuk melihat parameter konfigurasi instans ini saat Anda 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.

    Catatan
    • Sebelum 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 Anda memilih untuk mengabaikan peringatan, hal ini dapat menyebabkan masalah seperti ketidakkonsistenan data dan menimbulkan risiko bagi bisnis Anda.

  7. Beli instans.

    1. Saat Success Rate mencapai 100%, klik Next: Purchase Instance.

    2. 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 Resource Management?

      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.

    3. Setelah konfigurasi selesai, baca dan pilih Data Transmission Service (Pay-as-you-go) Service Terms.

    4. Klik Buy and Start. Di kotak dialog OK yang muncul, klik OK.

      Anda dapat melihat progres tugas migrasi di halaman daftar Data Migration Tasks.

      Catatan
      • Jika 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.

Pemetaan tipe data

Tipe MongoDB

Tipe PolarDB for MySQL

ObjectId

VARCHAR

String

VARCHAR

Document

VARCHAR

DbPointer

VARCHAR

Array

VARCHAR

Date

DATETIME

Timestamp

DATETIME

Double

DOUBLE

32-bit integer (BsonInt32)

INTEGER

64-bit integer (BsonInt64)

BIGINT

Decimal128

DECIMAL

Boolean

BOOLEAN

Null

VARCHAR

Contoh konfigurasi penugasan

Struktur data MongoDB sumber

{
  "_id":"62cd344c85c1ea6a2a9f****",
  "person":{
    "name":"neo",
    "age":26,
    "sex":"male"
  }
}

Skema tabel tujuan

Parameter

Tipe

mongo_id

varchar

Catatan

Kolom kunci primer.

person_name

varchar

person_age

decimal

Kolom baru

Penting

Anda harus menentukan path hierarkis lengkap dalam ekspresi bson_value() untuk mencegah kehilangan data atau kegagalan tugas. Misalnya, jika Anda mengatur ekspresi menjadi bson_value("person"), DTS tidak dapat menyinkronkan data inkremental dari subfield objek person (seperti name, age, dan sex) ke tujuan.

Parameter

Tipe

Nilai

mongo_id

STRING

bson_value("_id")

person_name

STRING

bson_value("person","name")

person_age

DECIMAL

bson_value("person","age")