据我所知,你不能与两个父母有文件。
我的建议基于Elasticsearch的Application-side
join章节的权威指南:
- 建立父母/子女关系
Book
/Review
- 确保您
user_id
在Review
映射中具有包含撰写该评论的用户ID的属性。
我认为这涵盖了您描述的两种用例:
Books that contain at least one review
可以通过有子过滤器 / 查询来解决Users who wrote reviews that contain certain phrases
可以通过查询您要搜索的短语并在字段上进行基数汇总来解决user_id
。如果您需要用户信息,则必须使用检索到的ID查询数据库(或其他Elasticsearch索引)。
编辑:
"give me the books that have reviews this month written by user whosename started with John"
我建议您收集所有这些高级用例,并对实现它们所需的数据进行非规范化。在这种特殊情况下,只需将用户名标准化为即可
Review。无论如何,elasticsearch的人们已经在他们的博客中写过关于管理关系的文章,或者elasticsearch的权威指南



