elasticsearch 查询Synomys ElasticSearch
我用同义词创建了一个新索引,方法如下: PUT/test\u index2elasticsearch 查询Synomys ElasticSearch,elasticsearch,kibana,elasticsearch,Kibana,我用同义词创建了一个新索引,方法如下: PUT/test\u index2 { "settings": { "index" : { "analysis" : { "filter" : { "synonym" : { "type" : "synonym", "synonyms" : [ "me
{
"settings": {
"index" : {
"analysis" : {
"filter" : {
"synonym" : {
"type" : "synonym",
"synonyms" : [
"mezzo,centro"
]
}
}
}
}
}
}
当我尝试此查询时:
{
"query":
{
"multi_match":
{
"query": "centro",
"fields": ["content"],
"analyzer": "synonym"
}
}
}
Kibana告诉我这个错误:
[multi_match] analyzer [synonym] not found
我对elastic不是很有经验,你能帮我吗?你需要创建一个利用同义词过滤器的自定义分析器
{
"settings": {
"index" : {
"analysis" : {
"analyzer": { <-- add this
"synonym_analyzer": {
"type": "custom",
"filter": ["synonym"],
"tokenizer": "keyword"
}
},
"filter" : {
"synonym" : {
"type" : "synonym",
"synonyms" : [
"mezzo,centro"
]
}
}
}
}
}
{
“设置”:{
“索引”:{
“分析”:{
“analyzer”:{很酷,很高兴它有帮助!如果我使用txt,我应该做同样的事情吗?不确定你的意思,内容字段是一个text
字段,对吗?在txt文件中插入同义词,因为我有更多的同义词。然后简单地指定同义词文件的路径并重新启动节点
{
"query":
{
"multi_match":
{
"query": "centro",
"fields": ["content"],
"analyzer": "synonym_analyzer" <-- change this
}
}
}