Cara menggunakan mongodb relational database

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

AWS DMS mendukung MongoDB versi 3.x dan 4.0 sebagai sumber basis data. Dimulai denganAWS DMS 3.4.5,AWS DMS mendukung MongoDB versi 4.2 dan 4.4. Dimulai dengan MongoDB versi 4.2,AWS DMS 3.4.5 dan yang lebih baru mendukung transaksi terdistribusi. Untuk informasi lebih lanjut tentang transaksi terdistribusi MongoDB, lihat Transaksidi MongoDB.

Jika Anda baru menggunakan MongoDB, ketahuilah konsep basis data MongoDB penting berikut:

  • Catatan di MongoDB adalah dokumen, yang merupakan struktur data terdiri dari pasangan bidang dan nilai. Nilai bidang dapat mencakup dokumen, rangkaian, dan rangkaian dokumen lain. Dokumen kurang lebih setara dengan baris dalam tabel basis data relasional.

  • Koleksi di MongoDB adalah sekelompok dokumen, dan kurang lebih setara dengan tabel basis data relasional.

  • Database di MongoDB adalah seperangkat koleksi, dan kurang lebih setara dengan skema dalam basis data relasional.

  • Secara internal, dokumen MongoDB disimpan sebagai file biner JSON (BSON) dalam format terkompresi yang mencakup jenis untuk setiap bidang dalam dokumen. Setiap dokumen mempunyai ID yang unik.

AWS DMS mendukung dua mode migrasi saat menggunakan MongoDB sebagai sumber, Mode dokumen atau Mode tabel. Anda menentukan mode migrasi mana yang digunakan ketika Anda membuat titik akhir MongoDB atau dengan menetapkan parameter Mode metadata dari konsol AWS DMS Secara fakultatif, Anda dapat membuat kolom kedua bernama

use admin
db.createUser(
  {
    user: "root",
    pwd: "password",
    roles: [ { role: "root", db: "admin" } ]
  }
)
5 yang bertindak sebagai kunci utama dengan memilih tombol tanda centang untuk _id sebagai kolom terpisah di panel konfigurasi titik akhir.

Pilihan mode migrasi Anda memengaruhi format yang dihasilkan dari data target, seperti yang dijelaskan berikut.

Mode dokumen

Dalam mode dokumen, dokumen MongoDB bermigrasi dengan apa adanya, artinya bahwa data dokumen dikonsolidasikan ke dalam satu kolom bernama

use admin
db.createUser(
  {
    user: "root",
    pwd: "password",
    roles: [ { role: "root", db: "admin" } ]
  }
)
6 dalam tabel target. Mode dokumen adalah pengaturan default ketika Anda menggunakan MongoDB sebagai titik akhir sumber.

Misalnya, pertimbangkan dokumen-dokumen berikut dalam koleksi MongoDB yang disebut MyCollection.

> db.myCollection.find()
{ "_id" : ObjectId("5a94815f40bd44d1b02bdfe0"), "a" : 1, "b" : 2, "c" : 3 }
{ "_id" : ObjectId("5a94815f40bd44d1b02bdfe1"), "a" : 4, "b" : 5, "c" : 6 }

Setelah memigrasikan data ke tabel basis data relasional menggunakan mode dokumen, data terstruktur sebagai berikut. Bidang data dalam dokumen MongoDB dikonsolidasikan ke dalam kolom

use admin
db.createUser(
  {
    user: "root",
    pwd: "password",
    roles: [ { role: "root", db: "admin" } ]
  }
)
6.

oid_id_doc5a94815f40bd44d1b02bdfe0

use admin
db.createUser(
  {
    user: "root",
    pwd: "password",
    roles: [ { role: "root", db: "admin" } ]
  }
)
85a94815f40bd44d1b02bdfe1
use admin
db.createUser(
  {
    user: "root",
    pwd: "password",
    roles: [ { role: "root", db: "admin" } ]
  }
)
9

Anda dapat mengatur atribut sambungan tambahan secara fakultatif

use database_to_migrate
db.createUser( 
{ 
    user: "dms-user",
    pwd: "password",
    roles: [ { role: "read", db: "local" }, "read"] 
})
0 menjadi benar untuk membuat kolom kedua bernama
use database_to_migrate
db.createUser( 
{ 
    user: "dms-user",
    pwd: "password",
    roles: [ { role: "read", db: "local" }, "read"] 
})
1 yang bertindak sebagai kunci utama. Jika Anda akan menggunakan CDC, atur parameter ini menjadi benar.

Dalam mode dokumen, AWS DMS mengelola pembuatan dan penggantian nama koleksi seperti ini:

  • Jika Anda menambahkan koleksi baru ke basis data sumber,AWS DMS menciptakan tabel target baru untuk koleksi dan mereplikasi dokumen.

  • Jika Anda mengubah nama koleksi yang ada pada basis data sumber,AWS DMS tidak mengubah nama tabel target.

Jika titik akhir target adalah Amazon DocumentDB, jalankan migrasi dalam Mode dokumen.

Mode tabel

Dalam mode tabel, AWS DMS mengubah setiap bidang tingkat atas dalam dokumen MongoDB menjadi kolom dalam tabel target. Jika bidang bersarang, AWS DMS meratakan nilai-nilai bersarang ke dalam satu kolom. AWS DMS kemudian menambahkan bidang kunci dan jenis data untuk tabel target rangkaian kolom.

Untuk setiap dokumen MongoDB, AWS DMS menambahkan setiap kunci dan jenis pada tabel target rangkaian kolom. Misalnya, dengan menggunakan mode tabel,AWS DMS memigrasikan contoh sebelumnya ke dalam tabel berikut.

oid_idabc5a94815f40bd44d1b02bdfe01235a94815f40bd44d1b02bdfe1456

Nilai-nilai bersarang diratakan menjadi sebuah kolom yang berisi nama-nama kunci yang dipisahkan oleh titik. Kolom dinamakan penggabungan nama bidang yang diratakan yang dipisahkan oleh titik. Misalnya,AWS DMS memigrasi dokumen JSON dengan bidang nilai-nilai bersarang seperti

use database_to_migrate
db.createUser( 
{ 
    user: "dms-user",
    pwd: "password",
    roles: [ { role: "read", db: "local" }, "read"] 
})
2 ke dalam sebuah kolom bernama
use database_to_migrate
db.createUser( 
{ 
    user: "dms-user",
    pwd: "password",
    roles: [ { role: "read", db: "local" }, "read"] 
})
3

Untuk membuat kolom target, AWS DMS memindai sejumlah dokumen MongoDB tertentu dan menciptakan rangkaian semua bidang dan jenis mereka. AWS DMS kemudian menggunakan rangkaian ini untuk membuat kolom dari tabel target. Jika Anda membuat atau memodifikasi titik akhir sumber MongoDB Anda menggunakan konsol, Anda dapat menentukan jumlah dokumen yang dipindai. Nilai default adalah 1000 dokumen. Jika Anda menggunakan AWS CLI, Anda dapat menggunakan atribut sambungan tambahan

use database_to_migrate
db.createUser( 
{ 
    user: "dms-user",
    pwd: "password",
    roles: [ { role: "read", db: "local" }, "read"] 
})
4.

Dalam mode tabel, AWS DMS mengelola dokumen dan koleksi seperti ini:

  • Ketika Anda menambahkan dokumen ke koleksi yang ada, dokumen itu direplikasi. Jika ada bidang yang tidak ada dalam target, bidang tersebut tidak direplikasi.

  • Ketika Anda memperbarui dokumen, dokumen yang diperbarui tersebut direplikasi. Jika ada bidang yang tidak ada dalam target, bidang tersebut tidak direplikasi.

  • Menghapus dokumen sepenuhnya didukung.

  • Menambahkan koleksi baru tidak menghasilkan tabel baru pada target ketika dilakukan selama tugas CDC.

  • Mengubah nama koleksi tidak didukung.

Izin yang dibutuhkan saat menggunakan MongoDB sebagai sumber untuk AWS DMS

Untuk migrasi AWS DMS dengan sumber MongoDB, Anda dapat membuat baik akun pengguna dengan hak istimewa root, atau pengguna dengan izin hanya pada basis data untuk bermigrasi.

Kode berikut membuat pengguna menjadi akun root.

use admin
db.createUser(
  {
    user: "root",
    pwd: "password",
    roles: [ { role: "root", db: "admin" } ]
  }
)

Untuk sumber MongoDB 3.x, kode berikut menciptakan pengguna dengan hak izin minimal pada basis data yang akan bermigrasi.

use database_to_migrate
db.createUser( 
{ 
    user: "dms-user",
    pwd: "password",
    roles: [ { role: "read", db: "local" }, "read"] 
})

Untuk sumber 4.x MongoDB, kode berikut membuat pengguna dengan hak izin minimal.

{ resource: { db: "", collection: "" }, actions: [ "find", "changeStream" ] }

Sebagai contoh, buatlah peran berikut dalam basis data “admin”.

use admin
db.createRole(
{
role: "changestreamrole",
privileges: [
{ resource: { db: "", collection: "" }, actions: [ "find","changeStream" ] }
],
roles: []
}
)

Dan setelah peran itu dibuat, buatlah pengguna dalam basis data yang akan bermigrasi.

> use test
> db.createUser( 
{ 
user: "dms-user12345",
pwd: "password",
roles: [ { role: "changestreamrole", db: "admin" }, "read"] 
})

Mengonfigurasi rangkaian replika MongoDB yang untuk CDC

Untuk menggunakan replikasi yang sedang berlangsung atau CDC dengan MongoDB, AWS DMS membutuhkan akses ke operations log (oplog) MongoDB. Untuk membuat oplog, Anda perlu men-deploy rangkaian replika jika salah satu tidak ada. Untuk informasi selengkapnya tentang penggunaan, lihat dokumentasi MongoDB.

Anda dapat menggunakan CDC dengan node primer atau node sekunder dari rangkaian replika MongoDB sebagai titik akhir sumber.

Mengonversi instans mandiri menjadi rangkaian replika

  1. Menggunakan baris perintah, hubungkan ke

    use database_to_migrate
    db.createUser( 
    { 
        user: "dms-user",
        pwd: "password",
        roles: [ { role: "read", db: "local" }, "read"] 
    })
    5.

    mongo localhost
  2. Hentikan layanan

    use database_to_migrate
    db.createUser( 
    { 
        user: "dms-user",
        pwd: "password",
        roles: [ { role: "read", db: "local" }, "read"] 
    })
    6.

    service mongod stop
  3. Mulai ulang

    use database_to_migrate
    db.createUser( 
    { 
        user: "dms-user",
        pwd: "password",
        roles: [ { role: "read", db: "local" }, "read"] 
    })
    6 menggunakan perintah berikut ini:

    mongod --replSet "rs0" --auth -port port_number
  4. Uji sambungan ke rangkaian replika menggunakan perintah berikut:

    mongo -u root -p password --host rs0/localhost:port_number 
      --authenticationDatabase "admin" 

Jika Anda berencana untuk melakukan migrasi mode dokumen, pilih opsi

use database_to_migrate
db.createUser( 
{ 
    user: "dms-user",
    pwd: "password",
    roles: [ { role: "read", db: "local" }, "read"] 
})
8 ketika Anda membuat titik akhir MongoDB. Memilih opsi ini membuat kolom kedua bernama
use admin
db.createUser(
  {
    user: "root",
    pwd: "password",
    roles: [ { role: "root", db: "admin" } ]
  }
)
5 yang bertindak sebagai kunci utama. Kolom kedua ini diperlukan oleh AWS DMS untuk mendukung operasi data manipulation languange (DML).

Persyaratan keamanan saat menggunakan MongoDB sebagai sumber untuk AWS DMS

AWS DMS mendukung dua metode autentikasi untuk MongoDB. Dua metode autentikasi digunakan untuk mengenkripsi kata sandi, sehingga mereka hanya digunakan ketika parameter

{ resource: { db: "", collection: "" }, actions: [ "find", "changeStream" ] }
0 diatur menjadi PASSWORD.

Metode autentikasi MongoDB adalah sebagai berikut:

  • MONGODB-CR - Untuk kompatibilitas mundur

  • SCRAM-SHA-1 — Standar saat menggunakan MongoDB versi 3.x dan 4.0

Jika metode autentikasi tidak ditentukan, AWS DMS menggunakan metode default untuk versi sumber MongoDB.

Melakukan segmen koleksi MongoDB dan bermigrasi secara paralel

Untuk meningkatkan performa tugas migrasi, titik akhir sumber MongoDB mendukung dua opsi untuk beban penuh parallel dalam pemetaan tabel.

Dengan kata lain, Anda dapat memigrasikan koleksi secara parallel dengan menggunakan segmentasi otomatis atau segmentasi rentang dengan pemetaan tabel untuk beban penuh parallel dalam pengaturan JSON. Dengan autosegmentasi, Anda dapat menentukan kriteriaAWS DMS untuk secara otomatis mengelompokkan sumber Anda untuk migrasi di setiap thread. Dengan segmentasi jangkauan, Anda dapat memberi tahuAWS DMS kisaran spesifik dari setiap segmen untuk DMS untuk bermigrasi di setiap utas. Untuk informasi selengkapnya tentang pengaturan, lihat Tabel dan koleksi pengaturan aturan dan operasi.

Migrasi database MongoDB secara parallel menggunakan rentang autosegmentasi

Anda dapat memigrasi dokumen Anda secara parallel dengan menentukan kriteriaAWS DMS untuk secara otomatis mempartisi (segmen) data Anda untuk setiap thread. Secara khusus, Anda menentukan jumlah dokumen yang akan dimigrasi per utas. Dengan menggunakan pendekatan ini,AWS DMS upaya untuk mengoptimalkan batas segmen untuk kinerja maksimum per thread.

Anda dapat menentukan kriteria segmentasi menggunakan opsi pengaturan tabel berikut dalam pemetaan tabel.

Opsi pengaturan tabel

Deskripsi

{ resource: { db: "", collection: "" }, actions: [ "find", "changeStream" ] }
1

(Diperlukan) Set

{ resource: { db: "", collection: "" }, actions: [ "find", "changeStream" ] }
2 untuk MongoDB sebagai sumber.

{ resource: { db: "", collection: "" }, actions: [ "find", "changeStream" ] }
3

(Opsional) Jumlah total partisi (segmen) yang digunakan untuk migrasi. Ukuran default-nya adalah 16.

{ resource: { db: "", collection: "" }, actions: [ "find", "changeStream" ] }
4

(Opsional) Jika opsi ini diatur ke

{ resource: { db: "", collection: "" }, actions: [ "find", "changeStream" ] }
5,AWS DMS gunakan perkiraan jumlah koleksi untuk menentukan jumlah partisi. Jika opsi ini diatur ke
{ resource: { db: "", collection: "" }, actions: [ "find", "changeStream" ] }
6,AWS DMS menggunakan jumlah koleksi yang sebenarnya. Defaultnya adalah
{ resource: { db: "", collection: "" }, actions: [ "find", "changeStream" ] }
5.

{ resource: { db: "", collection: "" }, actions: [ "find", "changeStream" ] }
8

(Opsional) Jumlah catatan yang harus dilewati sekaligus saat menentukan batas untuk setiap partisi. AWS DMSmenggunakan pendekatan melewatkan paginasi untuk menentukan batas minimum untuk partisi. Default adalah 10.000.

Menetapkan nilai yang relatif besar dapat mengakibatkan timeout kursor dan kegagalan tugas. Menetapkan nilai yang relatif rendah menghasilkan lebih banyak operasi per halaman dan beban penuh yang lebih lambat.

{ resource: { db: "", collection: "" }, actions: [ "find", "changeStream" ] }
9

(Opsional) Membatasi jumlah dokumen yang dikembalikan dalam satu batch. Setiap batch membutuhkan perjalanan pulang pergi ke server. Jika ukuran batch nol (0), kursor menggunakan ukuran batch maksimum yang ditentukan server. Default-nya adalah 0.

Contoh berikut menunjukkan pemetaan tabel untuk autosegmentasi.

use admin
db.createUser(
  {
    user: "root",
    pwd: "password",
    roles: [ { role: "root", db: "admin" } ]
  }
)
0

Autosegmentation memiliki keterbatasan berikut. Migrasi untuk setiap segmen mengambil jumlah koleksi dan minimum

use admin
db.createUser(
  {
    user: "root",
    pwd: "password",
    roles: [ { role: "root", db: "admin" } ]
  }
)
5 untuk koleksi secara terpisah. Kemudian menggunakan lompatan paginasi untuk menghitung batas minimum untuk segmen itu.

Oleh karena itu, pastikan bahwa

use admin
db.createUser(
  {
    user: "root",
    pwd: "password",
    roles: [ { role: "root", db: "admin" } ]
  }
)
5 nilai minimum untuk setiap koleksi tetap konstan sampai semua batas segmen dalam koleksi dihitung. Jika Anda mengubah
use admin
db.createUser(
  {
    user: "root",
    pwd: "password",
    roles: [ { role: "root", db: "admin" } ]
  }
)
5 nilai minimum untuk koleksi selama perhitungan batas segmennya, hal itu dapat menyebabkan kehilangan data atau kesalahan baris duplikat.

Migrasi database MongoDB secara parallel menggunakan rentang segmentasi

Anda dapat memigrasi dokumen Anda secara parallel dengan menentukan rentang untuk setiap segmen dalam utas. Dengan menggunakan pendekatan ini, Anda memberi tahuAWS DMS dokumen spesifik untuk bermigrasi di setiap thread sesuai dengan pilihan rentang dokumen Anda per utas.

Gambar berikut menunjukkan koleksi MongoDB yang memiliki tujuh item, dan

use admin
db.createUser(
  {
    user: "root",
    pwd: "password",
    roles: [ { role: "root", db: "admin" } ]
  }
)
5 sebagai kunci utama.

Cara menggunakan mongodb relational database

Untuk membagi koleksi menjadi tiga segmen tertentuAWS DMS untuk bermigrasi secara parallel, Anda dapat menambahkan aturan pemetaan tabel ke tugas migrasi Anda. Pendekatan ini seperti yang ditunjukkan dalam contoh JSON berikut.

use admin
db.createUser(
  {
    user: "root",
    pwd: "password",
    roles: [ { role: "root", db: "admin" } ]
  }
)
1

Bahwa definisi pemetaan tabel membagi koleksi sumber menjadi tiga segmen dan bermigrasi secara paralel. Berikut ini adalah batas-batas segmentasi.

use admin
db.createUser(
  {
    user: "root",
    pwd: "password",
    roles: [ { role: "root", db: "admin" } ]
  }
)
2

Setelah tugas migrasi selesai, Anda dapat melakukan verifikasi dari log tugas yang dimuat tabel secara paralel, seperti yang ditunjukkan dalam contoh berikut. Anda juga dapat melakukan verifikasi

use admin
db.createRole(
{
role: "changestreamrole",
privileges: [
{ resource: { db: "", collection: "" }, actions: [ "find","changeStream" ] }
],
roles: []
}
)
4 klausul MongoDB yang digunakan untuk membongkar setiap segmen dari tabel sumber.

use admin
db.createUser(
  {
    user: "root",
    pwd: "password",
    roles: [ { role: "root", db: "admin" } ]
  }
)
3

Saat ini,AWS DMS mendukung jenis data MongoDB berikut sebagai kolom kunci segmen:

  • Dua Kali

  • String

  • ObjectId

  • 32 bit integer

  • 64 bit integer

Migrating beberapa basis data saat menggunakan MongoDB sebagai sumber untukAWS DMS

AWS DMSversi 3.4.5 dan yang lebih baru mendukung migrasi beberapa database dalam satu tugas untuk semua versi MongoDB yang didukung. Jika Anda ingin memigrasi beberapa database, ambil langkah-langkah ini:

  1. Bila Anda membuat titik akhir sumber MongoDB, lakukan salah satu hal berikut:

    • Pada konsol DMS Create halaman endpoint, pastikan bahwa nama Database kosong di bawah konfigurasi Endpoint.

    • MenggunakanAWS CLI

      use admin
      db.createRole(
      {
      role: "changestreamrole",
      privileges: [
      { resource: { db: "", collection: "" }, actions: [ "find","changeStream" ] }
      ],
      roles: []
      }
      )
      5 perintah, tetapkan nilai string kosong ke
      use admin
      db.createRole(
      {
      role: "changestreamrole",
      privileges: [
      { resource: { db: "", collection: "" }, actions: [ "find","changeStream" ] }
      ],
      roles: []
      }
      )
      6 parameter di
      use admin
      db.createRole(
      {
      role: "changestreamrole",
      privileges: [
      { resource: { db: "", collection: "" }, actions: [ "find","changeStream" ] }
      ],
      roles: []
      }
      )
      7.

  2. Untuk setiap database yang ingin Anda migrasi dari sumber MongoDB, tentukan nama database sebagai nama skema dalam pemetaan tabel untuk tugas tersebut. Anda dapat melakukan ini menggunakan input yang dipandu di konsol atau langsung di JSON. Untuk informasi lebih lanjut tentang masukan yang dipandu, lihat Menentukan pemilihan tabel dan transformasi aturan dari konsol. Untuk informasi lebih lanjut tentang JSON, lihatAturan seleksi dan tindakan.

Misalnya, Anda mungkin menentukan JSON berikut untuk memigrasi tiga database MongoDB.

contoh Memigrasi semua tabel dalam skema

Berikut JSON bermigrasi semua tabel dari

use admin
db.createRole(
{
role: "changestreamrole",
privileges: [
{ resource: { db: "", collection: "" }, actions: [ "find","changeStream" ] }
],
roles: []
}
)
8
use admin
db.createRole(
{
role: "changestreamrole",
privileges: [
{ resource: { db: "", collection: "" }, actions: [ "find","changeStream" ] }
],
roles: []
}
)
9, dan
> use test
> db.createUser( 
{ 
user: "dms-user12345",
pwd: "password",
roles: [ { role: "changestreamrole", db: "admin" }, "read"] 
})
0 basis data di titik akhir sumber Anda ke titik akhir target Anda.

use admin
db.createUser(
  {
    user: "root",
    pwd: "password",
    roles: [ { role: "root", db: "admin" } ]
  }
)
4

Keterbatasan saat menggunakan MongoDB sebagai sumber untuk AWS DMS

Berikut ini adalah keterbatasan ketika menggunakan MongoDB sebagai sumber untuk AWS DMS:

  • Saat opsi

    use admin
    db.createUser(
      {
        user: "root",
        pwd: "password",
        roles: [ { role: "root", db: "admin" } ]
      }
    )
    5 diatur sebagai kolom terpisah, string ID tidak dapat melebihi 200 karakter.

  • ID objek dan kunci jenis rangkaian dikonversi ke kolom yang diawali dengan

    > use test
    > db.createUser( 
    { 
    user: "dms-user12345",
    pwd: "password",
    roles: [ { role: "changestreamrole", db: "admin" }, "read"] 
    })
    2 dan
    > use test
    > db.createUser( 
    { 
    user: "dms-user12345",
    pwd: "password",
    roles: [ { role: "changestreamrole", db: "admin" }, "read"] 
    })
    3 dalam mode tabel.

    Secara internal, kolom ini diacu dengan nama prefiks. Jika Anda menggunakan aturan transformasi di AWS DMS yang mengacu kolom ini, pastikan untuk menentukan kolom prefiks. Misalnya, Anda menentukan

    > use test
    > db.createUser( 
    { 
    user: "dms-user12345",
    pwd: "password",
    roles: [ { role: "changestreamrole", db: "admin" }, "read"] 
    })
    4 dan bukan
    > use test
    > db.createUser( 
    { 
    user: "dms-user12345",
    pwd: "password",
    roles: [ { role: "changestreamrole", db: "admin" }, "read"] 
    })
    5, atau
    > use test
    > db.createUser( 
    { 
    user: "dms-user12345",
    pwd: "password",
    roles: [ { role: "changestreamrole", db: "admin" }, "read"] 
    })
    6 dan bukan
    > use test
    > db.createUser( 
    { 
    user: "dms-user12345",
    pwd: "password",
    roles: [ { role: "changestreamrole", db: "admin" }, "read"] 
    })
    7.

  • Nama koleksi dan nama kunci tidak dapat menyertakan simbol dolar ($).

  • Mode tabel dan dokumen memiliki keterbatasan seperti yang dijelaskan sebelumnya.

  • Migrasi secara parallel menggunakan autosegmentasi memiliki keterbatasan yang dijelaskan sebelumnya.

  • Filter sumber tidak didukung untuk MongoDB.

  • AWS DMStidak mendukung dokumen di mana tingkat bersarang lebih besar dari 97.

Pengaturan konfigurasi titik akhir saat menggunakan MongoDB sebagai sumber untuk AWS DMS

Ketika Anda mengatur titik akhir sumber MongoDB Anda, Anda dapat menentukan beberapa pengaturan konfigurasi titik akhir menggunakan konsol AWS DMS.

Tabel berikut menjelaskan pengaturan konfigurasi yang tersedia ketika menggunakan basis data MongoDB sebagai sumber AWS DMS.

Pengaturan (atribut)Nilai validNilai default dan deskripsi

Mode otentikasi

> use test
> db.createUser( 
{ 
user: "dms-user12345",
pwd: "password",
roles: [ { role: "changestreamrole", db: "admin" }, "read"] 
})
8

> use test
> db.createUser( 
{ 
user: "dms-user12345",
pwd: "password",
roles: [ { role: "changestreamrole", db: "admin" }, "read"] 
})
9

Nilai

> use test
> db.createUser( 
{ 
user: "dms-user12345",
pwd: "password",
roles: [ { role: "changestreamrole", db: "admin" }, "read"] 
})
9 meminta nama pengguna dan kata sandi. Saat
> use test
> db.createUser( 
{ 
user: "dms-user12345",
pwd: "password",
roles: [ { role: "changestreamrole", db: "admin" }, "read"] 
})
8 ditentukan, parameter nama pengguna dan kata sandi tidak digunakan.

Sumber otentikasi

Sebuah nama basis data MongoDB yang valid.

Nama basis data MongoDB yang ingin Anda gunakan untuk melakukan validasi Anda untuk autentikasi. Nilai default-nya adalah

mongo localhost
2.

Mekanisme otentikasi

mongo localhost
3

mongo localhost
4

mongo localhost
5

Mekanisme otentikasi. Nilai

mongo localhost
3 adalah
mongo localhost
5. Pengaturan ini tidak digunakan saat
{ resource: { db: "", collection: "" }, actions: [ "find", "changeStream" ] }
0 diatur menjadi
mongo localhost
9.

Mode metadata

Dokumen dan Tabel

Memilih mode dokumen atau mode tabel.

Jumlah dokumen untuk memindai (docsToInvestigate)

Sebuah integer positif lebih besar dari

service mongod stop
0.

Gunakan opsi ini dalam tabel hanya untuk menentukan definisi tabel target.

_id sebagai kolom terpisah

Tanda centang di kotak

Kotak tanda centang opsional yang membuat kolom kedua bernama

use admin
db.createUser(
  {
    user: "root",
    pwd: "password",
    roles: [ { role: "root", db: "admin" } ]
  }
)
5 yang bertindak sebagai kunci utama.

Jika Anda memilih Dokumen sebagai Mode metadata, opsi yang berbeda akan tersedia.

Jika titik akhir target adalah DocumentDB, pastikan untuk menjalankan migrasi dalam Mode dokumen Juga, ubah titik akhir sumber Anda dan pilih opsi _id sebagai kolom terpisah. Ini adalah prasyarat wajib jika beban kerja MongoDB sumber Anda melibatkan transaksi.

Jenis data sumber untuk MongoDB

Migrasi data yang menggunakan MongoDB sebagai sumber untuk AWS DMS mendukung sebagian besar jenis data MongoDB. Pada tabel berikut, Anda dapat menemukan jenis data sumber MongoDB yang didukung saat menggunakan AWS DMS dan pemetaan default dari jenis data AWS DMS. Untuk informasi lebih lanjut tentang jenis data MongoDB, lihatjenis BSONdalam dokumentasi MongoDB.

Untuk informasi tentang cara melihat jenis data yang dipetakan dalam target, lihat bagian titik akhir target yang Anda gunakan.

Untuk informasi tambahan tentang jenis data AWS DMS, lihat Tipe data untuk AWS Database Migration Service.

MongoDB digunakan untuk apa?

3. Cocok Untuk Menampung Data yang Bervariasi Dynamic schema membuat MongoDB cocok untuk menampung data yang bervariasi baik digunakan untuk menyimpan data yang terstruktur ataupun yang tidak terstruktur.

Mengapa MongoDB disebut basis data non relasional?

MongoDB merupakan sebuah database yang memiliki konsep NoSQL. Istilah ini dapat diartikan secara awam dengan non relasional karena berbeda dengan MySQL yang merupakan RDBMS (relational database management system).

Kapan harus menggunakan MongoDB?

Kapan Menggunakan MongoDB Misalnya kamu memiliki toko online yang ramai pelanggan yang setiap menitnya terdapat ada 100 data pelanggan yang masuk. Selain itu kamu juga bisa menggunakan MongoDB saat data yang didapatkan berkembang secara cepat dan memiliki struktur data yang kompleks.

MongoDB apakah termasuk rdbms?

MongoDB adalah salah satu jenis database yang menggunakan konsep NoSQL berbasis dokumen. Hal ini tentu berbeda dengan database yang menggunakan konsep MySQL dengan RDBMSnya.