由于elasticsearch基于lucene,所以天然地就多了许多lucene上的中文分词的支持,比如 IK, Paoding, MMSEG4J等lucene中文分词原理上都能在elasticsearch上使用。当然前提是有elasticsearch的插件。 至于插件怎么开发,这里有一片文章介绍:
http://log.medcl.net/item/2011/07/diving-into-elasticsearch-3-custom-analysis-plugin/
暂时还没时间看,留在以后仔细研究, 这里只记录本人使用medcl提供的IK分词插件的集成步骤。

安装步骤:

1、到github网站下载源代码,网站地址为:https://github.com/medcl/elasticsearch-analysis-ik

右侧下方有一个按钮“Download ZIP",点击下载源代码elasticsearch-analysis-ik-master.zip。

2、解压文件elasticsearch-analysis-ik-master.zip,进入下载目录,执行命令:

unzip elasticsearch-analysis-ik-master.zip  

3、因为是源代码,此处需要使用maven打包,进入解压文件夹中,执行命令:

4、将打包后,得到的目录文件target/releases下的elasticsearch-analysis-ik-1.9.4.zip复制到ES安装目录的plugins/analysis-ik目录下。

5、在plugins/analysis-ik目录下解压elasticsearch-analysis-ik-1.9.4.zip

6、在ES的配置文件elasticsearch.yml中增加ik的配置,在最后增加:

index.analysis.analyzer.ik.type: "ik" 

7、重新启动elasticsearch服务,这样就完成配置了,收入命令:

curl -XPOST "http://localhost:9200/_analyze?analyzer=ik&pretty=true&text=helloworld,中华人民共和国"

  

测试结果如下:

{
"tokens" : [ {
"token" : "helloworld",
"start_offset" : 0,
"end_offset" : 10,
"type" : "ENGLISH",
"position" : 0
}, {
"token" : "中华人民共和国",
"start_offset" : 11,
"end_offset" : 18,
"type" : "CN_WORD",
"position" : 1
}, {
"token" : "中华人民",
"start_offset" : 11,
"end_offset" : 15,
"type" : "CN_WORD",
"position" : 2
}, {
"token" : "中华",
"start_offset" : 11,
"end_offset" : 13,
"type" : "CN_WORD",
"position" : 3
}, {
"token" : "华人",
"start_offset" : 12,
"end_offset" : 14,
"type" : "CN_WORD",
"position" : 4
}, {
"token" : "人民共和国",
"start_offset" : 13,
"end_offset" : 18,
"type" : "CN_WORD",
"position" : 5
}, {
"token" : "人民",
"start_offset" : 13,
"end_offset" : 15,
"type" : "CN_WORD",
"position" : 6
}, {
"token" : "共和国",
"start_offset" : 15,
"end_offset" : 18,
"type" : "CN_WORD",
"position" : 7
}, {
"token" : "共和",
"start_offset" : 15,
"end_offset" : 17,
"type" : "CN_WORD",
"position" : 8
}, {
"token" : "国",
"start_offset" : 17,
"end_offset" : 18,
"type" : "CN_CHAR",
"position" : 9
} ]
}

注意点:

本人绕了很多弯路,网上很多都不行,总结:

一、maven一定要编译,因为elasticsearch和ik各个版本不同,对应编译生成的文件就不同,所以想引用elasticsearch-rtm包的朋友,一定要注意区分。

二、我是通过rpm安装elasticsearch,事实证明字典config目录,可以在plugins目录下,和插件unzip放在一起

参考资料:

elasticsearch中文分词

elasticsearch安装plugin----ik

ElasticSearch中文分词ik安装

Elasticsearch初步使用(安装、Head配置、分词器配置)

最新文章

  1. authentication与网站安全验证
  2. (转)CDN——到底用还是不用?
  3. hibernate 注解 主键生成策略
  4. hdu4727 The Number Off of FFF
  5. sqlite报错OutOfMemory
  6. ios 改变状态栏颜色
  7. Android实现后台长期监听时间变化
  8. iOS 网络与多线程--6.下载并保存网络图片
  9. Ascll
  10. iOS状态栏字体设置为白色
  11. css background-position (图片裁取)
  12. Android应用-包装脚本批量方法
  13. 处理 Vue 单页面应用 SEO 的另一种思路
  14. 【转载】Jenkins安装以及邮件配置
  15. 你不可不知的Java引用类型之——PhantomReference源码详解
  16. django 配置media 存放调用 图片、图标等文件
  17. mac安装adb
  18. 初识mysql数据库
  19. IntelliJ IDEA 性能优化
  20. EF 事务(非分布式事务)

热门文章

  1. tornado部署
  2. python爬虫请求库之selenium模块
  3. private继承的作用
  4. Linux Ubuntu 打开.exe文件
  5. Spider Studio 新版本 (20140108) - 优化设置菜单 / 生成程序集支持版本号
  6. Android基础总结(四)网络通信
  7. linux查看端口命令和kill
  8. 向服务器发送josn字符串,服务器端解析
  9. SSH三大框架的知识题
  10. COCOS2D-X多层单点触摸分发处理方案?