Dari mongo docs di sini:pemodelan data
Dalam situasi tertentu, Anda mungkin memilih untuk menyimpan informasi dalam beberapa koleksi daripada dalam satu koleksi.
Pertimbangkan contoh kumpulan log yang menyimpan dokumen log untuk berbagai lingkungan dan aplikasi. Kumpulan log berisi dokumen dengan format berikut:
{ log:"dev", ts:..., info:... } { log:"debug", ts:..., info:...}
Jika jumlah total dokumen sedikit, Anda dapat mengelompokkan dokumen ke dalam koleksi berdasarkan jenisnya. Untuk log, pertimbangkan untuk mempertahankan koleksi log yang berbeda, seperti logs.dev dan logs.debug. Koleksi logs.dev hanya akan berisi dokumen yang terkait dengan lingkungan dev.
Umumnya, memiliki banyak koleksi tidak memiliki penalti kinerja yang signifikan dan menghasilkan kinerja yang sangat baik. Distinctcollections sangat penting untuk pemrosesan batch dengan throughput tinggi.
Juga berbicara dengan pria 10gen. Untuk koleksi yang sangat besar, dia membuat daftar beberapa manfaat untuk memisahkannya menjadi koleksi yang lebih kecil dan lebih spesifik. Komentarnya tentang menggunakan satu koleksi untuk semua data dan menggunakan indeks adalah:
Hanya karena Anda bisa melakukan sesuatu bukan berarti Anda harus melakukannya. Modelkan data Anda dengan tepat. mungkin mudah untuk menyimpan dalam satu koleksi besar dan indeks, tetapi itu tidak selalu merupakan pendekatan terbaik.