フォルダーとオブジェクトを含むカタログ構造にインデックスを付けたいと考えています。各フォルダーには、サブフォルダーとオブジェクトを含めることができます。
マッピング:
{
"mappings" : {
"folder" : {
"_parent" : {
"type" : "folder"
},
"properties" : {
"name" : {
"type" : "string"
}
}
},
"object" : {
"_parent" : {
"type" : "folder"
},
"properties" : {
"name" : {
"type" : "string"
}
}
}
}
}
ツリー構造の深さは不明です。
検索は、指定されたクエリに一致するすべてのオブジェクトと、パス内の少なくとも 1 つのフォルダーが指定されたクエリに一致するすべてのアイテムに一致する必要があります。この最後の部分は、クエリを何度もネストせずに行う方法がわかりません
has_parent
(ツリーの深さに制限がかかります)。
match_all
フィルターベースのソリューションも機能しないと思います。
この問題に対する実行可能な解決策はありますか? (1 つのクエリで - 多分別のマッピングで?)
PS: アイテムのフォルダーの情報を複製する (またはその逆) ことは、情報が多すぎるため、オプションではありません。