前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >同义词的几个关键点

同义词的几个关键点

原创
作者头像
周银辉
修改2025-02-13 07:57:41
修改2025-02-13 07:57:41
1280
举报
文章被收录于专栏:ElasticSearchElasticSearch

同义词的几个关键点:

  1. 显示映射改为等同同义词。
  2. 同义词只用于搜索,使用synonym_graph,尽量少用于索引时间。
  3. 更新同义词的流程为关闭,更新,打开索引。
  4. 同义词最好以文件的形式存储在config目录,配置updateable=true,synonyms_path
代码语言:txt
复制

GET my_synonyms/_settings
GET my_synonyms/_mapping

DELETE my_synonyms
PUT my_synonyms
{
  "settings": {
    "analysis": {
      "analyzer": {
        "my_synonyms_analyze": {
          "tokenizer": "standard",
          "filter": [
            "my_synonyms_filter"
          ]
        }
      },
      "filter": {
        "my_synonyms_filter": {
          "type": "synonym",
          "synonyms": [
            "elk,elkb,elasticsearch"
          ]
        }
      }
    }
  },
  "mappings": {
    "properties": {
      "content": {
        "type": "text",
        "analyzer": "standard",
        "search_analyzer": "my_synonyms_analyze"
      }
    }
  }
}


POST my_synonyms/_close

PUT my_synonyms/_settings
{
  
  "analysis": {
    "filter": {
      "my_synonyms_filter": {
        "type": "synonym_graph",
        "synonyms": [
          "elk,elkb,elastic"
        ]
      }
    }
  }
}
POST my_synonyms/_open


POST my_synonyms/_doc/1
{
  "content":"elk is very powerful"
}

POST my_synonyms/_doc/2
{
  "content":"elkb is very powerful"
}

POST my_synonyms/_doc/3
{
  "content":"Elastic Stack is very powerful"
}


POST my_synonyms/_search
{
  "query": {
    "match": {
      "content": "elkb"
    }
  }
}





单向同义词=>测试

代码语言:txt
复制
DELETE my_single_synonym_index
PUT /my_single_synonym_index
{
  "settings": {
    "analysis": {
      "filter": {
        "synonym_filter": {
          "type": "synonym",
          "synonyms": [
            "tablet => ipad"   
          ]
        }
      },
      "analyzer": {
        "my_analyzer": {
          "type": "custom",             
          "tokenizer": "standard",      
          "filter": [
            "lowercase",               
            "synonym_filter"           
          ]
        }
      }
    }
  }
  , "mappings": {
    "properties": {
      "description":{
        "type": "text",
        "analyzer": "my_analyzer"
      }
    }
  }
}


POST /my_single_synonym_index/_doc/1?refresh=true
{
  "description": "This is a tablet."
}

POST /my_single_synonym_index/_doc/2?refresh=true
{
  "description": "This is an ipad."
}
GET /my_single_synonym_index/_search
{
  "query": {
    "match": {
      "description": "ipad"
    }
  }
}
GET /my_single_synonym_index/_search
{
  "query": {
    "match": {
      "description": "tablet"
    }
  }
}

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档