Langkah pengoptimalan pasca migrasi saat menggunakan API Azure Cosmos DB untuk MongoDB
BERLAKU UNTUK: MongoDB
Penting
Harap baca seluruh panduan ini sebelum melakukan langkah pasca migrasi Anda.
Panduan pasca migrasi MongoDB ini merupakan bagian dari rangkaian migrasi MongoDB. Langkah-langkah penting migrasi MongoDB adalah pramigrasi, migrasi, dan pascamigrasi, seperti yang ditunjukkan di bawah ini.
Gambaran umum pasca migrasi
Setelah Anda memigrasikan data yang disimpan dalam database MongoDB ke API Azure Cosmos DB API untuk MongoDB, Anda dapat terhubung ke Azure Cosmos DB dan mengelola data. Panduan ini memberikan langkah-langkah yang harus Anda pertimbangkan setelah migrasi. Lihat tutorial Migrasi MongoDB ke Azure Cosmos DB untuk MongoDB untuk langkah migrasi.
Ikuti langkah ini untuk melakukan pasca migrasi
- Optimalkan kebijakan pengindeksan
- Mengonfigurasi distribusi global menggunakan API Tabel Azure Cosmos DB
- Mengatur tingkat konsistensi
- Menyambungkan (cutover) aplikasi Anda
- Menyelaraskan performa optimal
Catatan
Satu-satunya langkah wajib pasca migrasi adalah mengubah string koneksi di aplikasi Anda untuk mengarahkan ke akun Azure Cosmos DB baru Anda. Semua langkah pasca migrasi lainnya adalah pengoptimalan yang direkomendasikan untuk meningkatkan performa lapisan data. Namun, jika Anda melakukan cutover aplikasi segera tanpa langkah lain, aplikasi Anda akan segera melihat dampak dari memiliki pengindeksan dan konsistensi yang tidak optimal. Secara khusus, jika Anda melakukan cutover sebelum mengonfigurasi indeks Anda, aplikasi mungkin melihat penurunan harga/performa langsung. Ketahuilah bahwa ini dapat diperbaiki - setelah indeks dioptimalkan, kami berharap bahwa Azure Cosmos DB akan sering mengungguli solusi status quo pada harga/performa.
Prasyarat
Dalam panduan ini, kami berasumsi bahwa Anda menyimpan catatan kemajuan migrasi menggunakan semacam artefak pelacakan seperti spreadsheet. Jika Anda belum melakukannya, sebaiknya baca panduan pra-migrasi untuk panduan membuat spreadsheet migrasi data estate, menemukan sumber daya MongoDB yang ada, dan merencanakan migrasi Anda.
Optimalkan kebijakan pengindeksan
Untuk mengoptimalkan harga dan performa, sebaiknya telusuri spreadsheet migrasi data estate Anda dan rancang konfigurasi indeks untuk setiap sumber daya.
- Sangat disarankan untuk merencanakan indeks Anda selama fase pra-migrasi. Tambahkan kolom ke spreadsheet migrasi data estate Anda untuk pengaturan indeks.
Server Azure Cosmos DB for MongoDB versi 3.6 dan yang lebih tinggi secara otomatis mengindeks bidang _id saja. Bidang ini tidak dapat dihilangkan. Ini secara otomatis memberlakukan keunikan bidang _id per kunci shard. Untuk mengindeks bidang tambahan, Anda menerapkan perintah manajemen indeks MongoDB. Kebijakan pengindeksan default ini berbeda dari Azure Cosmos DB untuk NoSQL, yang mengindeks semua bidang secara default.
Untuk server Azure Cosmos DB for MongoDB versi 3.2, semua bidang data secara otomatis diindeks, secara default, selama migrasi data ke Azure Cosmos DB. Dalam banyak kasus, kebijakan pengindeksan default ini dapat diterima. Secara umum, menghapus indeks mengoptimalkan permintaan tulis dan memiliki kebijakan pengindeksan default (yaitu, pengindeksan otomatis) mengoptimalkan permintaan baca.
Kemampuan pengindeksan yang disediakan oleh Azure Cosmos DB termasuk menambahkan indeks gabungan, indeks unik, dan indeks time-to-live (TTL). Antarmuka manajemen indeks dipetakan ke perintah createIndex(). Pelajari lebih lanjut di Pengindeksan di Azure Cosmos DB dan Pengindeksan di Azure Cosmos DB API untuk MongoDB.
- Terapkan pengaturan indeks ini selama pasca migrasi.
- Azure Database Migration Service secara otomatis memigrasikan koleksi MongoDB dengan indeks unik. Namun, indeks unik harus dibuat sebelum migrasi. Azure Cosmos DB tidak mendukung pembuatan indeks unik, jika sudah ada data dalam koleksi Anda. Untuk informasi selengkapnya, lihat Tombol Unik di Azure Cosmos DB.
Mendistribusikan data Anda secara global
API Azure Cosmos DB untuk MongoDB tersedia di semua wilayah Azure.
- Ikuti panduan dalam artikel Mendistribusikan data secara global di Azure Cosmos DB API untuk MongoDB untuk mendistribusikan data Anda secara global. Setelah memilih tingkat konsistensi default untuk akun Azure Cosmos DB Anda, Anda dapat mengaitkan satu atau beberapa wilayah Azure (tergantung pada kebutuhan distribusi global Anda). Untuk ketersediaan tinggi dan kelangsungan bisnis, kami selalu menyarankan untuk setidaknya berjalan di 2 wilayah. Anda dapat meninjau tips untuk mengoptimalkan biaya penyebaran multi-wilayah di Azure Cosmos DB.
Mengatur tingkat konsistensi
Azure Cosmos DB menawarkan 5 tingkat konsistensi yang terdefinisi dengan baik. Untuk membaca tentang pemetaan antara tingkat konsistensi MongoDB dan Azure Cosmos DB, baca Tingkat konsistensi dan API DB Azure Cosmos. Tingkat konsistensi default adalah tingkat konsistensi sesi. Mengubah tingkat konsistensi bersifat opsional dan Anda dapat mengoptimalkannya untuk aplikasi Anda. Untuk mengubah tingkat konsistensi menggunakan portal Azure:
- Buka bilah Konsistensi Default di bawah Pengaturan.
- Pilih tingkat konsistensi Anda
Sebagian besar pengguna meninggalkan tingkat konsistensi mereka di pengaturan konsistensi sesi default. Namun, ada ketersediaan dan kinerja tradeoff untuk berbagai tingkat konsistensi.
Menyambungkan atau melakukan cutover aplikasi Anda
Pemrosesan cutover atau menyambungkan aplikasi Anda memungkinkan Anda mengalihkan aplikasi untuk menggunakan Azure Cosmos DB setelah migrasi selesai. Ikuti langkah berikut:
- Di jendela baru, masuk ke portal Azure.
- Dari portal Microsoft Azure, di panel sebelah kiri, buka menu Semua sumber daya dan temukan akun Azure Cosmos DB tempat Anda memigrasikan data Anda.
- Buka bilah String Koneksi. Panel kanan berisi semua informasi yang Anda perlukan untuk berhasil menyambungkan ke akun Anda.
- Gunakan informasi koneksi dalam konfigurasi aplikasi Anda (atau tempat terkait lainnya) untuk mencerminkan API Azure Cosmos DB untuk koneksi MongoDB di aplikasi Anda.
Untuk detail selengkapnya, silakan lihat halaman Hubungkan aplikasi MongoDB ke Azure Cosmos DB.
Menyelaraskan performa optimal
Satu fakta praktis tentang pengindeksan, distribusi global, dan konsistensi - semua ini dapat dengan mudah dikonfigurasi dan dikonfigurasi ulang sesuai keinginan Anda. Jadi, setelah Anda menyelesaikan cutover aplikasi, kami menyarankan agar Anda memantau performa aplikasi dan menyesuaikan pengaturan ini sesuai kebutuhan untuk memenuhi persyaratan aplikasi Anda.
Langkah berikutnya
- Mencoba melakukan perencanaan kapasitas untuk migrasi ke Azure Cosmos DB?
- Jika Anda hanya mengetahui jumlah vcore dan server di kluster database yang ada, baca tentang memperkirakan unit permintaan menggunakan vCore atau vCPU
- Jika Anda mengetahui rasio permintaan umum untuk beban kerja database Anda saat ini, baca memperkirakan unit permintaan menggunakan perencana kapasitas Azure Cosmos DB
- Hubungkan aplikasi MongoDB ke Azure Cosmos DB
- Menyambungkan ke akun Azure Cosmos DB menggunakan Studio 3T
- Cara mendistribusikan bacaan secara global menggunakan API Azure Cosmos DB untuk MongoDB
- Kedaluwarsa data dengan Azure Cosmos DB API untuk MongoDB
- Tingkat konsistensi data di Azure Cosmos DB
- Pengindeksan di Azure Cosmos DB
- Unit Permintaan di Azure Cosmos DB