2

フォルダー構造を表すドキュメントがあります。フォルダーには他のフォルダー (入れ子) を含めることができ、理論的には無制限のレベルの深さですが、より現実的にはアプリケーションの 3 または 4 レベルです。単一のアイテム (ノード) を取得できるようにする必要がありますが、埋め込むとこのタスクが少し難しくなるでしょうか?

助言がありますか?

4

1 に答える 1

3

ドキュメントは、mongodb に階層データを格納するためのより一般的な/一般的な方法の優れた概要を提供します。

ドキュメントの埋め込み- 大きな欠点があります

  • 検索しにくい
  • 部分的な結果を取り戻すのは難しい
  • 巨大な木が必要な場合、扱いにくくなる可能性があります。さらに、MongoDB のドキュメントのサイズには制限があります – v1.8 では 16MB (将来のバージョンでは制限が増える可能性があります)。

単一のアイテムを取得できるようにする必要があるため、これはユースケースに最適なオプションではない可能性があります。

祖先の配列または実体化されたパスは、説明した内容にはるかに適している可能性があります._idは一意であり、より一般的にデータを検索するパスであるため、完全なファイルパスを使用することを選択できます.

于 2012-04-05T08:38:56.240 に答える