Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Migrasi ke Amazon DocumentDB
Amazon DocumentDB (dengan kompatibilitas MongoDB) adalah layanan database yang dikelola sepenuhnya yang kompatibel dengan MongoDB. API Anda dapat memigrasikan data ke Amazon DocumentDB dari database MongoDB yang berjalan di tempat atau di Amazon Elastic Compute EC2 Cloud (Amazon) menggunakan proses yang dirinci di bagian ini.
Topik
Alat Migrasi
Untuk bermigrasi ke Amazon DocumentDB, dua alat utama yang digunakan sebagian besar pelanggan adalah AWS Database Migration Service (AWS DMS)mongodump
dan mongorestore
. Sebagai praktik terbaik, dan untuk salah satu dari opsi ini, Anda sebaiknya membuat indeks terlebih dahulu di Amazon DocumentDB sebelum memulai migrasi Anda karena ini dapat mengurangi keseluruhan waktu dan meningkatkan kecepatan migrasi. Untuk melakukannya, Anda dapat menggunakan Alat Indeks Amazon DocumentDB
AWS Database Migration Service
AWS Database Migration Service (AWS DMS) adalah layanan cloud yang memudahkan migrasi database relasional dan database non-relasional ke Amazon DocumentDB. Anda dapat menggunakannya AWS DMS untuk memigrasikan data ke Amazon DocumentDB dari database yang dihosting di tempat atau di tempat. EC2 Dengan AWS DMS, Anda dapat melakukan migrasi satu kali, atau Anda dapat mereplikasi perubahan yang sedang berlangsung untuk menjaga sumber dan target tetap sinkron.
Untuk informasi lebih lanjut tentang penggunaan AWS DMS untuk bermigrasi ke Amazon DocumentDB, silakan lihat:
Utilitas baris perintah
Utilitas umum untuk memigrasikan data ke dan dari Amazon DocumentDB termasuk mongodump
, mongorestore
, mongoexport
, dan mongoimport
. Biasanya, mongodump
dan mongorestore
merupakan utilitas paling efisien karena mereka membuang dan memulihkan data dari basis data Anda dalam format biner. Ini umumnya merupakan pilihan terbaik dan menghasilkan ukuran data yang lebih kecil dibandingkan dengan ekspor logis. mongoexport
dan mongoimport
berguna jika Anda ingin mengekspor dan mengimpor data dalam format logis CSV seperti JSON atau karena data dapat dibaca manusia tetapi umumnya lebih lambat darimongodump
/mongorestore
dan menghasilkan ukuran data yang lebih besar.
Pendekatan migrasiBagian di bawah ini akan membahas kapan yang terbaik untuk menggunakan AWS DMS dan utilitas baris perintah berdasarkan kasus penggunaan dan persyaratan Anda.
Penemuan
Untuk setiap deployment MongoDB, Anda harus mengidentifikasi dan mencatat dua set data: Detail Arsitektur dan Karakteristik Operasional. Informasi ini akan membantu Anda memilih pendekatan migrasi dan ukuran klaster yang sesuai.
Detail arsitektur
-
Nama
Pilih nama unik untuk melacak deployment ini.
-
Versi
Catat versi MongoDB yang sedang dijalankan oleh deployment Anda. Untuk menemukan versinya, buat sambungan ke anggota kumpulan replika dengan mongo shell dan jalankan operasi
db.version()
. -
Jenis
Catat apakah deployment Anda adalah instans mongo mandiri, kumpulan replika, atau klaster serpihan.
-
Anggota
Catat nama host, alamat, dan port setiap klaster, kumpulan replika, atau anggota mandiri.
Untuk klaster deployment, Anda dapat menemukan anggota serpihan setelah menghubungkan ke host mongo dengan mongo shell dan menjalankan operasi
sh.status()
.Untuk kumpulan replika, Anda dapat memperoleh anggota dengan membuat koneksi ke anggota kumpulan replika dengan mongo shell dan menjalankan operasi
rs.status()
. -
Ukuran oplog
Untuk kumpulan replika atau serpihan klaster, catat ukuran oplog untuk setiap anggota kumpulan replika. Untuk menemukan ukuran oplog anggota, sambungkan ke anggota kumpulan replika dengan mongo shell dan jalankan operasi
ps.printReplicationInfo()
. -
Replika menetapkan prioritas anggota
Untuk kumpulan replika atau serpihan klaster, catat prioritas untuk setiap anggota kumpulan replika. Untuk menemukan prioritas anggota kumpulan replika, buat koneksi ke anggota kumpulan replika dengan mongo shell dan jalankan operasi
rs.conf()
. Prioritas ditampilkan sebagai nilai kuncipriority
. -
TLS/SSLpenggunaan
Rekam apakah Transport Layer Security (TLS) /Secure Sockets Layer (SSL) digunakan pada setiap node untuk enkripsi dalam perjalanan.
Karakteristik Operasional
-
Statistik basis data
Untuk setiap koleksi, catat informasi berikut:
-
Nama
-
Ukuran data
-
Jumlah koleksi
Untuk mencari statistik basis data, buat koneksi ke basis data Anda dengan mongo shell dan jalankan perintah
db.runCommand({dbstats: 1})
. -
-
Statistik koleksi
Untuk setiap koleksi, catat informasi berikut:
-
Namespace
-
Ukuran data
-
Jumlah indeks
-
Apakah koleksi ditutup
-
-
Statistik indeks
Untuk setiap koleksi, catat informasi indeks berikut:
-
Namespace
-
ID
-
Size
-
Kunci
-
TTL
-
Tersebar
-
Latar Belakang
Untuk menemukan informasi indeks, buat koneksi ke basis data Anda dengan mongo shell dan jalankan perintah
db.collection.getIndexes()
. -
-
Opcounter
Informasi ini membantu Anda memahami pola beban kerja MongoDB Anda saat ini (read-heavy, write-heavy, atau seimbang). Hal ini juga memberikan panduan tentang instans Amazon DocumentDB awal yang Anda pilih.
Berikut ini adalah bagian kunci dari informasi yang perlu dikumpulkan selama periode pemantauan (dalam hitungan/detik):
-
Mengajukan Kueri
-
Menyisipkan
-
Pembaruan
-
Menghapus
Anda dapat memeroleh informasi ini dengan membuat grafik output perintah
db.serverStatus()
dari waktu ke waktu. Anda juga dapat menggunakan alat mongostat untuk mendapatkan nilai-nilai seketika untuk statistik ini. Namun, dengan opsi ini Anda berisiko merencanakan migrasi pada periode penggunaan selain beban puncak. -
-
Statistik jaringan
Informasi ini membantu Anda memahami pola beban kerja MongoDB Anda saat ini (read-heavy, write-heavy, atau seimbang). Hal ini juga memberikan panduan tentang instans Amazon DocumentDB awal yang Anda pilih.
Berikut ini adalah bagian kunci dari informasi yang perlu dikumpulkan selama periode pemantauan (dalam hitungan/detik):
-
Koneksi
-
Byte jaringan masuk
-
Byte jaringan keluar
Anda bisa mendapatkan informasi ini dengan membuat grafik output perintah
db.serverStatus()
dari waktu ke waktu. Anda juga dapat menggunakan alat mongostat untuk mendapatkan nilai-nilai seketika untuk statistik ini. Namun, dengan opsi ini Anda berisiko merencanakan migrasi pada periode penggunaan selain beban puncak. -
Perencanaan: Persyaratan cluster Amazon DocumentDB
Jika migrasi berhasil, Anda akan diminta untuk secara saksama mempertimbangkan konfigurasi klaster Amazon DocumentDB dan bagaimana aplikasi akan mengakses klaster Anda. Pertimbangkan masing-masing dimensi berikut saat menentukan persyaratan klaster Anda:
-
Ketersediaan
Amazon DocumentDB menyediakan ketersediaan tinggi melalui deployment instans replika, yang dapat dipromosikan ke instans utama dalam proses yang dikenal sebagai failover. Dengan men-deploy instans replika untuk Availability Zone yang berbeda, Anda dapat mencapai tingkat ketersediaan yang lebih tinggi.
Tabel berikut memberikan pedoman untuk konfigurasi deployment Amazon DocumentDB guna memenuhi tujuan ketersediaan tertentu.
Target Ketersediaan Total Instans Replika Zona Ketersediaan 99% 1 0 1 99,9% 2 1 2 99,99% 3 2 3 Secara keseluruhan, keandalan sistem harus mempertimbangkan semua komponen, bukan hanya basis data. Terkait praktik terbaik dan rekomendasi untuk memenuhi kebutuhan keandalan sistem secara keseluruhan, lihat AWS Laporan Resmi Pilar Keandalan Well-Architected
. -
Kinerja
Instans Amazon DocumentDB memungkinkan Anda membaca dari dan menulis ke volume penyimpanan klaster Anda. Instance cluster datang dalam beberapa tipe, dengan jumlah memori dan v yang bervariasiCPU, yang memengaruhi kinerja baca dan tulis cluster Anda. Dengan menggunakan informasi yang Anda kumpulkan dalam fase penemuan, pilih jenis instans yang dapat mendukung persyaratan performa beban kerja Anda. Untuk daftar tipe instans yang didukung, lihat Mengelola kelas instance.
Saat memilih jenis instans untuk klaster Amazon DocumentDB Anda, pertimbangkan aspek berikut dari persyaratan performa beban kerja Anda:
-
vCPUs—Arsitektur yang memerlukan jumlah koneksi yang lebih tinggi mungkin mendapat manfaat dari instance dengan lebih banyak v. CPUS
-
Memori—Bila memungkinkan, penyimpanan set data kerja Anda dalam memori akan memberikan performa maksimal. Menurut panduan awal, yang perlu dilakukan adalah mencadangkan sepertiga memori instans untuk mesin Amazon DocumentDB, dan menyisakan dua pertiga untuk set data kerja.
-
Koneksi —Jumlah koneksi optimal minimum adalah delapan koneksi per instans Amazon CPU DocumentDB v. Meskipun batas koneksi instans Amazon DocumentDB jauh lebih tinggi, manfaat kinerja koneksi tambahan menurun di atas delapan koneksi per v. CPU
-
Jaringan—Beban kerja dengan sejumlah besar klien atau koneksi harus mempertimbangkan performa jaringan agregat yang diperlukan untuk data yang dimasukkan dan diambil. Operasi massal dapat membuat penggunaan sumber daya jaringan lebih efisien.
-
Performa Sisipan—Penyisipan dokumen tunggal biasanya merupakan cara paling lambat untuk menyisipkan data ke Amazon DocumentDB. Operasi sisipan massal dapat secara dramatis lebih cepat daripada sisipan tunggal.
-
Performa Baca—Membaca dari memori kerja selalu lebih cepat daripada membaca yang dikembalikan dari volume penyimpanan. Oleh karenanya, sangat ideal untuk mengoptimalkan ukuran memori instans Anda untuk mempertahankan set kerja Anda di memori.
Selain melayani pembacaan dari instans utama Anda, klaster Amazon DocumentDB secara otomatis dikonfigurasi sebagai set replika. Anda kemudian dapat merutekan kueri hanya-baca untuk membaca replika dengan menyetel preferensi baca di driver MongoDB Anda. Anda dapat menskalakan lalu lintas baca dengan menambahkan replika, sehingga mengurangi beban keseluruhan pada instans utama.
Deployment replika Amazon DocumentDB dari jenis instans yang berbeda dalam klaster yang sama dapat dilakukan. Contoh kasus penggunaan mungkin adalah pembuatan replika dengan jenis instans yang lebih besar untuk melayani lalu lintas analitik sementara. Jika Anda men-deploy kumpulan jenis instans campuran, pastikan prioritas failover telah dikonfigurasi pada setiap instans. Ini membantu memastikan bahwa peristiwa failover selalu mendukung replika dengan ukuran yang cukup untuk menangani beban tulis Anda.
-
-
Pemulihan
Amazon DocumentDB terus mencadangkan data Anda seperti yang tertulis. Ini memberikan kemampuan point-in-time pemulihan (PITR) dalam periode yang dapat dikonfigurasi 1-35 hari, yang dikenal sebagai periode retensi cadangan. Periode retensi cadangan default adalah satu hari. Secara otomatis, Amazon DocumentDB juga membuat snapshot harian dari volume penyimpanan Anda, yang juga disimpan selama periode retensi cadangan terkonfigurasi.
Jika Anda ingin menyimpan snapshot di luar periode retensi cadangan, Anda juga dapat memulai snapshot manual kapan saja menggunakan AWS Management Console dan AWS Command Line Interface ().AWS CLI Untuk informasi selengkapnya, lihat Mencadangkan dan memulihkan di Amazon DocumentDB.
Pertimbangkan hal berikut saat Anda merencanakan migrasi:
-
Pilih periode retensi cadangan 1—35 hari yang memenuhi tujuan titik pemulihan Anda ()RPO.
-
Tentukan apakah Anda memerlukan snapshot manual, dan jika demikian, pada interval apa.
-
Pendekatan migrasi
Terdapat tiga pendekatan utama untuk migrasi data Anda ke Amazon DocumentDB.
catatan
Meskipun Anda dapat membuat indeks kapan saja di Amazon DocumentDB, secara keseluruhan lebih cepat untuk membuatnya sebelum mengimpor set data besar. Sebagai praktik terbaik, kami menyarankan agar Anda terlebih dahulu membuat indeks di Amazon DocumentDB sebelum melakukan migrasi untuk setiap pendekatan di bawah ini. Untuk melakukannya, Anda dapat menggunakan Alat Indeks Amazon DocumentDB
Offline
Pendekatan offline menggunakan alat mongodump
dan mongorestore
untuk memigrasikan data Anda dari deployment MongoDB sumber ke klaster Amazon DocumentDB Anda. Metode offline adalah pendekatan migrasi yang paling sederhana, namun turut menimbulkan waktu henti terbanyak untuk klaster Anda.
Proses dasar untuk migrasi offline adalah sebagai berikut:
-
Quiesce menulis ke sumber MongoDB Anda.
-
Buang data pengumpulan dan indeks dari deployment MongoDB sumber.
-
Jika Anda bermigrasi ke Elastic Cluster, buat koleksi sharded Anda menggunakan perintah.
sh.shardCollection()
Jika Anda bermigrasi ke klaster berbasis instans, lewati ke langkah berikutnya. -
Kembalikan indeks ke klaster Amazon DocumentDB.
-
Kembalikan data pengumpulan ke klaster Amazon DocumentDB.
-
Mengubah titik akhir aplikasi Anda untuk menulis ke klaster Amazon DocumentDB.
Online
Pendekatan online menggunakan AWS Database Migration Service (AWS DMS). Ini menjalankan beban penuh data dari deployment MongoDB sumber ke klaster Amazon DocumentDB Anda. Kemudian beralih ke mengubah mode pengambilan data (CDC) untuk mereplikasi perubahan. Pendekatan online meminimalkan waktu henti untuk klaster Anda, tetapi ini adalah metode paling lambat dari ketiga metode tersebut.
Proses dasar migrasi online adalah sebagai berikut:
-
Aplikasi Anda umumnya menggunakan DB sumber.
-
Jika Anda bermigrasi ke Elastic Cluster, buat koleksi sharded Anda menggunakan perintah.
sh.shardCollection()
Jika Anda bermigrasi ke klaster berbasis instans, lewati ke langkah berikutnya. -
Pra-buat indeks di cluster Amazon DocumentDB.
-
Buat AWS DMS tugas untuk melakukan pemuatan penuh, lalu aktifkan CDC dari penyebaran MongoDB sumber ke cluster Amazon DocumentDB.
-
Setelah AWS DMS tugas menyelesaikan beban penuh dan mereplikasi perubahan ke Amazon DocumentDB, alihkan titik akhir aplikasi ke cluster Amazon DocumentDB.
Untuk informasi selengkapnya tentang penggunaan AWS DMS untuk bermigrasi, lihat Menggunakan Amazon DocumentDB sebagai AWS Database Migration Service Target untuk dan Tutorial AWS Database Migration Service terkait di Panduan Pengguna.
Hibrida
Pendekatan hidbrid menggunakan alat mongodump
dan mongorestore
untuk memigrasikan data Anda dari deployment MongoDB sumber ke klaster Amazon DocumentDB. Kemudian menggunakan AWS DMS dalam CDC mode untuk mereplikasi perubahan. Pendekatan hibrida menyeimbangkan kecepatan migrasi dan waktu henti, tetapi ini adalah yang paling kompleks dari tiga pendekatan tersebut.
Proses dasar untuk migrasi hibrida adalah sebagai berikut:
-
Aplikasi Anda umumnya menggunakan deployment MongoDB sumber.
-
Buang data pengumpulan dan indeks dari deployment MongoDB sumber.
-
Kembalikan indeks ke klaster Amazon DocumentDB.
-
Jika Anda bermigrasi ke Elastic Cluster, buat koleksi sharded Anda menggunakan perintah.
sh.shardCollection()
Jika Anda bermigrasi ke klaster berbasis instans, lewati ke langkah berikutnya. -
Kembalikan data pengumpulan ke klaster Amazon DocumentDB.
-
Buat AWS DMS tugas untuk mengaktifkan CDC dari penyebaran MongoDB sumber ke cluster Amazon DocumentDB.
-
Saat AWS DMS tugas mereplikasi perubahan dalam jendela yang dapat diterima, ubah titik akhir aplikasi Anda untuk menulis ke klaster Amazon DocumentDB.
penting
Sebuah AWS DMS tugas saat ini hanya dapat memigrasikan satu database. Jika sumber MongoDB Anda memiliki basis data dalam jumlah besar, Anda mungkin perlu mengotomatiskan pembuatan tugas migrasi, atau mencoba menggunakan metode offline.
Terlepas dari pendekatan migrasi yang Anda pilih, yang paling efisien adalah membuat indeks terlebih dahulu di klaster Amazon DocumentDB sebelum memigrasikan data. Ini karena indeks Amazon DocumentDB adalah data yang dimasukkan secara paralel, sedangkan pembuatan indeks pada data yang ada adalah operasi utas tunggal.
Karena AWS DMS tidak memigrasikan indeks (hanya data Anda), tidak ada langkah tambahan yang diperlukan untuk menghindari pembuatan indeks untuk kedua kalinya.
Sumber migrasi
Jika sumber MongoDB Anda adalah proses mongo mandiri dan Anda ingin menggunakan pendekatan migrasi online atau hibrida, pertama-tama konversikan mongo mandiri Anda ke set replika sehingga oplog dibuat untuk digunakan sebagai sumber. CDC
Jika Anda bermigrasi dari kumpulan replika MongoDB atau serpihan klaster, cobalah membuat sekunder berantai atau tersembunyi untuk setiap kumpulan atau serpihan replika yang akan digunakan sebagai sumber migrasi Anda. Pembuangan data dapat memaksa kumpulan data yang bekerja keluar dari memori dan memengaruhi performa pada instans produksi. Anda dapat mengurangi risiko ini dengan bermigrasi dari node yang tidak melayani data produksi.
Versi Sumber Migrasi
Jika versi basis data MongoDB sumber Anda berbeda dengan versi kompatibilitas klaster Amazon DocumentDB tujuan, Anda mungkin perlu mengambil langkah persiapan lain untuk memastikan keberhasilan migrasi. Dua persyaratan yang paling umum ditemui adalah kebutuhan untuk meningkatkan penginstalan MongoDB sumber ke versi yang didukung untuk migrasi (MongoDB versi 3.0 atau lebih tinggi), dan memutakhirkan driver aplikasi Anda untuk mendukung versi Amazon DocumentDB target.
Pastikan bahwa jika migrasi Anda memiliki salah satu persyaratan ini, Anda menyertakan langkah-langkah tersebut dalam rencana migrasi Anda untuk meningkatkan dan menguji setiap perubahan driver.
Konektivitas migrasi
Anda dapat bermigrasi ke Amazon DocumentDB dari penerapan MongoDB sumber yang berjalan di pusat data Anda atau dari penerapan MongoDB yang berjalan di instans Amazon. EC2 Migrasi dari MongoDB berjalan EC2 sangat mudah, dan hanya mengharuskan Anda mengonfigurasi grup dan subnet keamanan dengan benar.
Migrasi dari database lokal memerlukan konektivitas antara penerapan MongoDB dan cloud pribadi virtual () Anda. VPC Anda dapat melakukannya melalui koneksi jaringan pribadi virtual (VPN), atau dengan menggunakan AWS Direct Connect layanan. Meskipun Anda dapat bermigrasi melalui internet ke AndaVPC, metode koneksi ini adalah yang paling tidak diinginkan dari sudut pandang keamanan.
Diagram berikut mengilustrasikan migrasi ke Amazon DocumentDB dari sumber lokal melalui sambungan. VPN
Berikut ini merupakan migrasi ke Amazon DocumentDB dari sumber lokal menggunakan AWS Direct Connect.
Pendekatan migrasi online dan hibrida memerlukan penggunaan AWS DMS instance, yang harus berjalan di Amazon EC2 di AmazonVPC. Semua pendekatan memerlukan server migrasi untuk menjalankan mongodump
dan mongorestore
. Umumnya lebih mudah untuk menjalankan server migrasi pada EC2 instans Amazon di VPC tempat cluster Amazon DocumentDB Anda diluncurkan karena secara dramatis menyederhanakan konektivitas ke cluster Amazon DocumentDB Anda.
Pengujian
Berikut ini adalah tujuan pengujian pra-migrasi:
-
Verifikasi bahwa pendekatan yang Anda pilih mencapai hasil migrasi yang Anda inginkan.
-
Pastikan tipe instans Anda dan pilihan preferensi baca memenuhi persyaratan performa aplikasi Anda.
-
Verifikasi perilaku aplikasi Anda selama failover.
Pertimbangan pengujian rencana migrasi
Pertimbangkan hal berikut saat menguji rencana migrasi Amazon DocumentDB Anda.
Topik
Mengembalikan indeks
Secara default, mongorestore
membuat indeks untuk koleksi buangan, tetapi ia membuatnya setelah data dipulihkan. Secara keseluruhan, pembuatan indeks di Amazon DocumentDB berlangsung lebih cepat sebelum data dipulihkan ke klaster. Hal ini karena operasi pengindeksan diparalelkan selama pemuatan data.
Jika memilih untuk membuat indeks sebelumnya, Anda dapat mengabaikan langkah pembuatan indeks saat memulihkan data dengan mongorestore
dengan menyediakan opsi -–noIndexRestore
.
Dumping data
Alat mongodump
ini adalah metode yang disukai untuk membuang data dari deployment MongoDB sumber Anda. Bergantung pada sumber daya yang tersedia pada instans migrasi, Anda mungkin dapat mempercepat mongodump
dengan meningkatkan jumlah koneksi paralel yang dibuang dari 4 default dengan menggunakan opsi –-numParallelCollections
.
Memulihkan data
Alat mongorestore
ini adalah metode yang disukai untuk memulihkan data yang dibuang ke instans Amazon DocumentDB Anda. Anda dapat meningkatkan performa pemulihan dengan meningkatkan jumlah pekerja untuk setiap koleksi selama pemulihan dengan opsi -–numInsertionWorkersPerCollection
. Satu pekerja per v CPU pada instans utama klaster Amazon DocumentDB Anda adalah tempat yang baik untuk memulai.
Amazon DocumentDB saat ini tidak mendukung opsi mongorestore
alat --oplogReplay
.
Secara default, mongorestore
mengabaikan kesalahan penyisipan dan melanjutkan proses pemulihan. Hal ini dapat terjadi jika Anda memulihkan data yang tidak didukung untuk instans Amazon DocumentDB Anda. Misalnya, hal itu bisa terjadi jika Anda memiliki dokumen yang berisi kunci atau nilai dengan string null. Jika Anda lebih memilih menggagalkan operasi mongorestore
sepenuhnya saat terjadi kesalahan pemulihan, gunakan opsi --stopOnError
.
Ukuran oplog
Log operasi MongoDB (oplog
) adalah kumpulan terbatas yang berisi semua modifikasi data ke basis data Anda. Anda dapat melihat ukuran oplog dan rentang waktu di dalamnya dengan menjalankan operasi db.printReplicationInfo()
pada set replika atau anggota serpihan.
Jika Anda menggunakan pendekatan online atau hibrida, pastikan oplog pada setiap set replika atau pecahan cukup besar untuk menampung semua perubahan yang dibuat selama seluruh durasi proses migrasi data (baik melalui mongodump
atau beban penuh AWS DMS tugas), ditambah buffer yang masuk akal. Untuk informasi selengkapnya, lihat Memeriksa Ukuran Oplog di dokumentasi MongoDB. Tentukan ukuran oplog minimum yang diperlukan dengan mencatat waktu yang telah berlalu selama pengujian pertama pada proses mongodump
atau mongorestore
atau tugas beban penuh AWS DMS .
AWS Database Migration Service konfigurasi
AWS Database Migration Service Panduan Pengguna mencakup komponen dan langkah-langkah yang diperlukan untuk memigrasikan data sumber MongoDB Anda ke klaster Amazon DocumentDB Anda. Berikut ini adalah proses dasar yang digunakan AWS DMS untuk melakukan migrasi online atau hibrida:
Untuk melakukan migrasi menggunakan AWS DMS
-
Membuat titik akhir sumber MongoDB. Untuk informasi selengkapnya, lihat Menggunakan MongoDB sebagai Sumber untuk AWS DMS.
-
Buat titik akhir target Amazon DocumentDB. Untuk informasi selengkapnya, lihat Bekerja dengan AWS DMS Titik Akhir.
Jika Anda mengonfigurasi titik akhir target sebagai cluster elastis, perhatikan bahwa sertifikat Amazon SSL DocumentDB yang ada tidak akan berfungsi dengan cluster elastis dan Anda harus melampirkan sertifikat SSL baru ke titik akhir Anda menggunakan langkah-langkah berikut:
sebuah. Kunjungi https://www.amazontrust.com/repository/SFSRootCAG2.pem
dan simpan isinya sebagai file “SFSRootCAG2.pem”. Ini adalah file sertifikat yang perlu Anda impor pada langkah selanjutnya. b. Saat membuat titik akhir cluster elastis, di bawah Konfigurasi Titik Akhir, pilih Tambahkan sertifikat CA baru.
Untuk pengenal Sertifikat, masukkan
SFSRootCAG2.pem
.Untuk Impor file sertifikat, pilih Pilih file dan navigasikan ke
SFSRootCAG2.pem
yang Anda unduh sebelumnya. Pilih dan buka file. Pilih Impor sertifikat, lalu pilihSFSRootCAG2.pem
dari menu drop-down Pilih sertifikat.
-
Buat setidaknya satu contoh AWS DMS replikasi. Untuk informasi selengkapnya, lihat Bekerja dengan Instance AWS DMS Replikasi.
-
Buat setidaknya satu tugas AWS DMS replikasi. Untuk informasi selengkapnya, lihat Bekerja dengan AWS DMS Tugas.
Untuk migrasi online, tugas migrasi Anda menggunakan jenis migrasi Migrasikan data yang ada dan meniru perubahan yang sedang berlangsung.
Untuk migrasi hibrid, tugas migrasi Anda menggunakan jenis migrasi Replikasi perubahan data saja. Anda dapat memilih waktu CDC mulai untuk menyelaraskan dengan waktu pembuangan Anda dari operasi Anda
mongodump
. Oplog MongoDB adalah idempoten. Untuk menghindari perubahan yang hilang, ada baiknya Anda meninggalkan tumpang tindih selama beberapa menit antara waktumongodump
selesai dan waktu CDC mulai Anda.
Migrasi dari cluster sharded
Proses untuk memigrasikan data dari cluster sharded MongoDB ke instans Amazon DocumentDB Anda pada dasarnya adalah beberapa migrasi set replika secara paralel. Pertimbangan utama saat menguji migrasi serpihan klaster adalah bahwa beberapa serpihan mungkin lebih banyak digunakan daripada yang lain. Situasi ini mengarah ke berbagai waktu berlalu untuk migrasi data. Pastikan bahwa Anda mengevaluasi setiap persyaratan serpihan oplog
saat melaksanakan perencanaan dan pengujian.
Berikut ini adalah beberapa masalah konfigurasi yang perlu dipertimbangkan saat memigrasikan serpihan klaster:
-
Sebelum menjalankan
mongodump
atau memulai tugas migrasi AWS DMS , Anda harus menonaktifkan penyeimbang serpihan klaster dan menunggu hingga migrasi yang sedang diproses selesai. Untuk informasi selengkapnya, lihat Nonaktifkan Penyeimbang dalam dokumentasi MongoDB. -
Jika Anda menggunakan AWS DMS untuk mereplikasi data, jalankan
cleanupOrphaned
perintah pada setiap pecahan sebelum menjalankan tugas migrasi. Jika Anda tidak menjalankan perintah ini, tugas mungkin gagal karena dokumen IDs duplikat. Perhatikan bahwa perintah ini dapat memengaruhi performa. Untuk informasi selengkapnya, lihat cleanupOrphaneddi dokumentasi MongoDB. -
Jika Anda menggunakan alat
mongodump
untuk membuang data, Anda harus menjalankan satu prosesmongodump
per serpihan. Pendekatan yang paling efisien dari segi waktu mungkin memerlukan beberapa server migrasi untuk memaksimalkan performa buang Anda. -
Jika Anda menggunakan AWS Database Migration Service untuk mereplikasi data, Anda harus membuat titik akhir sumber untuk setiap pecahan. Jalankan juga setidaknya satu tugas migrasi untuk setiap serpihan yang Anda migrasikan. Pendekatan yang paling efisien dari segi waktu mungkin memerlukan beberapa instans replikasi untuk memaksimalkan performa migrasi Anda.
Pengujian kinerja
Setelah berhasil memigrasikan data ke klaster Amazon DocumentDB pengujian Anda, jalankan beban kerja pengujian Anda terhadap klaster tersebut. Verifikasi melalui CloudWatch metrik Amazon bahwa kinerja Anda memenuhi atau melebihi throughput penerapan sumber MongoDB Anda saat ini.
Verifikasi metrik Amazon DocumentDB utama berikut:
-
Throughput Jaringan
-
Throughput Tulis
-
Throughput Baca
-
Keterlambatan replika
Untuk informasi selengkapnya, lihat Memantau Amazon DocumentDB.
Pengujian failover
Pastikan bahwa perilaku aplikasi Anda selama peristiwa failover Amazon DocumentDB memenuhi persyaratan ketersediaan Anda. Untuk memulai failover manual klaster Amazon DocumentDB di konsol, pada halaman Klaster, pilih tindakan Failover pada menu Tindakan.
Anda juga dapat memulai failover dengan menjalankan failover-db-cluster
operasi dari AWS CLI. Untuk informasi selengkapnya, lihat failover-db-cluster
di bagian Amazon DocumentDB pada referensi. AWS CLI
Sumber daya tambahan
Lihat topik berikut di AWS Database Migration Service Panduan Pengguna: