Elasticsearch 中文分词插件 jcseg 安装 (Ubuntu 14.04 下)

jopen 9年前

  Jcseg 作为国内知名的开源的中文分词器,对于中文分词有其独有的特点, 对于 elasticsearch 这一不错的文档检索引擎来说 Elasticsearch + Jcseg 这个组合,在处理中文检索上,可以说是黄金搭档啊!!最重要的是:方便,简单,易用,功能强大!!

搜索可以说是开发中很常见的场景了,同样这次也一样。。。

之前的组合多数是选择 Mysql + Sphinx ,这次因为工作原因不再使用这种组合,虽然是老牌组合,但是确实限制诸多,而且每次配环境也是个问题,挺烦的。。。这次就尝试使用 Elasticsearch + Jcseg ,因为在文档检索方面 elasticsearch 做的相当不错,但是对中文环境来说就差一个很好的中文分词器,还好,国内好的中文分词器也有蛮多,但是我个人还是比较推荐 Jcseg 。

好了,废话不多扯。

版本说明:

elasticsearch 我使用的是 1.7.2 的,不过 1.7.3 对下面这个过程来说也是可行的。

jcseg 是需要 1.9.6 的版本

######------------------------------------------------------------------------------------------------------------------------#####

首先是 elasticsearch 的安装,这个比较方便,照着官方文档来就OK了。

参考地址:https://www.elastic.co/guide/en/elasticsearch/reference/current/setup-service.html

1,安装 elasticsearch 

#> wget  https://download.elastic.co/elasticsearch/elasticsearch/elasticsearch-1.7.2.deb

#> sudo dpkg -i elasticsearch-1.7.2.deb

#> sudo update-rc.d elasticsearch defaults 95 10

#> sudo service elasticsearch start

然后是下载 jcseg 的相关 jar 包,为后续配置做准备。

下载地址:http://git.oschina.net/lionsoul/elasticsearch-jcseg

2,下载 jcseg

#> git clone http://git.oschina.net/lionsoul/elasticsearch-jcseg

最后就是把 jcseg 配置成 elasticsearch 的一个分词插件,然后指定 jcseg 为默认分词器,重启 elasticsearch 就OK了。

参考文档:http://git.oschina.net/lionsoul/jcseg   (这里有个 pdf 文档,可以参考一下)

3,配置 elasticsearch

#> cd  /usr/share/elasticsearch/plugins   (这是上面安装完成 elasticsearch 后,它的插件目录所在)

#> mkdir analysis-jcseg   (创建 jcseg jar 包 及 词库 放置目录)

#> cd elasticsearch-jcseg/   (来到 elasticsearch-jcseg 目录下,这里有我们需要的 jar 文件等)

#> sudo  cp  -r  plugins/analysis-jcseg/*  /usr/share/elasticsearch/plugins/analysis-jcseg/    (复制需要的 jar 包以及 jcseg 词库文件,词库文件很重要,后期可以根据你自己业务需要扩展词库,达到更高的分词准确率)

#############  开始修改 elasticsearch 的配置文件,设置分词器使用 jcseg ##########

拷贝 elasticsearch-jcseg 下的 config/jcseg/ 整个目录到 elasticsearch 的配置文件目录下(/etc/elasticsearch/)

#> sudo cp  -r  config/jcseg  /etc/elasticsearch/

在 elasticsearch 的文件末尾增加如下配置项:(该配置项在 elasticsearch-jcseg/config/elasticsearch.yml 里

#> sudo  vim  /etc/elasticsearch/elasticsearch.yml 

添加配置项:

Elasticsearch 中文分词插件 jcseg 安装 (Ubuntu 14.04 下)

然后,重启 elasticsearch

#> sudo  service  elasticsearch restart

然后就可以在浏览器里输入测试了,如下:

Elasticsearch 中文分词插件 jcseg 安装 (Ubuntu 14.04 下)

当然了,你得先有个 索引,我这里的测试例子是 blog,建立方法也很简单,如下:

#> curl  -XPUT  http:localhost:9200/blog

######------------------------------------------------------------------------------------------------------------------------#####

以上就是把 jcseg 作为 elasticsearch 的中文分词插件的环境配置方法,剩下的就是 elasticsearch 和 jcseg 的事情了, 可以分别研究它们的相关用法,灵活的在项目中使用就OK了!

来自:http://my.oschina.net/u/1156660/blog/521326