在之前我们学的都是英文,用的也是英文的standard分词器。从这一节开始,学习中文分词器。中国人基本上都是中文应用,很少是英文的,而standard分词器是没有办法对中文进行合理分词的,只是将每个中文字符一个一个的切割开来,比如说中国人 --> 中 国 人

在中方搜索引擎领域,比较成熟和流行的,就是ik分词器。

 
 

 
 

一、在elasticsearch中安装ik中文分词器

 
 

(1)git clone https://github.com/medcl/elasticsearch-analysis-ik

(2)git checkout tags/v5.2.0 (确定合适的版本,要和你的es的版本一样)

(3)mvn package

(4)将target/releases/elasticsearch-analysis-ik-5.2.0.zip拷贝到es/plugins/ik目录下

(5)在es/plugins/ik下对elasticsearch-analysis-ik-5.2.0.zip进行解压缩

(6)重启es

综上:安装步骤就是把ik的包复制到plugins下的ik目录下(ik是我们自己手工创建的)

 
 

二、ik分词器基础知识

 
 

两种analyzer,你根据自己的需要自己选吧,但是一般是选用ik_max_word,就是尽可能的分词,会有重复词。ik_max_word: 会将文本做最细粒度的拆分,比如会将"中华人民共和国国歌"拆分为"中华人民共和国,中华人民,中华,华人,人民共和国,人民,人,民,共和国,共和,和,国国,国歌",会穷尽各种可能的组合;

ik_smart: 会做最粗粒度的拆分,比如会将"中华人民共和国国歌"拆分为"中华人民共和国,国歌"。不会有重复词。

 
 

三、ik分词器的使用

1、新建索引

自定义分词器

PUT /my_index

{

"mappings": {

"my_type": {

"properties": {

"text": {

"type": "text",

"analyzer": "ik_max_word"

}

}

}

}

}

2、插入数据

 
 

POST /my_index/my_type/_bulk

{ "index": { "_id": "1"} }

{ "text": "男子偷上万元发红包求交女友
被抓获时仍然单身" }

{ "index": { "_id": "2"} }

{ "text": "16岁少女为结婚"变"22岁 7年后想离婚被法院拒绝" }

{ "index": { "_id": "3"} }

{ "text": "深圳女孩骑车逆行撞奔驰
遭索赔被吓哭(图)" }

{ "index": { "_id": "4"} }

{ "text": "女人对护肤品比对男票好?网友神怼" }

{ "index": { "_id": "5"} }

{ "text": "为什么国内的街道招牌用的都是红黄配?" }

 
 

 
 

3、查看分词情况

GET /my_index/_analyze

{

"text": "男子偷上万元发红包求交女友
被抓获时仍然单身",

"analyzer": "ik_max_word"

}

 
 

4、进行搜索

GET /my_index/my_type/_search

{

"query": {

"match": {

"text": "16岁少女结婚好还是单身好?"

}

}

}

30.IK中文分词器的安装和简单使用的更多相关文章

  1. 搜索引擎ElasticSearch系列(五): ElasticSearch2.4.4 IK中文分词器插件安装

    一:IK分词器简介  IK Analyzer是一个开源的,基于java语言开发的轻量级的中文分词工具包.从2006年12月推出1.0版开始, IKAnalyzer已经推出了4个大版本.最初,它是以开源 ...

  2. elasticsearch ik中文分词器的安装配置使用

    安装步骤  https://github.com/medcl/elasticsearch-analysis-ik 以插件形式安装: [elsearch@localhost elasticsearch- ...

  3. ES[7.6.x]学习笔记(七)IK中文分词器

    在上一节中,我们给大家介绍了ES的分析器,我相信大家对ES的全文搜索已经有了深刻的印象.分析器包含3个部分:字符过滤器.分词器.分词过滤器.在上一节的例子,大家发现了,都是英文的例子,是吧?因为ES是 ...

  4. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(十九)ES6.2.2 安装Ik中文分词器

    注: elasticsearch 版本6.2.2 1)集群模式,则每个节点都需要安装ik分词,安装插件完毕后需要重启服务,创建mapping前如果有机器未安装分词,则可能该索引可能为RED,需要删除后 ...

  5. elasticsearch ik中文分词器安装

    特殊说明:灰色文字用来辅助理解的. 安装IK中文分词器 我在百度上搜索了下,大多介绍的都是用maven打包下载下来的源码,这种方法也行,但是不够方便,为什么这么说? 首先需要安装maven吧?其次需要 ...

  6. es5.0 安装ik中文分词器 mac

    es5.0集成ik中文分词器,网上资料很多,但是讲的有点乱,有的方法甚至不能正常运行此插件 特别注意的而是,es的版本一定要和ik插件的版本相对应: 1,下载ik 插件: https://github ...

  7. 真分布式SolrCloud+Zookeeper+tomcat搭建、索引Mysql数据库、IK中文分词器配置以及web项目中solr的应用(1)

    版权声明:本文为博主原创文章,转载请注明本文地址.http://www.cnblogs.com/o0Iris0o/p/5813856.html 内容介绍: 真分布式SolrCloud+Zookeepe ...

  8. ES-Mac OS环境搭建-ik中文分词器

    下载 从github下载ik中文分词器,点击地址,需要注意的是,ik分词器和elasticsearch版本必须一致. 安装 下载到本地并解压到elasticsearch中的plugins目录内即可. ...

  9. Solr7.2.1环境搭建和配置ik中文分词器

    solr7.2.1环境搭建和配置ik中文分词器 安装环境:Jdk 1.8. windows 10 安装包准备: solr 各种版本集合下载:http://archive.apache.org/dist ...

随机推荐

  1. 2015南阳CCPC A - Secrete Master Plan A.

    D. Duff in Beach Description Master Mind KongMing gave Fei Zhang a secrete master plan stashed in a ...

  2. [SDOI 2009] 晨跑

    [题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=1877 [算法] 不难看出,第一问要求的是最大流,第二问求的是最小费用最大流 注意建图 ...

  3. 【POJ 2559】 Largest Rectangle in a Histogram

    [题目链接] http://poj.org/problem?id=2559 [算法] 单调栈 [代码] #include <algorithm> #include <bitset&g ...

  4. qtree4

    https://zybuluo.com/ysner/note/1236834 题面 给出一棵边带权的节点数量为\(n\)的树,初始树上所有节点都是白色.有两种操作: 改变节点\(x\)的颜色,即白变黑 ...

  5. 45. ExtJS ComboBox 下拉列表详细用法

    转自:https://blog.csdn.net/luckypeng/article/details/46496151 ComboBox 是ExtJS中经常用到的控件,今天我们来讲一下它的一些用法. ...

  6. PCB genesis短槽加引导孔实现方法

    一.何为短槽 短槽通常定义:槽长小于2倍槽宽      如:槽长1.8mm,槽宽1.0mm 二.为什么要加短槽加引孔呢 短槽孔在钻孔时孔易偏斜导致槽长偏短, 当槽长宽比越小,则受力越不均匀,在钻第2个 ...

  7. E20171011-hm

    Rendering engine  渲染引擎; 引擎; 绘图引擎; interactive   adj. 互动的; 互相作用的,相互影响的; [计] 交互式的; defer   vt. 使推迟; 使延 ...

  8. day03_12/13/2016_bean属性的设置之构造器方式注入

  9. DAO模式详解

    DAO模式 数据访问层(DAO): 数据的增.删.改.查操作: 业务逻辑层(service): 业务来往的操作,需要调用数据访问层则调用数据访问层,传递数据: 表现层(UI): 呈现数据,用户交互. ...

  10. [ JSOI 2015 ] Salesman

    \(\\\) \(Description\) 给出一棵以\(1\)为根的\(N\)个节点的树,开始的时候你在\(1\)号节点. 除了\(1\)号节点以外,每个点都有访问次数限制\(t_i\),即到达该 ...