- Elasticsearch 教程(一),全程直播(小白级别)
- Elasticsearch 教程(二),IK 分词器安装
- Elasticsearch 教程(三),IK 分词器安装 (极速版)
- Elasticsearch 安装(四), elasticsearch head 插件安装和使用。
- Elasticsearch 教程(五) elasticsearch Mapping 的创建
- Elasticsearch 教程(六) elasticsearch Client 创建
- Elasticsearch 教程(七) elasticsearch Insert 插入数据(Java)
- Elasticsearch 教程(八) elasticsearch delete 删除数据(Java)
- Elasticsearch 教程(九) elasticsearch 查询数据 | 分页查询
- Elasticsearch 权威指南-中文.pdf
如果只想快速安装 IK ,本教程管用。下面看经过。
简介:
- 下面讲有我已经打包并且编辑过的 zip 包,你可以在下面下载即可。
- 当前讲解的 IK 分词器 包的 version 为 1.8。
一、下载 zip 包。
下面有附件链接【ik-安装包.zip】,下载即可。
二、上传 zip 包。
下载后解压缩,如下图。
打开修改修改好后打成 zip 包。
# 'elasticsearch.version' version of elasticsearch compiled against
# You will have to release a new version of the plugin for each new
# elasticsearch release. This version is checked when the plugin
# is loaded so Elasticsearch will refuse to start in the presence of
# plugins with the incorrect elasticsearch.version.
#把这个版本号改成你对应的版本即可,如你的版本是 2.2.0,就改成 2.2.0
elasticsearch.version=2.0.0
/elasticsearch-2.0.0/plugins
在 plugins/目录下上传,并且解压缩。此处注意目录结构必须是这样,如下图:
三、启动测试
呃,我们发现报错了。
[elasticsearch@iZ25x3wjytdZ elasticsearch-2.0.0]$ ./bin/elasticsearch
[2016-03-01 10:32:02,958][INFO ][node ] [Landslide] version[2.0.0], pid[11109], build[de54438/2015-10-22T08:09:48Z]
[2016-03-01 10:32:02,959][INFO ][node ] [Landslide] initializing ...
Exception in thread "main" java.lang.IllegalStateException: Unable to initialize plugins
Likely root cause: java.nio.file.FileSystemException: /home/elasticsearch/es/elasticsearch-2.0.0/plugins/ik.zip/plugin-descriptor.properties: Not a directory
at sun.nio.fs.UnixException.translateToIOException(UnixException.java:91)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
at sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:214)
at java.nio.file.Files.newByteChannel(Files.java:317)
at java.nio.file.Files.newByteChannel(Files.java:363)
at java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvider.java:380)
at java.nio.file.Files.newInputStream(Files.java:108)
at org.elasticsearch.plugins.PluginInfo.readFromProperties(PluginInfo.java:86)
at org.elasticsearch.plugins.PluginsService.getPluginBundles(PluginsService.java:306)
at org.elasticsearch.plugins.PluginsService.(PluginsService.java:112)
at org.elasticsearch.node.Node.(Node.java:144)
at org.elasticsearch.node.NodeBuilder.build(NodeBuilder.java:145)
at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:170)
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:270)
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:35)
一看我们就知道,他去找 plugins/ik.zip 下的配置文件对吧。
解决方案是把这个 ZIP 包删除即可。
删除后再次启动。
[elasticsearch@iZ25x3wjytdZ elasticsearch-2.0.0]$ ./bin/elasticsearch
[2016-03-01 10:32:02,958][INFO ][node ] [Landslide] version[2.0.0], pid[11109], build[de54438/2015-10-22T08:09:48Z]
[2016-03-01 10:32:02,959][INFO ][node ] [Landslide] initializing ...
Exception in thread "main" java.lang.IllegalStateException: Unable to initialize plugins
Likely root cause: java.nio.file.FileSystemException: /home/elasticsearch/es/elasticsearch-2.0.0/plugins/ik.zip/plugin-descriptor.properties: Not a directory
at sun.nio.fs.UnixException.translateToIOException(UnixException.java:91)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
at sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:214)
at java.nio.file.Files.newByteChannel(Files.java:317)
at java.nio.file.Files.newByteChannel(Files.java:363)
at java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvider.java:380)
at java.nio.file.Files.newInputStream(Files.java:108)
at org.elasticsearch.plugins.PluginInfo.readFromProperties(PluginInfo.java:86)
at org.elasticsearch.plugins.PluginsService.getPluginBundles(PluginsService.java:306)
at org.elasticsearch.plugins.PluginsService.(PluginsService.java:112)
at org.elasticsearch.node.Node.(Node.java:144)
at org.elasticsearch.node.NodeBuilder.build(NodeBuilder.java:145)
at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:170)
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:270)
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:35)
我们从启动就看的出来,IK分词器安装成功。
[2016-03-01 10:34:28,803][INFO ][plugins ] [Big Wheel] loaded [analysis-ik], sites [head]
测试:
http://123.57.163.79:9200/_analyze?analyzer=ik&pretty=true&text=sojson 在线工具真好用
{
"tokens" : [ {
"token" : "sojson",
"start_offset" : 0,
"end_offset" : 6,
"type" : "ENGLISH",
"position" : 0
}, {
"token" : "在线",
"start_offset" : 6,
"end_offset" : 8,
"type" : "CN_WORD",
"position" : 1
}, {
"token" : "工具",
"start_offset" : 8,
"end_offset" : 10,
"type" : "CN_WORD",
"position" : 2
}, {
"token" : "真好",
"start_offset" : 10,
"end_offset" : 12,
"type" : "CN_WORD",
"position" : 3
}, {
"token" : "好用",
"start_offset" : 11,
"end_offset" : 13,
"type" : "CN_WORD",
"position" : 4
} ]
}
得出 Over , 有问题留言,或者找我,加群也可以。