Elasticsearch集成HanLP分词器

1 、通过 git 下载分词器代码。
连接如下: https://gitee.com/hualongdata/hanlp-ext
hanlp 官网如下: http://hanlp.linrunsoft.com/
2 、下载 gradle, 如果本机有,就可以略过此步骤。通过 gradle 官方网站下载,解压,配置环境即可。
官方安装配置说明: https://gradle.org/install/
3 、按本地 elasticsearch 进行打包。
注意:通过 git 下载的源代码,除非与 git 配置的版本相同,否则可能会导致你 elasticearch 无法加载分词器。
修改 git 下载的源代码包中的 elasticsearch 版本。并通过 gradle 进行打包。会自动下载同步 elasticsearch 对应版本的 jar 包。
 


图1


4 按本地环境配置词类位置
 


图2


5 配置打包的插件所对应支持的 elasticesarch 的版本。 ( 修改为: 5.6.5 es 安装的学习环境为 5.6.5)
 


图3


6 完成上述配置把。 gradle 自动下载对应版本的包。可以通过如下方式进行版本查看。
 


图4


7 、确认对应版本的包存在后,在工程所在目录下执行如下命令进行打包:
gradle -p es-plugin jar buildPluginZip
如下操作:在项目工程目录下,运行命令。
 


图5


8 打包完成后,会出现对应的安装包。
 


图6


9 elasticsearch 安装目录下执行插件安装命令。
./bin/elasticsearch-plugininstallfile:///Users/jiangyu/code/git/hanlp-ext/es-plugin/build/distributions/elasticsearch-hanlp-5.6.5.zip
 


图7


可以看到上面安装完成的提示。有个过程要选择 y
注:如果上向的命令出现如下报错。错误提示如下 :
 


图8


上述错误提示,说明有两个相同的 jar 包存在。所以有提示,可以先在 build.gradle 配置中,找到打包的过程,增加一条 path.contains("org.apache.logging.log4j") 配置,这样打包时,这个 jar 包不会在被找到插件中。配置修改完成后。从新执行第 7 步『 gradle -p es-plugin jar buildPluginZip 』,进重新打包。再重新安装插件即可。
 


图9


(注:测试时,这个包不能去掉。会导致测试插件时,缺少 log4j 包)
10 给插件增加访问权限
 


图10


在系统的 elasticsearch 的安装目录下,找到 config 目录,通过 vi jvm.options 打开文件进行编辑。增加如下内容:用来指定安全配置文件。
 


图11


11 修改 elasticsearch 配置,在系统的 elasticsearch 的安装目录下,找到 bin 目录,通过 vi elasticearch.in.sh 打开文件进行编辑。增加如下内容:用来指定安全配置文件。
 


图12


12 在文件中增加指定的 lib 包。我们将插件要用到的 Lib 包路径引入到系统环境变量中。
 


图13


13 安装完成后可以使用如下命令进行验证。  analyzer, 指定分词器为: "hanlp"
GET /_analyze
{
"analyzer" : "hanlp",
"text": [" 记录就是用来打破的。你准备好向新的记录发起冲击了吗? "]
}
 


图14







图15


如果不指定分词器的话。所以返回结果, type 没有说明词性,都是按单字返回结果。
GET /_analyze
{
"text": [" 记录就是用来打破的。你准备好向新的记录发起冲击了吗? "]
}
 


图16


参考连接如下:
https://gitee.com/hualongdata/hanlp-ext/tree/master/es-plugin
其它操作:
如果想移除或删除插件,可以执行如下命令
 


图17



文章来源于网络

请使用浏览器的分享功能分享到微信等