1.2中文分词

Elasticsearch中,内置了很多分词器(analyzers),例如standard (标准分词器)、english (英文分词)和chinese (中文分词,但是分词效果不好)

安装中文分词ik分词器

./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.2.2/elasticsearch-analysis-ik-6.2.2.zip

上面的版本必须和elasticsearch版本一致

Elastic 的分词器称为 analyzer。我们对每个字段指定分词器。 如:

"user": {
  "type": "text",
  "analyzer": "ik_max_word",       #字段的文本进行分词的分词器
  "search_analyzer": "ik_max_word" #搜索词进行分词的分词器
}

ik_max_word 和 ik_smart 什么区别?

ik_max_word: 会将文本做最细粒度的拆分,比如会将“中华人民共和国国歌”拆分为“中华人民共和国,中华人民,中华,华人,人民共和国,人民,人,民,共和国,共和,和,国国,国歌”,会穷尽各种可能的组合; ik_smart: 会做最粗粒度的拆分,比如会将“中华人民共和国国歌”拆分为“中华人民共和国,国歌”。

测试:

POST _analyze?pretty
{
  "analyzer": "ik_smart",
  "text": "中华人民共和国万岁"
}

详细参考: GitHub开源elasticsearch-analysis-ik分词

results matching ""

    No results matching ""