私は写真集を持っています。それらは、他のコレクション (イベント、ニュース、投稿など) から (1 対多で) 参照できます。
次のような参照を作成できます。
db.photos.insert({ parent:{ collection: 'events', id: 12345 }})
db.photos.insert({ parent:{ collection: 'events', id: 54321 }})
//or just DBRef
db.photos.ensureIndex({parent:1})
また
db.photos.insert({ post_id: 12345 })
db.photos.insert({ event_id: 54321 })
db.photos.ensureIndex({post_id:1}, {sparse: true})
db.photos.ensureIndex({event_id:1}, {sparse: true})
最初のケースでは、1 つの大きな複合インデックスがあります。2 番目のケースでは、いくつかの小さなインデックスがあります。
各アプローチの長所と短所は何ですか?