私は noSQL データベース (MongoDB) を初めて使用し、コレクションを整理する方法がわかりません。私はすべてのユーザーが持っているユーザーシステムを持っています:
- _id
- ユーザー名
- パスワード
- ... (より基本的なデータ)
- 友達
- 評判ポイント
- 評判ポイントの歴史
- 通知
- 参加しているユーザーグループ
基本的なデータは通常コレクションユーザーに格納されますが、友人のリストのような複雑なデータを格納する方法がわかりません。
すべてのユーザー オブジェクト (ユーザー コレクション内)に _idの配列のように友達を保存する必要がありますか?それとも新しいコレクションを作成して友達だけを保存する必要がありますか? この新しいコレクションを作成すると、ユーザーの _id とその友人の配列、または user => friend _id のようなペアになるはずです。
通知と履歴についても同様です。友人と同じ問題を抱えていますが、これらの場合の配列のサイズははるかに大きくなる可能性があるため、新しいコレクションを使用するという考えはより強力です。