gpt4 book ai didi

elasticsearch - elasticsearch [无法更新映射] [MapperParsingException [Analyzer]

转载 作者:行者123 更新时间:2023-12-02 23:31:23 25 4
gpt4 key购买 nike

我正在开发一个ES插件,其中包含一个新的分析器和一个新的过滤器。
我的elasticsearch.yml文件如下:

index:
analysis:
analyzer:
ik_syno:
tokenizer: ik
filter: [my_synonym_filter_ik]
ik_syno_smart:
tokenizer: ik_smart
filter: [my_synonym_filter_ik_smart]
filter:
my_synonym_filter_ik_smart:
type: org.elasticsearch.index.analysis.SynonymcnTokenFilterFactory
use_smart: true
my_synonym_filter_ik:
type: org.elasticsearch.index.analysis.SynonymcnTokenFilterFactory
use_smart: true

SynonymcnTokenFilterFactory 是我的类(class)。

现在,当我使用

http://127.0.0.1:9200/newshuoshuo/_analyze?analyzer=ik_syno_smart&pretty=true

分析器“ik_syno_smart”按预期工作。
 {
"tokens" : [ {
"token" : "hello",
"start_offset" : 1,
"end_offset" : 6,
"type" : "ENGLISH",
"position" : 1
} ]
}

但是,当我在映射调用中使用它时,它将返回错误。

这是我的索引字段
 "content": {
"type": "string",
"index_analyzer": "ik_syno_smart",
"search_analyzer": "ik_smart",
"boost": "10"
},

错误日志如下:
on [shard failure [failed to update mappings][MapperParsingException[Analyzer [ik_syno_smart] not found for field [content]]]]

我做错了什么事?
我的ES版本是1.7.0。

最佳答案

您始终必须在所有计算机上安装插件,否则ES将无法执行其工作,因为将索引拆分到多台计算机时,它们将负责工作。
另外,如果您使用许多插件,则在elasticsearch.yml中有一个不错的属性

plugin.mandatory: mapper-attachments,lang-groovy

在安装所有插件之前,这不会启动ES。不幸的是,它还不能自动设置它们,但是可以防止您忘记

关于elasticsearch - elasticsearch [无法更新映射] [MapperParsingException [Analyzer],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36038156/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com