Urutan bidang dalam indeks penting; indeks gabungan terbaik untuk contoh pencarian dan pengurutan Anda sebenarnya adalah:
db.test.ensure_index([("xxx",1),("_id",-1)])
Karena kriteria pencarian Anda ada di bidang 'xxx', menempatkan bidang ini terlebih dahulu dalam indeks akan menemukan lebih banyak hasil daripada mencari dengan _id lalu memfilter ke dokumen yang cocok dengan xxx kriteria.
Jika Anda melihat n nomor untuk setiap paket yang dipertimbangkan oleh pengoptimal kueri di allPlans , BtreeCursor xxx_1 index benar-benar mengembalikan hasil terbanyak (34). Indeks lain mengembalikan 9, 10, dan 16 hasil .. jadi akan kurang efisien untuk kriteria pencarian yang diberikan.
Untuk informasi lebih lanjut tentang pengoptimalan indeks, artikel ini sangat membantu:Mengoptimalkan Indeks Senyawa MongoDB .