【问题标题】:How to make Country-State-City like search in elastic Search如何在弹性搜索中使 Country-State-City 类似搜索
【发布时间】:2021-08-17 16:46:26
【问题描述】:

我想进行相关搜索,例如当用户输入国家并选择国家时,然后在下一个下拉列表/文本搜索结果将来自该特定国家状态,在下一个文本搜索中选择状态后将仅基于该选定状态。任何人都可以通过弹性搜索帮助实现这种事情。

我是弹性搜索的新手,我对它有基本的了解,但不知道如何做这种事情,我需要从孩子那里搜索并感觉像地图这样的数据

【问题讨论】:

    标签: elasticsearch


    【解决方案1】:

    首先,了解 Elasticsearch 如何存储其数据非常重要。您可以在此处找到此类信息:https://www.elastic.co/guide/en/elasticsearch/reference/master/documents-indices.html

    所以,基本上你需要的是构建一个包含两个必须项的查询。

    1. 一个用于对象类型(国家、州等)。

    2. 其他名称(“洛杉矶”、“马萨诸塞州”等)。如果您想要自动完成功能,可以在列表中添加通配符查询。 https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-wildcard-query.html

    Obs:当您存储 State 对象时,不要忘记将 Country 名称存储在一起。由于 Elasticsearch 是非关系型的,因此您必须在 State 文档中为 Country name 编制索引。

    希望对你有帮助

    【讨论】:

    • 首先感谢您的回答,现在我的视野有点清晰了。如果您曾经使用过 mongo,那么您将面临需要从 object id 填充其他集合数据的情况。我想尝试使用 mongoosastic 但无法做到的那种事情。如果你曾经使用过它,请指导它,它真的很有帮助
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-27
    • 2018-10-26
    • 1970-01-01
    • 1970-01-01
    • 2012-01-20
    • 1970-01-01
    相关资源
    最近更新 更多