Elasticsearch同义词返回太多结果

时间:2019-02-05 19:52:47

标签: elasticsearch elastic-stack

我是Elasticsearch的新手,所以这可能很简单,但我无法使同义词正常工作。

我的索引正在加载并且工作正常

PUT /my-index
{
"settings" : {
"index" : {
    "analysis" : {
        "analyzer" : {
            "synonym" : {
                "tokenizer" : "whitespace",
                "filter" : ["lowercase", "synonym_filter"]
            }
        },
        "filter" : {
            "synonym_filter": {
              "type": "synonym",
              "format": "wordnet",
              "synonyms_path": "analysis/wn_s.pl",
              "filter": ["lowercase"]
          }
        }
    }
  }
},
"mappings": {
"doc": {
  "properties": {
    "field_name": {
      "type": "text",
      "analyzer": "synonym",
      "fields": {
        "exact": {
          "type": "text",
          "analyzer": "synonym"
        }
      }
     }
    }
   }
  }
}

一旦我检查了我返回的令牌,就会得到一些额外的令牌。

GET my-index/_analyze
{
 "analyzer" : "synonym",
 "text" : "kid"
}



{
 "tokens" : [
{
  "token" : "child",
  "start_offset" : 0,
  "end_offset" : 3,
  "type" : "SYNONYM",
  "position" : 0
},
{
  "token" : "kid",
  "start_offset" : 0,
  "end_offset" : 3,
  "type" : "SYNONYM",
  "position" : 0
},
{
  "token" : "fry",
  "start_offset" : 0,
  "end_offset" : 3,
  "type" : "SYNONYM",
  "position" : 1
},
{
  "token" : "kyd",
  "start_offset" : 0,
  "end_offset" : 3,
  "type" : "SYNONYM",
  "position" : 1
},
{
  "token" : "kid",
  "start_offset" : 0,
  "end_offset" : 3,
  "type" : "SYNONYM",
  "position" : 1
},
{
  "token" : "the",
  "start_offset" : 0,
  "end_offset" : 3,
  "type" : "SYNONYM",
  "position" : 1
},
{
  "token" : "leg",
  "start_offset" : 0,
  "end_offset" : 3,
  "type" : "SYNONYM",
  "position" : 2
},
{
  "token" : "of",
  "start_offset" : 0,
  "end_offset" : 3,
  "type" : "SYNONYM",
  "position" : 3
}
]
}

搜索文档

GET my-index/doc/_search
{
 "query": {
 "simple_query_string": {
   "fields": [ "field_name" ],
   "query": "kid"
   }
 }
}

那是我得到的一些结果

{
"took":25, "_shards":{
"total":5, "successful":5 }, "hits":{
"total":5035, "hits":[
{
"field_name":"CHILD WITNESS CENTRE" }, {
"field_name":"KidsAbility Centre for Child Development" }, {
"field_name":"Kamloops Child Development Centre" }, {
"field_name":"The Child Advocacy Centre Of Niagara" }, {
"field_name":"Kidsability Centre For Child Development" }, {
"field_name":"Child Witness Centre Of Waterloo Region" }, {
"field_name":"Branch 133, Legion Village Foundation" }, {
"field_name":"Society Of St Vincent De Paul St Thomas C" }, {
"field_name":"OSNS CHILD DEVELOPEMENT CENTRE" }, {
"field_name":"Caledon Parent Child Centre" }, {
"field_name":"University of Calgary" } ] } }

elasticsearch v6.5.2。 我从wordnet网站上获取的同义词文件

0 个答案:

没有答案
相关问题