2016-07-19 13 views
1

はのは、私がUserInfoと呼ばれるコレクションが含まれているとしましょう:のMongoDB(Node.jsの)内のコレクションの関係

userID: "100" friendID: "200"

各ユーザは複数のフレンドVoを持つことができますnds。だから私は別のものを追加しよう:

userID: "100" friendID: "300"

のように。

これは正しい方法ですか?ユーザーに友人を追加したり削除したりする機能が必要です。

私はUserInfoのための考えることができるもう一つのアプローチ:

userName: "ジョンの雌ジカ" userID: "100" friends: "200、300、400" //など。

またはその他のソリューションですか?

答えて

1

mongoDB docsには、埋め込みドキュメントとそれを別のコレクションに参照する賛否両論のセクションがあります。
実際にはシナリオと要件(要約:埋め込みドキュメントではアトミック操作が可能で、一般にパフォーマンスは向上しますが重複が発生する可能性があります)によって異なります。

特定のケースでは、友人IDの埋め込み配列(最後に表示されたオプション)を使用し、別のFriendsコレクションを使用して、データの複製を起こさない友だちIDを格納しない可能性があります。

関連する問題