0

特定のユーザー アカウントに関連するデータ (「状態」など) を mongoDB に保存する必要があるとします。

これを行うためのより良いオプションは何ですか: コレクションの状態:

1) {id: - ユーザー コレクション、[状態データ] で同じになります}

2) {id: - 状態の一意の ID、userId - ユーザー コレクションの ID、[状態データ]}

では、より良い設計上の決定は何でしょうか?

4

1 に答える 1

1

それはすべて、アプリケーションのデータにどのようにアクセスするかによって異なります。状態にアクセスする必要があるたびにユーザー データをフェッチする場合は、それをユーザー コレクションに格納するのが理にかなっています。

ブログとそのコメントについて考えてみてください。コメントだけを取得する必要はありません。常にブログ エントリと関連するコメントを取得します。

編集: いくつかの考慮事項:

  1. あなたが話しているこれらのリストがすべて互いに独立しており、各ユーザーのリスト間に参照整合性が必要ない場合は、それらを Users コレクションに保存するのが理にかなっています

  2. ユーザー ドキュメントが 16MB (現在の最大ドキュメント サイズ) を超えると思われる場合は、コレクションを分離することを検討する必要があります (つまり、すべてのデータを 1 か所のユーザー コレクションに格納しないでください)。

于 2012-12-31T18:54:57.277 に答える