如何在弹性搜索中进行类似国家-州-城市的搜索

问题描述 投票:0回答:1

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

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

elasticsearch
1个回答
0
投票

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

因此,基本上您需要的是使用两个

must
项构建查询。

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

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

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

希望对你有帮助

© www.soinside.com 2019 - 2024. All rights reserved.