sql >> データベース >  >> NoSQL >> MongoDB

マングースデザインモデルの埋め込みドキュメントと参照?

    これは主に、データのクエリと更新の方法によって異なります。この場合、一貫性とドキュメントサイズも重要です。ドキュメントを参照または埋め込む場合の概要は次のとおりです。

    埋め込み:

    • 小さなサブドキュメント
    • 定期的に変更されないデータ
    • 結果整合性は許容範囲です
    • 少額で成長するドキュメント
    • フェッチするために2番目のクエリを実行する必要があることが多いデータ
    • 高速読み取り

    参照:

    • 大きなサブドキュメント
    • 揮発性データ
    • 即時の一貫性が必要です
    • 大きく成長するドキュメント
    • 結果から除外することが多いデータ
    • 高速書き込み

    これは私が読んだモンゴの本からの抜粋です。これらは単なる一般的なルールですが、私の経験から、これらを使用すると、ほとんどの場合、参照するか埋め込むかが非常に明確になります。

    この場合、私はむしろフォーラムを参照したいと思います。ただし、すべての要件を考慮してください。たとえば、ユーザーからフォーラムを参照していて、特定のフォーラムのすべてのユーザーにクエリを実行する必要がある場合、この場合、クエリは遅くなる可能性があります。もし私があなたなら、必要なものすべてのリストを作成し、一般的なルールを使用することで、埋め込みと参照の長所と短所のバランスを見つけることができます。

    お役に立てば幸いです。



    1. MongoDB $ exp

    2. mongodbは、取得した各ドキュメントにカウンターを追加します

    3. SlackのChatOpsを使用したMySQL、MongoDB、PostgreSQLの管理

    4. MongoDB /Meteor/デプロイされたアプリケーションへのMONGO_URLのエクスポート