前言
elasticsearch作为一个分布式弹性存储与检索系统,默认是不支持中文分词的,但是呢,这个工作有人做,估计都是中国人做的吧。
什么是中文分词呢,简单来说,就是将我们的中文句子或者短语拆分成一个一个的可以被人们熟知的小单元。这种拆,不是随便拆,主要是有意义的拆。
如何有意义,这里就是人为指定了。首先,我们常见的歇后语,成语,三字词语,两字词语,常见地名,国家名称等等都是可以被拆成一个小单元的。
如其说是拆,倒不如说是合并,因为elasticsearch默认对于中文都是做的单个汉字的拆解,比如:我爱中国->我+爱+中+国,其实中国是国家名,理论上是一体的,应该合并。如果我们按照”中国“这个关键字检索,就不会把这句话检索到,如果使用了中文分词器,那么就可以检索到”中国“了。
准备
知道了分词器的作用,以及不使用分词器可能带来的结果,我们可以来说说分词器的使用。
对于elasticsearch来说,最著名的分词器还是ik分词,他与elasticsearch结合的插件名称是elasticsearch-analysis-ik,安装这个分词器很简单,github上的地址是https://github.com/medcl/elasticsearch-analysis-ik,只需要将下载的对应版本zip文件解压缩到elasticsearch安装目录下的plugins目录中名称为ik的目录下即可。ik目录的名称应该是随便定义,但是位置一定是elasticsearch/pl