Elasticsearch1.4.2 安装中文分词器


安装IK分词器

1下载源码:

https://github.com/medcl/elasticsearch-analysis-ik此页面有一个链接“DownloadZIP”,点击该链接即可下载源码。

2编译源码

该源码是通过maven管理的,通过pom文件即可导入到现有eclipse工程中。编译获得elasticsearch-analysis-ik-1.2.9.jar

plugins目录下建analysis-ik目录,并把上述elasticsearch-analysis-ik-1.2.9.jar拷入。

3 config目录

源码中有一个config目录,对应elasticsearch-1.4.2下的config目录。

首先把源码的config目录下的ik目录拷贝到elasticsearch-1.4.2\config下。

源码的confi目录下还有一个elasticsearch.yml,把该文件最底下的修改copyelasticsearch-1.4.2\config下的elasticsearch.yml中。源码中的logging.yml不做处理。

index:

 analysis:

   analyzer:

     ik:

         alias: [news_analyzer_ik,ik_analyzer]

         type: org.elasticsearch.index.analysis.IkAnalyzerProvider         

index.analysis.analyzer.default.type :"ik"

4 lib目录

.m2下搜httpclient-4.3.5.jar”和“httpcore-4.3.2.jar”,拷到elasticsearch-1.4.2\lib下。


---------------------------

同义词:

在config目录下没有看到同义词词典。IK不支持同义词分词?

查了下,下面链接说如何通过filter支持同义词,不过版本是1.3。有空再看。

http://www.elastic.co/guide/en/elasticsearch/reference/1.3/analysis-synonym-tokenfilter.html#_solr_synonyms

权威指南里的同义词说明,不过没看到外链文件。

http://www.elastic.co/guide/en/elasticsearch/guide/current/synonyms.html


安装mmseg分词器

过程跟安装IK分词器是类似的。区别:

1 plugins目录下建的是mmseg目录;

2 elasticsearch.yml中添加了源码中带的设置之后,启动后报:

“java.lang.ClassNotFoundException: org.elasticsearch.index.analysis.htmlstrip.HtmlStripTokenFilterFactory”

查了google,也没找到原因,猜是html_strip相关的问题。注掉elasticsearch.yml中char_filter相关的行后,就好了。

不过char_filter这么写是教程里的呀。http://www.elastic.co/guide/en/elasticsearch/reference/current/analysis-custom-analyzer.html

------------------------

mmseg的分词效果。解析“中华人民共和国国歌”,比IK少了4个词。mmseg词库不全。

{
   "tokens": [
      {
         "token": "中华",
         "start_offset": 2,
         "end_offset": 4,
         "type": "word",
         "position": 1
      },
      {
         "token": "华人",
         "start_offset": 3,
         "end_offset": 5,
         "type": "word",
         "position": 2
      },
      {
         "token": "人民",
         "start_offset": 4,
         "end_offset": 6,
         "type": "word",
         "position": 3
      },
      {
         "token": "共和",
         "start_offset": 6,
         "end_offset": 8,
         "type": "word",
         "position": 4
      },
      {
         "token": "国",
         "start_offset": 8,
         "end_offset": 9,
         "type": "word",
         "position": 5
      },
      {
         "token": "国歌",
         "start_offset": 9,
         "end_offset": 11,
         "type": "word",
         "position": 6
      }
   ]
}




 





  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Elasticsearch安装中文分词IK,请按照以下步骤操作: 1.确保您的Elasticsearch版本与IK分词版本兼容。您可以在IK分词的GitHub页面上查看兼容性信息。 2.下载IK分词插件。您可以在IK分词的GitHub页面上找到最新版本的插件。 3.将IK分词插件安装Elasticsearch中。您可以使用以下命令将插件安装Elasticsearch中: ``` sudo bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v{版本号}/elasticsearch-analysis-ik-{版本号}.zip ``` 请将{版本号}替换为您要安装的IK分词的版本号。例如,如果您要安装版本7.5.1的IK分词,则应使用以下命令: ``` sudo bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.5.1/elasticsearch-analysis-ik-7.5.1.zip ``` 4.安装完成后,重启Elasticsearch以使IK分词生效: ``` sudo systemctl restart elasticsearch ``` 5.现在您可以在Elasticsearch索引中使用中文分词IK了。您可以使用以下代码段在索引映射中配置IK分词: ``` "analysis": { "analyzer": { "ik_max_word": { "tokenizer": "ik_max_word" }, "ik_smart": { "tokenizer": "ik_smart" } }, "tokenizer": { "ik_max_word": { "type": "ik_max_word" }, "ik_smart": { "type": "ik_smart" } } } ``` 在这个示例中,我们为两个分词ik_max_word和ik_smart定义了令牌。您可以根据需要添加其他分词和令牌

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值