だから、私が間違っていることについてアドバイスが必要です。
folders
私のデータベースは、とで構成されるファイル システムとまったく同じようにセットアップされていますfiles
。フォルダーから始まりますが、比較的無限の数のサブフォルダーやファイルを持つことができます。
{
"name":"folder1",
"uniqueID":"zzz0",
"subcontents": [ {"name":"subfolder1", "uniqueID":"zzz1"},
{"name":"subfile1", "uniqueID":"zzz2"},
{"name":"subfile2", "uniqueID":"zzz3"},
{"name":"subfolder2", "subcontents": [...etc...], "uniqueID":"zzz4"},
]
}
各フォルダー/ファイル ドキュメントには一意の ID があり、参照できるようになっています (上の zzz# を参照)。私の質問は、mongoDB クエリを作成して 1 つのドキュメントだけを引き出すことはできますか?
たとえばdb.fileSystemCollection.find({"uniqueID":"zzz4"})
、次のような結果が得られるでしょうか。これを行うにはインデックスを使用する必要がありますか? 試してみましたが、クエリは毎回空を返します。
意図した結果 ---> {"name":"subfolder2", "subcontents": [...etc...], "uniqueID":"zzz4"}
[編集] 以下の回答に基づいて、mongoDB の代わりに XML データベースを検討します。json 構造は、MongoDB で動作するように再配置できません (データが多すぎます)。