Elasticsearch教程 IK分词器安装

首先说说分词器,分词,英语分词很好分,就是按固定的英文的空格,或者“-”。中文分词就稍微有点复杂了,而 Elasticsearch  默认是带分词器了,我们来测试一下。

  1. http://123.88.88.88:9200/_analyze?analyzer=standard&pretty=true&text=sojson在线工具

得出的结果如下:

  1. {
  2. "tokens" : [ {
  3. "token" : "sojson",
  4. "start_offset" : 0,
  5. "end_offset" : 6,
  6. "type" : "",
  7. "position" : 0
  8. }, {
  9. "token" : "在",
  10. "start_offset" : 6,
  11. "end_offset" : 7,
  12. "type" : "",
  13. "position" : 1
  14. }, {
  15. "token" : "线",
  16. "start_offset" : 7,
  17. "end_offset" : 8,
  18. "type" : "",
  19. "position" : 2
  20. }, {
  21. "token" : "工",
  22. "start_offset" : 8,
  23. "end_offset" : 9,
  24. "type" : "",
  25. "position" : 3
  26. }, {
  27. "token" : "具",
  28. "start_offset" : 9,
  29. "end_offset" : 10,
  30. "type" : "",
  31. "position" : 4
  32. } ]
  33. }

发现中文是一个字一个字的分对吧。我们要的需求应该是,sojson、在线、工具吧。

elasticsearch-analysis-ik  是一款中文的分词插件,支持自定义词库,也有默认的词库。


开始安装。

1、下载

下载地址为: https://github.com/medcl/elasticsearch-analysis-ik

或者从官网地址搜索:https://www.elastic.co 搜索IK即可。

本博客下面也提供了elasticsearch-analysis-ik.zip的下载链接。

2、解压。

把下载的 elasticsearch-analysis-ik.zip解压。

3、 Maven  打包

进入elasticsearch-analysis-ik-master/ 下,打包。注意:打包后的文件在elasticsearch-analysis-ik-master/target/目录下

  1. mvn clean package

4.然后在elasticsearch-2.2.0/plugins下创建目录 ik

  1. cd elasticsearch-2.2.0/plugins
  2. mkdir ik
  3. cd ik

然后将打包后的elasticsearch-analysis-ik-1.8.0.jar 放入当前目录下,然后解压。

5、设置(2.0以上可以不设置,我没有设置)。

Elasticsearch  config下的elasticsearch.yml文件中,添加如下代码。

  1. index:
  2. analysis:
  3. analyzer:
  4. ik:
  5. alias: [ik_analyzer]
  6. type: org.elasticsearch.index.analysis.IkAnalyzerProvider
  7. ik_max_word:
  8. type: ik
  9. use_smart: false
  10. ik_smart:
  11. type: ik
  12. use_smart: true

或者简单配置:

  1. index.analysis.analyzer.ik.type : ik

6、启动测试。

  1. http://123.88.88.88:9200/_analyze?analyzer=ik&pretty=true&text=sojson在线工具

结果为:

  1. {
  2. "tokens" : [ {
  3. "token" : "sojson",
  4. "start_offset" : 0,
  5. "end_offset" : 6,
  6. "type" : "ENGLISH",
  7. "position" : 0
  8. }, {
  9. "token" : "在线",
  10. "start_offset" : 6,
  11. "end_offset" : 8,
  12. "type" : "CN_WORD",
  13. "position" : 1
  14. }, {
  15. "token" : "工具",
  16. "start_offset" : 8,
  17. "end_offset" : 10,
  18. "type" : "CN_WORD",
  19. "position" : 2
  20. } ]
  21. }

over了,当然我以前用的版本是0.9现在是2.0,跨度太大了,所以写这个Blog话费时间较多,中间可能有一点考虑不到的因素,如果你有疑问,可以联系我,或者加群找我,我有时间的情况下,可以和你探讨。

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试