elasticsearch 空值为Elasticsearch completion suggester字段生成mapper_parsing_异常
我有一个elasticsearch 空值为Elasticsearch completion suggester字段生成mapper_parsing_异常,elasticsearch,filter,autosuggest,completion,elasticsearch,Filter,Autosuggest,Completion,我有一个name字段,它是一个完成建议器,索引生成一个mapper\u parsing\u异常错误,说明值的长度必须大于0 此字段中确实存在一些空值。我如何适应他们 ignore\u格式不正确的在属性或索引级别均无效 我尝试在分析器中过滤空字符串,设置最小长度: PUT /genes { "settings": { "analysis": { "filter": { "remove_empty": { "type": "length",
name
字段,它是一个完成建议器,索引生成一个mapper\u parsing\u异常
错误,说明值的长度必须大于0
此字段中确实存在一些空值。我如何适应他们
ignore\u格式不正确的
在属性
或索引
级别均无效
我尝试在分析器中过滤空字符串,设置最小长度:
PUT /genes
{
"settings": {
"analysis": {
"filter": {
"remove_empty": {
"type": "length",
"min": 1
}
},
"analyzer": {
"keyword_lowercase": {
"type": "custom",
"tokenizer": "keyword",
"filter": [
"lowercase",
"remove_empty"
]
}
}
}
},
"mappings": {
"gene": {
"name": {
"type": "completion",
"analyzer": "keyword_lowercase"
}
}
}
}
}
或将空字符串筛选为停止字:
"remove_empty": {
"type": "stop",
"stopwords": [""]
}
尝试对名称映射应用筛选器会生成不受支持的参数错误:
"mappings": {
"gene": {
"name": {
"type": "completion",
"analyzer": "keyword_lowercase",
"filter": "remove_empty"
}
}
}
}
这确实让人觉得应该很简单。有办法做到这一点吗
谢谢 我也面临同样的问题。经过一些研究,我认为目前唯一的选择是在索引之前更改数据(例如,用一些虚拟非空值替换空值) 但也有好消息。这是GitHub上的一期,大约是一个月前。计划以6.4.0版发布