【问题标题】:Querying and returning Sub Document/Nested Objects in ElasticSearch在 ElasticSearch 中查询和返回子文档/嵌套对象
【发布时间】:2018-07-03 02:31:53
【问题描述】:

美好的一天:

我目前有以下结构索引school -> children...意思是每个school 文档,有一个children 子文档的列表。 ChildrenSchool 内的嵌套对象列表。我的目标是查询父 school.id=id 并仅返回匹配 children.userId = userId 的子文档,同时对 children size/from 进行分页。我不知道如何做到这一点,但如果使用 NEST 提供任何帮助,我们将不胜感激。

谢谢。

【问题讨论】:

    标签: elasticsearch nest


    【解决方案1】:

    编辑:

    我没有意识到您只想对单个文档的结果进行分页。在这种情况下,您可以使用 inner_hits,它有自己的 fromsize 参数,您可以使用。

    参考:inner_hits documentation

    原始答案:

    当你有嵌套类型时,我认为你不能直接在内部对象上分页。相反,您可能希望在单独的文档中索引学校和孩子,并使用 join 类型在它们之间创建父/子关系。然后,您可以使用has_parent 查询来搜索孩子并对返回的孩子进行分页。

    参考:

    如何创建映射:Join Relationship

    如何创建查询:has_parent query

    【讨论】:

    • 不完全理解这一点。如果我只对一个父母(从不多个父母..只有一个单亲)的子文档进行分页,那么这肯定不应该用 ES 实现吗?
    • 抱歉,不明白您一次只关心一位家长。更新了我的答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-31
    • 2015-01-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多