程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了具有多个父子关系的Elasticsearch大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决具有多个父子关系的Elasticsearch?

开发过程中遇到具有多个父子关系的Elasticsearch的问题如何解决?下面主要结合日常开发的经验,给出你关于具有多个父子关系的Elasticsearch的解决方法建议,希望对你解决具有多个父子关系的Elasticsearch有所启发或帮助;

据我所知,你不能与两个父母有文件。

我的建议基于Elasticsearch的Application-side join章节的权威指南:

  • 建立父母/子女关系Book/RevIEw
  • 确保您user_iDRevIEw映射中具有包含撰写该评论的用户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 whose name started with John"

我建议您收集所有这些高级用例,并对实现它们所需的数据进行非规范化。在这种特殊情况下,只需将用户名标准化为即可RevIEw。无论如何,elasticsearch的人们已经在他们的博客中写过关于管理关系的文章,或者elasticsearch的权威指南

解决方法

Book,User和Review说,我正在构建具有复杂模型的应用程序。

评论包含书籍和用户ID。为了能够搜索至少包含一个评论的“图书”,我已将“图书”设置为“评论”的父级,并且具有这样的路由。但是,我还需要找到撰写包含某些短语的评论的用户。

是否可以同时将书和用户作为评论的父级?有没有更好的方法来处理这种情况?

请注意,我无法更改数据建模的方式/不愿意这样做,因为数据已从持久性数据库传输到Elasticsearch。

大佬总结

以上是大佬教程为你收集整理的具有多个父子关系的Elasticsearch全部内容,希望文章能够帮你解决具有多个父子关系的Elasticsearch所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。