如何解决Elasticsearch - 针对现有数据集测试新分析器
Elasticsearch 新手。
我需要更新索引以将复数和单数都视为匹配项。所以 green apple
应该匹配 green apples
并且很好(反之亦然)。
通过我的研究,我明白我需要使用 stemmer
过滤器重新创建索引。
所以:
"analysis": {
"analyzer": {
"std_analyzer": {
"tokenizer": "whitespace","filter": [ "stemmer" ]
}
}
}
-
谁能确认以上是否正确?如果没有,我需要使用什么?
-
我也明白我无法修改现有索引,而是需要使用此分析器创建一个新索引,然后将所有文档重新添加到新索引中。那是对的吗?如果是这样,是否有快捷方式或简单的方法告诉它“将索引 X 中的所有文档添加到新索引 Y?”
感谢您的帮助
解决方法
查找内嵌答案
-
在大多数情况下,它应该可以工作,而且很难涵盖所有未来的用例,在您的情况下,我们甚至不知道您当前的用例,您可以使用 {{ 3}} 并测试您的一些用例,然后再将这些与分析器相关的更改推送到生产中。*
-
添加/更改分析器是一个重大更改,因为它控制着如何在弹性搜索倒排索引中生成和索引令牌,因此您必须使用更新的分析器设置创建重新索引所有文档,您可以将 Analyze API 与 别名以零停机时间完成。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。