es-IK分词器

  1. 分词器安装analyzer=standard(标准分词)

在线分词 http://10.7.13.7:9200/_analyze?analyzer=standard&pretty=true&text=sojson%E5%9C%A8%E7%BA%BF%E5%B7%A5%E5%85%B7java

{
  "tokens" : [ {
    "token" : "sojson",
    "start_offset" : 0,
    "end_offset" : 6,
    "type" : "<ALPHANUM>",
    "position" : 0
  }, {
    "token" : "在",
    "start_offset" : 6,
    "end_offset" : 7,
    "type" : "<IDEOGRAPHIC>",
    "position" : 1
  }, {
    "token" : "线",
    "start_offset" : 7,
    "end_offset" : 8,
    "type" : "<IDEOGRAPHIC>",
    "position" : 2
  }, {
    "token" : "工",
    "start_offset" : 8,
    "end_offset" : 9,
    "type" : "<IDEOGRAPHIC>",
    "position" : 3
  }, {
    "token" : "具",
    "start_offset" : 9,
    "end_offset" : 10,
    "type" : "<IDEOGRAPHIC>",
    "position" : 4
  } ]
}

一、下载 下载地址为: https://github.com/medcl/elasticsearch-analysis-ik,根据es 2.3.3版本到对于版本上下载1.9.3版本git

二、解压。github

把下载的 elasticsearch-analysis-ik.zip解压。json

三、 Maven 打包elasticsearch

进入elasticsearch-analysis-ik-master/ 下,打包。注意:打包后的文件在elasticsearch-analysis-ik-master/target/目录下ide

mvn clean package 4.而后在elasticsearch-2.3.3/plugins下建立目录 ik工具

cd elasticsearch-2.3.3/plugins mkdir ik cd ik 而后将打包后的elasticsearch-analysis-ik-1.9.3.zip 放入当前目录下,而后解压。测试

五、设置(2.0以上能够不设置,我没有设置)。code

在 Elasticsearch 的config下的elasticsearch.yml文件中,添加以下代码。索引

index:  
  analysis:                     
    analyzer:        
      ik:  
          alias: [ik_analyzer]  
          type: org.elasticsearch.index.analysis.IkAnalyzerProvider  
      ik_max_word:  
          type: ik  
          use_smart: false  
      ik_smart:  
          type: ik  
          use_smart: true

或者简单配置:

index.analysis.analyzer.ik.type : ik

六、启动测试。

http://123.88.88.88: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
  } ]
}

报错:

Caused by: java.lang.IllegalArgumentException: Unknown Analyzer type [ik] for [ik]

状况: 我在安装完elasticsearch(后称elas)后,启动项目,能够正常的使用,而且启动的时候并无报错,都没有问题的。但当我安装并配置完ik后,我再启动elas的时候,就这个报错。

解决: 查了网上通常有几种状况, 1 elas和ik的版本没有对应引发。 2 没有正确配置ik。 3 这是个人状况,我在安装elas的时候,曾经进行过测试的,包括增删改查索引等操做,故在安装ik后,elas里还有一个索引,因此在启动elas+ik的时候就报错了,我到elas里将那个因此删除后,就能够正常启动elas服务了。

相关文章
相关标签/搜索