Dokumen MongoDB saat ini dibatasi hingga maksimum 16 MB, jadi dengan asumsi perhitungan Gilbert akurat, Anda tidak akan dapat menyimpan semua 6 Juta user_id
s di Post
dokumen.
Namun, Anda dapat mempertimbangkan untuk menyimpan suara di User
dokumen sebagai gantinya (yaitu post_id
s yang dipilih oleh pengguna tertentu). Kecil kemungkinannya pengguna memberikan suara pada 6 juta postingan berbeda, jadi dengan cara ini Anda tidak akan mencapai batas ukuran dengan cepat.
Cara lain untuk menangani ini:Jika Anda mengharapkan banyak suara untuk pos tertentu, Anda mungkin ingin menyimpan suara di luar Post
dokumen dalam koleksi terpisah dan lakukan kueri tambahan, mirip dengan tabel JOIN many-to-many dalam mode SQL:
user_votes { user_id: ObjectId(...), post_id: ObjectId(...), vote:-1 }
dan buat indeks gabungan di (user_id, post_id).