安装IK分词器后更换索引

我的数据是关联数据库的,刚入坑用的自带的分词,所有的中文都会被分成单个。很不好用

未安装IK分词器


安装后使用效果

而更换IK分词器后,发现不生效,百度后是 没有建立  索引(mapping)。所以想要进行更换,结果在创建的时候,报冲突错误。

本来想整个报错图给你们看下,找不到了。直接解决错误吧

在数据已有的情况下,再次导入是一个不合适的方法,而我们想要更新mapping就会有冲突,解决思路就是,新建一个索引库,然后数据同步过去,再删除原有的。本以为会很难,结果很简单

1:建立新的索引

PUT myindex        

2:新建索引结构  

 POST myindex/_mapping

{

  "properties": {

    "content":{

      "type": "text",

      "analyzer": "ik_max_word",

                "search_analyzer": "ik_smart",

                "index_options": "docs"

    },

    "title":{

      "type": "text",

      "analyzer": "ik_max_word",

                "search_analyzer": "ik_smart",

                "index_options": "docs"

    }

  }

}


3:数据替换 

POST _reindex

{

  "source": {

    "index":"index"

  },

  "dest": {

    "index": "myindex"

  }

}


4. 查看数据是否已同步到新的索引上

GET /myindex/_search

至此数据索引替换完成。在替换索引之前的入库粒度还是按照原有的单个中文,但是查询时会按照IK分词器的,所以可以正常使用

你可能感兴趣的:(安装IK分词器后更换索引)