1、elasticsearch官方
只提供smartcn这个中文分词插件,效果不是很好
2、引入分词器前命令行下测试
curl 'http://localhost:9200/jf/_analyze?pretty=true' -d '{"text":"京东商城"}'
现象是按照每个单词进行要给分词
3、集成IK分词工具
3.1:下载es的IK插件https://github.com/medcl/elasticsearch-analysis-ik
这里选择v1.4.0 版本,具体可以访问:https://github.com/medcl/elasticsearch-analysis-ik/tree/v1.4.0,然后点击"Download Zip "
3.2:使用maven进行编译下载的源码
3.3:把编译后的target/releases下的elasticsearch-analysis-ik-1.4.0.zip文件拷贝到ES_HOME/plugins/analysis-ik目录下面,然后解压
3.4:把下载的ik插件中的conf/ik目录拷贝到ES_HOME/config下
3.5:修改ES_HOME/config/elasticsearch.yml文件,添加index.analysis.analyzer.default.type: ik(把IK设置为默认分词器)
3.6:重启es服务
3.7:测试分词效果: curl 'http://localhost:9200/jf/_analyze?analyzer=ik&pretty=true' -d '{"text":"京东商城"}'
[root@mycluster service]# curl 'http://localhost:9200/jf/_analyze?analyzer=ik&pretty=true' -d '{"text":"京东商城"}'
{
"tokens" : [ {
"token" : "text",
"start_offset" : 2,
"end_offset" : 6,
"type" : "ENGLISH",
"position" : 1
}, {
"token" : "京东",
"start_offset" : 9,
"end_offset" : 11,
"type" : "CN_WORD",
"position" : 2
}, {
"token" : "京",
"start_offset" : 9,
"end_offset" : 10,
"type" : "CN_WORD",
"position" : 3
}, {
"token" : "东",
"start_offset" : 10,
"end_offset" : 11,
"type" : "CN_CHAR",
"position" : 4
}, {
"token" : "商城",
"start_offset" : 11,
"end_offset" : 13,
"type" : "CN_WORD",
"position" : 5
} ]
}
标签:end,ES007,token,start,ik,Elasticsearch,offset,type,分词 From: https://blog.51cto.com/u_14361901/6114257