メッセージングアプリのサンプルデータに基づいて、会話とメッセージの2つのコレクションを作成できます。関係が1つである場合、会話には多くのメッセージがあります。
Conversation:
{ id: 123
participants: ['john', 'marry'],
}
Message:
{ sender: 'john',
content: 'howdy',
time_created: new Date(),
converstationId: 123
},
{ sender: 'marry',
content: 'good u',
time_created: new Date(),
converstationId: 123
},
この場合、2つのアプリケーション(john用に1つ、marry用に1つ)を使用して、2つが同じドキュメントを更新する可能性を処理せずに、新しいドキュメントメッセージを作成する方が適切です。会話セッション。
また、会話が単一のドキュメントである場合、非常に大きなドキュメントになる可能性があります。 (ドキュメントの成長に関する懸念)
このmongodbドキュメントのデータモデリングについて詳しく知ることができます
http://docs.mongodb.org/manual/core/data-modeling-introduction/
ソーシャルネットワークのユースケースの例/ディスカッションについては、MongoDB:Socialiteも参照してください。
お役に立てば幸いです。乾杯。