美文网首页
ES-同词义配置

ES-同词义配置

作者: 卡门001 | 来源:发表于2022-04-11 21:40 被阅读0次

定义

  • 语主相近或相同
  • 品牌类目关联
  • 搜索它等于搜索它

配置方法

1. 进入ES第一个节点:cd node1/config/analysis-ik

添加近义词
echo '凯悦,锡伯,红桃' > vim synonyms.txt

2. 将配置得制到节点2与节点3

cp synonyms.txt /opt/elasticsearch8.0.0/node2/config/analysis-ik/
cp synonyms.txt /opt/elasticsearch8.0.0/node3/config/analysis-ik/

3. 修改结构(定义支持同义词的门店索引结构)

要点:

增加analysis,处定义分词器
修改name的分词器

DELETE /shop

PUT /shop
{
  "settings": {
    "number_of_shards": 1, 
    "number_of_replicas": 1,
    "analysis": {
      "filter": {
          "my_synonym_filter": {
              "type": "synonym",
              "synonyms_path": "analysis-ik/synonyms.txt"
          }
      },
      "analyzer": {
        "ik_syno":{
          "type":"custom",
          "tokenizer":"ik_smart",
          "filter":["my_synonym_filter"]
        },
        "ik_syno_max":{
          "type":"custom",
          "tokenizer":"ik_max_word",
          "filter":["my_synonym_filter"]
        }
      }
    }
  },
  "mappings": {
    "properties": {
      "id":{"type":"integer"},
      "name":{"type":"text","analyzer": "ik_syno_word","search_analyzer": "ik_syno"},
      "tags":{"type":"text","analyzer": "whitespace","fielddata": true}, 
      "location":{"type":"geo_point"},
      "remark_score":{"type":"double"},
      "price_per_man": {"type":"integer"},
      "category_id":{"type":"integer"},
      "category_name":{"type": "keyword"},
      "seller_id":{"type":"integer"},
      "seller_remark_score":{"type":"double"},
      "seller_disabled_flag":{"type":"integer"}
    }
  }
}

4. 验证同义词是否载入

GET /shop/_analyze
{
  "field":"name",
  "text":"凯悦"
}

如输出信息如下,则代表配置成功

{
  "tokens" : [
    {
      "token" : "凯悦",
      "start_offset" : 0,
      "end_offset" : 2,
      "type" : "CN_WORD",
      "position" : 0
    },
    {
      "token" : "锡伯",
      "start_offset" : 0,
      "end_offset" : 2,
      "type" : "SYNONYM",
      "position" : 0
    },
    {
      "token" : "红桃",
      "start_offset" : 0,
      "end_offset" : 2,
      "type" : "SYNONYM",
      "position" : 0
    }
  ]
}

5. 其他

1). 重建索引

如果结构之前就存在,要让同义词起作用,需要先删除原索引再重建结构(如上)
如果是新索引,则不需要行该步骤 .

2). 在Kibana上验证

以下会查询相同的内容


GET /shop/_search
{
  "query": {
    "match": {
      "name": "锡伯"
    }
  }
}


GET /shop/_search
{
  "query": {
    "match": {
      "name": "凯悦"
    }
  }
}

GET /shop/_search
{
  "query": {
    "match": {
      "name": "红桃"
    }
  }
}

相关文章

  • ES-同词义配置

    定义 语主相近或相同 品牌类目关联 搜索它等于搜索它 配置方法 1. 进入ES第一个节点:cd node1/con...

  • ES-集群配置

    Elasticsearch:核心的分布式搜索和分析引擎---做存储数据用--就叫es7.x以上版本集群:https...

  • es-配置详解

    (1)集群名称,默认为elasticsearch (2)节点名称,es启动时会自动创建节点名称,但你也可进行配置 ...

  • ES-集群配置7.1.1

    1、优化配置主机配置 2、编辑es配置(每台主机的节点名称注意修改) es版本下载:https://repo.hu...

  • ES-近义词查询

    ES-近义词查询 在现实生活中,我们搜索"马铃薯"时,百度能给我找到马铃薯,土豆,洋芋等相关信息.因为在它们都是同...

  • 【知行】《识字》

    【知行】《识字》 2020.01.21 秀才识字念半边,词义八九几自现。 同谐声者必同部,余下咬嚼其字源。 背景:...

  • Toastmaster word: aesthetic

    英 [iːs'θetɪk; es-] 美 [ɛs'θɛtɪk] adjectiveconcerned with...

  • 第三课—幸福是一种随机现象吗

    semester 词义 officially 词义 a couple of 词义 announcement 拼读 ...

  • 《现代汉语》词汇篇 词义第二

    目录 词义的性质和构成 一、词义的性质 二、词义的分类 三、义项 四、义素 词义的性质和构成 一、词义的性质 词义...

  • elasticsearch php

    新建索引 $es->indices()->create(['index' => '库名']); 新进索引文档 $e...

网友评论

      本文标题:ES-同词义配置

      本文链接:https://www.haomeiwen.com/subject/whpwsrtx.html