Gunakan Data Transmission Service (DTS) untuk memigrasikan data dari instans replica set atau kluster sharded ApsaraDB for MongoDB ke instans tabel lebar Lindorm. DTS mendukung migrasi data penuh dan migrasi data inkremental, sehingga Anda dapat melakukan migrasi tanpa menghentikan aplikasi.
Pilih jenis migrasi
Pilih jenis migrasi berdasarkan apakah aplikasi Anda dapat mentoleransi downtime.
| Jenis migrasi | Kapan digunakan | Diperlukan downtime |
|---|---|---|
| Hanya migrasi data penuh | Aplikasi Anda dapat mentoleransi jendela pemeliharaan. Hentikan operasi write ke sumber sebelum migrasi. | Ya — hentikan operasi write selama migrasi |
| Migrasi data penuh + inkremental | Aplikasi Anda harus tetap online selama migrasi. DTS menyinkronkan perubahan yang sedang berlangsung hingga Anda melakukan cut over. | Tidak — cut over kapan saja |
Jika Anda memilih hanya migrasi data penuh, hentikan operasi write ke database sumber sebelum tugas dimulai. Melakukan write ke sumber selama migrasi hanya-penuh menyebabkan inkonsistensi data.
Prasyarat
Sebelum memulai, pastikan:
Hanya tugas migrasi dalam wilayah Jerman (Frankfurt) yang didukung.
Instans sumber ApsaraDB for MongoDB menggunakan arsitektur replica set atau sharded cluster.
Instans Lindorm dengan mesin tabel lebar telah dibuat. Lihat Buat instans.
Tabel lebar telah dibuat di instans Lindorm. Lihat Gunakan Lindorm-cli untuk terhubung ke dan menggunakan LindormTable atau Gunakan Lindorm Shell untuk terhubung ke LindormTable.
Ruang penyimpanan yang tersedia pada instans tujuan minimal 10% lebih besar daripada ukuran total data pada instans sumber.
Objek yang Anda buat di tujuan mematuhi Kuota dan batasan.
Untuk sumber kluster sharded:
Titik akhir node shard telah dikonfigurasi dan semua node shard menggunakan akun dan password yang sama. Lihat Ajukan titik akhir untuk shard.
Bidang
_iddi semua koleksi yang akan dimigrasikan bersifat unik di seluruh shard.Jumlah node Mongos tidak melebihi 10.
For incremental data migration:
Untuk memigrasikan operasi UPDATE dan DELETE, tambahkan kolom non-kunci primer bernama
_mongo_id_ke tabel lebar Lindorm sebelum memulai tugas:SQL-created table: Tipe data kolom harus sesuai dengan tipe kolom
_iddi instans MongoDB sumber. Buat indeks sekunder pada kolom ini.Apache HBase API-created table: Kolom tersebut harus termasuk dalam keluarga kolom
f. Tipe data harus sesuai dengan tipe kolom_id. Buat indeks sekunder pada kolom ini. Jika Anda ingin menambahkan kolom tambahan dan menggunakan fitur ETL, pastikan instans Lindorm tidak berisi data duplikat.
Fitur oplog diaktifkan pada database sumber, dan log operasi disimpan minimal selama 7 hari. Atau, change streams diaktifkan dan DTS dapat berlangganan perubahan dari 7 hari terakhir.
Jika tabel lebar dibuat menggunakan API Apache HBase, buat pemetaan kolom sebelum mengonfigurasi tugas migrasi. Lihat Tambahkan pemetaan kolom untuk tabel API Apache HBase.
Penagihan
| Jenis migrasi | Biaya konfigurasi tugas | Biaya transfer data |
|---|---|---|
| Migrasi data penuh | Gratis | Gratis, kecuali jika Connection Type diatur ke Public IP Address (lalu lintas internet dikenai biaya). Lihat Item yang dikenai biaya. |
| Migrasi data inkremental | Dikenai biaya. Lihat Ikhtisar penagihan. | — |
Jenis migrasi
| Jenis migrasi | Deskripsi |
|---|---|
| Migrasi data penuh | DTS memigrasikan data yang ada dari objek yang akan dimigrasikan dari instans sumber ApsaraDB for MongoDB ke instans tujuan Lindorm. Catatan DTS mendukung migrasi data penuh untuk database dan koleksi. |
| Migrasi data inkremental | Setelah migrasi data penuh selesai, DTS memigrasikan data inkremental dari instans sumber ApsaraDB for MongoDB ke instans tujuan Lindorm. Hanya operasi INSERT, UPDATE, dan DELETE pada dokumen yang dimigrasikan. Untuk operasi UPDATE, hanya update dari $set yang dimigrasikan. |
Izin yang diperlukan
| Database | Migrasi data penuh | Migrasi data inkremental |
|---|---|---|
| Sumber ApsaraDB for MongoDB | Baca pada database sumber | Baca pada database sumber, database admin, dan database local |
| Instans Lindorm tujuan | Baca dan tulis | Baca dan tulis |
Lihat Kelola izin pengguna database MongoDB dan Kelola pengguna.
Migrasi data dari MongoDB ke Lindorm
Prosedur berikut menggunakan tabel lebar yang dibuat dengan pernyataan SQL Lindorm sebagai contoh.
Langkah 1: Buka halaman Migrasi Data
Gunakan salah satu metode berikut:
Konsol DTS
Login ke Konsol DTS.Konsol DTS
Di panel navigasi kiri, klik Data Migration.
Di pojok kiri atas, pilih wilayah tempat instans migrasi data berada.
Konsol DMS
Langkah aktual dapat berbeda tergantung mode dan tata letak konsol DMS. Lihat Mode sederhana dan Sesuaikan tata letak dan gaya konsol DMS.
Login ke Konsol DMS.Konsol DMS
Di bilah navigasi atas, buka Data + AI > DTS (DTS) > Data Migration.
Dari daftar drop-down di samping Data Migration Tasks, pilih wilayah tempat instans migrasi data berada.
Langkah 2: Konfigurasi database sumber dan tujuan
Klik Create Task, lalu konfigurasikan parameter yang dijelaskan dalam tabel berikut.
Parameter database sumber
| Parameter | Deskripsi |
|---|---|
| Task Name | Nama untuk tugas DTS. DTS menghasilkan nama secara otomatis. Tentukan nama deskriptif agar mudah mengidentifikasi tugas. Nama tidak perlu unik. |
| Select Existing Connection | Jika instans MongoDB sudah terdaftar di DTS, pilih dari daftar. DTS mengisi parameter koneksi secara otomatis. Jika belum, konfigurasikan parameter di bawah. |
| Database Type | Pilih MongoDB. |
| Connection Type | Pilih Cloud Instance. |
| Instance Region | Wilayah tempat instans sumber ApsaraDB for MongoDB berada. |
| Replicate Data Across Alibaba Cloud Accounts | Pilih No. |
| Architecture | Arsitektur instans sumber. Pilih Replica Set untuk contoh ini. Jika sumber menggunakan arsitektur Sharded Cluster, konfigurasikan juga Shard account dan Shard password. |
| Migration Method | Cara DTS memperoleh perubahan inkremental dari sumber. Oplog (direkomendasikan) — tersedia jika fitur oplog diaktifkan. Secara default, fitur oplog diaktifkan untuk instans ApsaraDB for MongoDB. Gunakan metode ini untuk migrasi inkremental dengan latensi rendah. ChangeStreamChange Streams — tersedia jika change streams diaktifkan. Diperlukan untuk kluster Amazon DocumentDB inelastic. Memerlukan MongoDB V4.0 atau lebih baru. Jika Sharded Cluster dipilih untuk Architecture, Anda tidak perlu mengonfigurasi Shard account dan Shard password saat menggunakan metode ini. |
| Instance ID | ID instans sumber ApsaraDB for MongoDB. |
| Authentication Database | Database yang menyimpan akun dan password. Nilai default: admin. |
| Database Account | Akun database untuk instans sumber. |
| Database Password | Password untuk akun database. |
| Encryption | Pilih Non-encrypted, SSL-encrypted, atau Mongo Atlas SSL sesuai kebutuhan Anda. Opsi yang tersedia bergantung pada pilihan Connection Type dan Architecture. Opsi yang ditampilkan di konsol DTS berlaku. Batasan: Jika Architecture adalah Sharded Cluster dan Migration Method adalah Oplog, opsi SSL-encrypted tidak tersedia. |
Parameter database tujuan
| Parameter | Deskripsi |
|---|---|
| Select Existing Connection | Jika instans Lindorm sudah terdaftar di DTS, pilih dari daftar. Jika belum, konfigurasikan parameter di bawah. |
| Database Type | Pilih Lindorm. |
| Connection Type | Pilih Alibaba Cloud Instance. |
| Instance Region | Wilayah tempat instans tujuan Lindorm berada. |
| Instance ID | ID instans tujuan Lindorm. |
| Database Account | Akun database untuk instans tujuan Lindorm. |
| Database Password | Password untuk akun database. |
Langkah 3: Uji konektivitas dan lanjutkan
Klik Test Connectivity and Proceed di bagian bawah halaman.
DTS harus dapat mengakses database sumber dan tujuan. Pastikan blok CIDR server DTS telah ditambahkan ke pengaturan keamanan kedua database. Lihat Tambahkan blok CIDR server DTS. Jika sumber atau tujuan adalah database yang dikelola sendiri dan tidak diakses melalui Alibaba Cloud Instance, klik Test Connectivity di kotak dialog CIDR Blocks of DTS Servers.
Langkah 4: Konfigurasi objek yang akan dimigrasikan
Di halaman Configure Objects, atur parameter berikut.
Jenis migrasi dan objek
| Parameter | Deskripsi |
|---|---|
| Migration Types | Pilih Full Data Migration untuk migrasi satu kali. Pilih kedua opsi Full Data Migration dan Incremental Data Migration untuk menjaga sinkronisasi antara sumber dan tujuan selama migrasi serta meminimalkan downtime. |
| Processing Mode of Conflicting Tables | Tidak perlu dikonfigurasi. |
| Capitalization of Object Names in Destination Instance | Kebijakan kapitalisasi untuk nama database dan koleksi di instans tujuan. Nilai default: DTS default policy. Lihat Specify the capitalization of object names in the destination instance. |
| Source Objects | Pilih koleksi yang akan dimigrasikan, lalu klik |
Konfigurasi objek yang dipilih
Untuk setiap koleksi di Selected Objects, konfigurasikan nama skema, nama tabel, dan pemetaan kolom.
Contoh berikut menunjukkan bagaimana dokumen MongoDB sumber dipetakan ke baris tabel lebar Lindorm:
Dokumen sumber (ApsaraDB for MongoDB)
{
"_id": "62cd344c85c1ea6a2a9f****",
"person": {
"name": "neo",
"age": "26",
"sex": "male"
}
}Baris tabel tujuan (Lindorm)
| Nama kolom | Tipe | Ekspresi nilai |
|---|---|---|
id | STRING | bson_value("_id") |
person_name | STRING | bson_value("person","name") |
person_age | BIGINT | bson_value("person","age") |
Untuk mengonfigurasi nama skema, nama tabel, dan pemetaan kolom:
Edit nama skema:
Di Selected Objects, klik kanan database yang berisi koleksi.
Di kotak dialog Edit Schema, masukkan nama database yang akan digunakan di instans Lindorm di bidang Schema Name.

(Opsional) Di Select DDL and DML Operations to Be Synchronized, pilih operasi yang akan dimigrasikan selama migrasi data inkremental.
Klik OK.
Edit nama tabel:
Di Selected Objects, klik kanan koleksi.
Di kotak dialog Edit Table Name, masukkan nama tabel yang akan digunakan di instans Lindorm di bidang Table Name.

(Opsional) Tentukan kondisi filter. Lihat Tentukan kondisi filter.
(Opsional) Di Select DDL and DML Operations to Be Synchronized, pilih operasi yang akan dimigrasikan selama migrasi data inkremental.
Petakan bidang sumber ke kolom tujuan: DTS secara otomatis memetakan setiap bidang di koleksi sumber menggunakan ekspresi
bson_value()dan menetapkannya ke kolom. Di ekspresibson_value(), nama bidang di dalam""adalah nama bidang di instans MongoDB sumber. Misalnya,bson_value("age")memetakan bidangage. (Opsional) Klik ikon
di samping kolom untuk menghapus bidang yang tidak perlu dimigrasikan. Periksa bahwa ekspresi bson_value()sesuai dengan kolom tujuan yang diperlukan:Di ekspresi
bson_value()di kolom Assign Value, periksa nama bidang dari MongoDB.Bidang di dalam
""adalah nama bidang di MongoDB. Misalnya, jika ekspresinya adalahbson_value("age"), ekspresi ini memetakan bidangagedi MongoDB.(Opsional) Klik ikon
di samping kolom untuk menghapus bidang yang tidak perlu dimigrasikan.CatatanUntuk menghapus bidang yang tidak perlu dimigrasikan, klik
di baris bidang tersebut.Konfigurasikan bidang yang akan dimigrasikan.
Lakukan langkah berikut berdasarkan apakah ekspresi
bson_value()memenuhi kebutuhan Anda.Bidang yang ekspresinya memenuhi kebutuhan
Masukkan Column Name untuk tabel tujuan.
CatatanUntuk tabel yang dibuat dengan SQL: gunakan nama kolom yang didefinisikan di tabel.
Untuk tabel yang dibuat dengan API Apache HBase: gunakan ROW untuk kolom kunci primer, dan format Keluarga kolom:Nama kolom (misalnya, person:name) untuk kolom lainnya. Buat pemetaan kolom terlebih dahulu. Lihat Tambahkan pemetaan kolom untuk tabel API Apache HBase.
Pilih Type untuk tipe data kolom.
PentingTipe data kolom tujuan harus kompatibel dengan tipe bidang sumber.
(Opsional) Atur Length dan Precision.
Ulangi langkah ini untuk memetakan semua bidang yang diperlukan.
Bidang yang ekspresinya tidak memenuhi kebutuhan
CatatanMisalnya, bidang yang memiliki struktur hierarkis (struktur induk-anak).
Klik ikon
di samping kolom.Klik + Add Column.

Atur Column Name, Type, Length, dan Precision.
Di kotak teks di bawah Assign Value, masukkan ekspresi
bson_value(). Untuk informasi lebih lanjut, lihat Contoh penugasan nilai.PentingSelalu tetapkan kolom kunci primer sebagai
bson_value("_id").Untuk bidang bersarang, tentukan bidang dan sub-bidang dalam ekspresi — misalnya,
bson_value("person","name"). Menggunakan hanyabson_value("person")menyebabkan kehilangan data untuk sub-bidang.
Ulangi untuk setiap bidang.
Klik OK.
Langkah 5: Konfigurasi pengaturan lanjutan
Klik Next: Advanced Settings dan konfigurasikan parameter berikut.
| Parameter | Deskripsi |
|---|---|
| Dedicated Cluster for Task Scheduling | Secara default, DTS menjadwalkan tugas ke kluster bersama. Untuk stabilitas lebih tinggi, beli kluster khusus. Lihat Apa itu kluster khusus DTS. |
| Retry Time for Failed Connections | Jendela percobaan ulang ketika database sumber atau tujuan tidak dapat dijangkau. Nilai valid: 10–1.440 menit. Default: 720 menit. Atur minimal 30 menit. Jika DTS terhubung kembali dalam jendela ini, migrasi dilanjutkan secara otomatis. Jika tidak, tugas gagal. |
| Retry Time for Other Issues | Jendela percobaan ulang untuk kegagalan operasi DDL atau DML. Nilai valid: 1–1.440 menit. Default: 10 menit. Kami merekomendasikan mengatur parameter ini lebih dari 10. Nilai ini harus lebih kecil dari Retry Time for Failed Connections. |
| Enable Throttling for Full Data Migration | Batasi laju baca/tulis selama migrasi penuh untuk mengurangi beban pada sumber dan tujuan. Konfigurasikan QPS (permintaan per detik ke sumber), RPS of Full Data Migration, dan Data migration speed for full migration (MB/s). Opsi ini hanya tersedia saat Full Data Migration dipilih. |
| Only one data type for primary key _id in a table of the data to be synchronized | Menentukan apakah bidang _id memiliki tipe data yang konsisten di semua dokumen dalam koleksi. Yespengaturan pemberitahuan peringatan — DTS melewati pemindaian tipe data selama migrasi penuh. No — DTS memindai tipe data _id selama migrasi penuh. Tersedia hanya jika Full data migration only: dipilih. Aktifkan sesuai data Anda. Pengaturan yang salah dapat menyebabkan kehilangan data. |
| Enable Throttling for Incremental Data Migration | Batasi laju migrasi inkremental dengan mengonfigurasi RPS of Incremental Data Migration dan Data migration speed for incremental migration (MB/s). Opsi ini hanya tersedia saat Incremental Data Migration dipilih. |
| Environment Tag | Tag opsional untuk mengidentifikasi instans DTS. |
| Configure ETL | Aktifkan fitur ekstrak, transformasi, dan muat (ETL) untuk mentransformasi data selama migrasi. Yes — masukkan pernyataan pemrosesan data di editor kode. Lihat Konfigurasi ETL dalam tugas migrasi data atau sinkronisasi data. No — nonaktifkan ETL. Untuk tabel yang dibuat dengan API Apache HBase, gunakan skrip ETL untuk menentukan kolom mana yang akan dimigrasikan. Secara default, semua bidang tingkat atas masuk ke keluarga kolom f. Contoh: script:e_expand_bson_value("*", "_id,name") menulis semua bidang kecuali _id dan name sebagai kolom dinamis. DTS tidak memigrasikan kolom tambahan atau kolom yang tidak termasuk dalam tugas ETL. Jika Anda menambahkan kolom tambahan dan menggunakan ETL, pastikan instans Lindorm tidak berisi data duplikat. |
| Monitoring and Alerting | Konfigurasikan peringatan untuk kegagalan tugas atau latensi migrasi tinggi. Yes — atur ambang batas peringatan dan kontak notifikasi. Lihat Konfigurasi pemantauan dan peringatan saat membuat tugas DTS. No — tanpa peringatan. |
Langkah 6: Jalankan pemeriksaan awal dan simpan pengaturan
Klik Next: Save Task Settings and Precheck.
Untuk melihat parameter API untuk konfigurasi tugas ini sebelum menyimpan, arahkan pointer ke Next: Save Task Settings and Precheck dan klik Preview OpenAPI parameters.
DTS menjalankan pemeriksaan awal sebelum memulai migrasi. Atasi kegagalan pemeriksaan awal:
Untuk item yang gagal: klik View Details, perbaiki masalah, lalu klik Precheck Again.
Untuk item peringatan:
Jika peringatan tidak dapat diabaikan, perbaiki masalah dan jalankan pemeriksaan awal lagi.
Jika peringatan dapat diabaikan, klik Confirm Alert Details > Ignore > OK, lalu klik Precheck Again. Mengabaikan peringatan dapat menyebabkan inkonsistensi data.
Langkah 7: Beli dan mulai instans
Tunggu hingga Success Rate mencapai 100%, lalu klik Next: Purchase Instance.
Di halaman Purchase Instance, konfigurasikan parameter berikut:
Parameter Deskripsi Resource Group Kelompok sumber daya untuk instans migrasi data. Default: default resource group. Lihat Apa itu Resource Management? Instance Class Tier throughput migrasi. Kelas yang lebih tinggi memberikan migrasi lebih cepat. Lihat Kelas instans migrasi data. Baca Data Transmission Service (Pay-as-you-go) Service Terms dan centang kotaknya.
Klik Buy and Start, lalu klik OK di dialog konfirmasi.
Verifikasi status migrasi
Di halaman Data Migration, periksa status tugas:
Full data migration only: Tugas berhenti otomatis saat selesai. Status berubah menjadi Completed.
Full + incremental data migration: Migrasi inkremental berjalan terus-menerus tanpa berhenti. Status menunjukkan Running. Hentikan atau lepas tugas secara manual saat Anda siap melakukan cut over ke database tujuan.
Sebelum mengalihkan beban kerja ke database tujuan, hentikan atau lepas tugas yang gagal. Atau, jalankan REVOKE untuk mencabut izin write dari akun DTS di database tujuan. Jika Anda melewatkan langkah ini dan DTS melanjutkan otomatis tugas yang gagal dalam 7 hari, data dari sumber dapat menimpa data di tujuan.
Batasan
Batasan database sumber
Server sumber harus memiliki bandwidth keluar yang cukup. Bandwidth yang tidak mencukupi mengurangi kecepatan migrasi.
Koleksi harus memiliki kendala PRIMARY KEY atau UNIQUE, dan semua bidang harus unik. Jika tidak, catatan duplikat mungkin muncul di tujuan.
DTS tidak dapat memigrasikan data dari database
admin,config, ataulocal.DTS tidak dapat terhubung ke MongoDB melalui titik akhir SRV.
Jika Anda memilih koleksi sebagai objek migrasi dan mengganti namanya, satu tugas dapat memigrasikan hingga 1.000 koleksi. Melebihi batas ini menyebabkan error permintaan. Bagi migrasi menjadi beberapa tugas.
Batasan migrasi data penuh
Jangan lakukan perubahan skema pada database atau koleksi selama migrasi data penuh, termasuk pembaruan pada tipe array. Perubahan skema menyebabkan kegagalan tugas atau inkonsistensi data.
Jangan menulis data ke database sumber jika Anda hanya menjalankan migrasi data penuh. Menulis ke sumber menyebabkan inkonsistensi data.
Operasi INSERT konkuren selama migrasi penuh menyebabkan fragmentasi di koleksi tujuan. Ruang penyimpanan yang digunakan oleh koleksi tujuan akan lebih besar daripada di sumber.
Batasan migrasi data inkremental
Hanya operasi INSERT, UPDATE, dan DELETE pada dokumen yang dimigrasikan. Untuk operasi UPDATE, hanya update dari
$setyang dimigrasikan.Fitur oplog harus diaktifkan dan log operasi disimpan minimal selama 7 hari, ATAU change streams harus diaktifkan dan DTS harus dapat berlangganan perubahan dari 7 hari terakhir. Jika persyaratan ini tidak terpenuhi, DTS mungkin gagal memperoleh log operasi dan tugas mungkin gagal. Dalam kasus luar biasa, inkonsistensi atau kehilangan data dapat terjadi.
Gunakan fitur oplog untuk memperoleh perubahan data jika memungkinkan. Gunakan change streams hanya jika sumber menjalankan MongoDB V4.0 atau lebih baru.
Informasi transaksi tidak dipertahankan. Transaksi dikonversi menjadi satu catatan.
DTS menghitung latensi migrasi berdasarkan timestamp catatan terbaru yang dimigrasikan di tujuan dan timestamp saat ini di sumber. Jika tidak ada pembaruan di sumber dalam periode panjang, nilai latensi mungkin tidak akurat. Untuk memperbarui latensi, tulis pembaruan ke sumber.
Batasan kluster sharded
Bidang
_idharus unik di semua shard. Nilai_idduplikat menyebabkan inkonsistensi data.Jumlah node Mongos tidak boleh melebihi 10.
Jangan jalankan perintah berikut pada objek yang sedang dimigrasikan saat tugas berjalan:
shardCollection,reshardCollection,unshardCollection,moveCollection,movePrimary. Perintah ini mengubah distribusi data dan menyebabkan inkonsistensi data.Jika Balancer aktif di kluster sharded sumber, hal ini dapat menyebabkan latensi migrasi.
Batasan tujuan Lindorm
Instans Lindorm tujuan tidak boleh berisi koleksi dengan kolom bernama
_idatau_value. Jika kolom tersebut ada, tugas gagal.Data yang dimigrasikan harus mematuhi Batasan permintaan data.
Presisi FLOAT default 38 digit; presisi DOUBLE default 308 digit. DTS menggunakan
ROUND(COLUMN,PRECISION)untuk mengambil nilai-nilai ini. Verifikasi bahwa pengaturan presisi memenuhi kebutuhan bisnis Anda sebelum memulai migrasi.Jika sumber berisi indeks TTL, inkonsistensi data dapat terjadi setelah migrasi.
Batasan Azure Cosmos DB dan Amazon DocumentDB
Untuk kluster Azure Cosmos DB for MongoDB dan kluster elastic Amazon DocumentDB: hanya migrasi data penuh yang didukung.
Untuk kluster Amazon DocumentDB inelastic: aktifkan change streams dan atur Migration Method ke ChangeStream dan Architecture ke Sharded Cluster.
Catatan operasional lainnya
Evaluasi dampak migrasi terhadap kinerja database sumber dan tujuan sebelum memulai. Jalankan migrasi selama jam sepi jika memungkinkan. Migrasi data penuh menggunakan sumber daya baca dan tulis di kedua database dan dapat meningkatkan beban server.
Jika tugas DTS gagal, dukungan teknis DTS berusaha memulihkannya dalam waktu 8 jam. Selama pemulihan, tugas mungkin dimulai ulang dan parameter mungkin dimodifikasi. Hanya parameter tugas DTS yang dimodifikasi — parameter database tidak diubah. Parameter yang mungkin dimodifikasi termasuk yang dijelaskan di Modifikasi parameter instans DTS.
Contoh penambahan pemetaan kolom untuk tabel yang dibuat dengan memanggil API Apache HBase
Versi mesin instans Lindorm harus 2.4.0 atau lebih baru.
Dalam contoh ini, digunakan SQL Shell.
Buat pemetaan kolom untuk tabel:
ALTER TABLE test MAP DYNAMIC COLUMN f:_mongo_id_ HSTRING/HINT/..., person:name HSTRING, person:age HINT;Buat indeks sekunder pada kolom
_mongo_id_:CREATE INDEX idx ON test(f:_mongo_id_);
Contoh konfigurasi tugas ETL untuk tabel yang dibuat dengan memanggil API Apache HBase
Dokumen sumber di ApsaraDB for MongoDB
{
"_id": 0,
"person": {
"name": "cindy0",
"age": 0,
"student": true
}
}Skrip ETL
script:e_expand_bson_value("*", "_id")Hasil migrasi

Contoh penugasan nilai
Struktur dokumen sumber
{
"_id": "62cd344c85c1ea6a2a9f****",
"person": {
"name": "neo",
"age": "26",
"sex": "male"
}
}Skema tabel tujuan
| Nama kolom | Tipe |
|---|---|
id | STRING |
person_name | STRING |
person_age | INT |
Konfigurasi penugasan kolom
Tentukan bidang dan sub-bidang dalam ekspresi bson_value() untuk bidang bersarang. Misalnya, menggunakan bson_value("person") saja tidak memigrasikan sub-bidang seperti name, age, dan sex — hanya merujuk ke bidang induk. Hal ini menyebabkan kehilangan data atau kegagalan tugas.
| Nama kolom | Tipe | Ekspresi nilai |
|---|---|---|
id | STRING | bson_value("_id") |
person_name | STRING | bson_value("person","name") |
person_age | BIGINT | bson_value("person","age") |