一、大名鼎鼎的中文插件IK的安装配置

1. 在插件目录中建立IK的目录

mkdir $ES_HOME/plugins/analysis-ik

2. 下载IK 的类库jar 文件到IK目录

cd  $ES_HOME/plugins/analysis-ik
wget https://github.com/medcl/elasticsearch-rtf/blob/master/plugins/analysis-ik/elasticsearch-analysis-ik-1.2.6.jar

3. 放置数据字典

将打包的ik.zip 解压缩到$ES_HOME/config目录中

unzip  ik.zip  -d  /usr/local/elasticsearch/config/

4. 设置配置文件

在配置文件中添加IK的配置

vi $ES_HOME/config/elasticsearch.yml

在最后添加下边的内容

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

5.重新启动es 看IK 插件运行是否正常

$ES_HOME/bin/elasticsearch –d

查看启动日志中是否加载analysis-ik

cat  $ES_HOME/logs/7jia2.log | grep 'analysis-ik'
[-- ::,][INFO ][plugins ] [spt] loaded [analysis-ik], sites [bigdesk, head]

看到analysis-ik表示加载成功

6. 测试分词效果

curl -XPOST "http://192.168.1.248:7200/lvyoumall/_analyze?analyzer=ik" -d'
{
"text" : "女士冲锋衣"
}'

二 Medcl 大神的另一个分词利器mmseg

1. 在插件目录中建立IK的目录

mkdir $ES_HOME/plugins/ analysis-mmseg

2. 下载IK 的类库jar 文件到IK目录

cd  $ES_HOME/plugins/ analysis-mmseg
wget https://github.com/medcl/elasticsearch-rtf/blob/master/plugins/analysis-mmseg/elasticsearch-analysis-mmseg-1.2.2.jar

3.放置数据字典

将打包的mmseg.zip 解压缩到$ES_HOME/config目录中

unzip  mmseg.zip  -d  /usr/local/elasticsearch/config/

4. 设置配置文件

在配置文件中添加IK的配置

vi $ES_HOME/config/elasticsearch.yml

使最后的分析器如下显示

index:
analysis:
tokenizer:
mmseg_maxword:
type: mmseg
seg_type: max_word
mmseg_complex:
type: mmseg
seg_type: complex
mmseg_simple:
type: mmseg
seg_type: simple
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
mmseg:
alias:
- mmseg_analyzer
type: org.elasticsearch.index.analysis.MMsegAnalyzerProvider
mmseg_maxword:
type: custom
filter:
- lowercase
tokenizer: mmseg_maxword
mmseg_complex:
type: custom
filter:
- lowercase
tokenizer: mmseg_complex
mmseg_simple:
type: custom
filter:
- lowercase
tokenizer: mmseg_simple

5.重新启动es 看IK 插件运行是否正常

$ES_HOME/bin/elasticsearch –d

查看启动日志中是否加载mmseg

cat  $ES_HOME/logs/7jia2.log | grep 'analysis-mmseg '
loaded [analysis-mmseg, analysis-ik, jdbc-1.3.0.4-247a6f5], sites [bigdesk, head]

看到mmseg表示加载成功

6.测试分词效果

Curl -XPOST "http://192.168.1.248:7200/lvyoumall/_analyze?analyzer=mmseg" -d'
{
"text" : "女士冲锋衣"
}'

curl -XPOST "http://192.168.1.248:7200/lvyoumall/_analyze?analyzer=mmseg_complex" -d'
{
"text" : "女士冲锋衣"
}'

ES 中文分词的更多相关文章

  1. ES中文分词器之精确短语匹配(解决了match_phrase匹配不全的问题)

    分词器选择 调研了几种分词器,例如IK分词器,ansj分词器,mmseg分词器,发现IK的分词效果最好.举个例子: 词:<<是的>><span>哈<\span ...

  2. ES中文分词器安装以及自定义配置

    之前我们创建索引,查询数据,都是使用的默认的分词器,分词效果不太理想,会把text的字段分成一个一个汉字,然后搜索的时候也会把搜索的句子进行分词,所以这里就需要更加智能的分词器IK分词器了. ik分词 ...

  3. [ES]elasticsearch章5 ES的分词(二)

    Elasticsearch 中文搜索时遇到几个问题: 当搜索关键词如:“人民币”时,如果分词将“人民币”分成“人”,“民”,“币”三个单字,那么搜索该关键词会匹配到很多包含该单字的无关内容,但是如果将 ...

  4. Elasticsearch之中文分词器插件es-ik(博主推荐)

    前提 什么是倒排索引? Elasticsearch之分词器的作用 Elasticsearch之分词器的工作流程 Elasticsearch之停用词 Elasticsearch之中文分词器 Elasti ...

  5. Elasticsearch(10) --- 内置分词器、中文分词器

    Elasticsearch(10) --- 内置分词器.中文分词器 这篇博客主要讲:分词器概念.ES内置分词器.ES中文分词器. 一.分词器概念 1.Analysis 和 Analyzer Analy ...

  6. ElasticSearch 中文分词搜索环境搭建

    ElasticSearch 是强大的搜索工具,并且是ELK套件的重要组成部分 好记性不如乱笔头,这次是在windows环境下搭建es中文分词搜索测试环境,步骤如下 1.安装jdk1.8,配置好环境变量 ...

  7. ElasticSearch7.3学习(十五)----中文分词器(IK Analyzer)及自定义词库

    1. 中文分词器 1.1 默认分词器 先来看看ElasticSearch中默认的standard 分词器,对英文比较友好,但是对于中文来说就是按照字符拆分,不是那么友好. GET /_analyze ...

  8. Es学习第五课, 分词器介绍和中文分词器配置

    上课我们介绍了倒排索引,在里面提到了分词的概念,分词器就是用来分词的. 分词器是ES中专门处理分词的组件,英文为Analyzer,定义为:从一串文本中切分出一个一个的词条,并对每个词条进行标准化.它由 ...

  9. es学习(三):分词器介绍以及中文分词器ik的安装与使用

    什么是分词 把文本转换为一个个的单词,分词称之为analysis.es默认只对英文语句做分词,中文不支持,每个中文字都会被拆分为独立的个体. 示例 POST http://192.168.247.8: ...

随机推荐

  1. sql date 的精度问题

    new  java.sql.Date(...) 是经过yyyy-MM-dd 格式化后的时间格式. 如果需要:HH:mm:ss .则要用 new java.sql.Timestamp(.....);

  2. 转载:C++之高精度算法

    C++之高精度算法 注意:本文转载自http://blog.sina.com.cn/s/blog_4fdb102b010087ng.html,十分感谢原作者:忍者    前言:由于计算机运算是有模运算 ...

  3. ubuntu 手动添加jar到本地仓库

    前言:maven仓库的下载速度太慢了,而且有些jar不存在,或者加入自己开发的依赖包,还是要学会自己手动加入jar.下面以 javax.servlet-api为例. 1.获取下载的javax.serv ...

  4. [LeetCode] 42. Trapping Rain Water 解题思路

    Given n non-negative integers representing an elevation map where the width of each bar is 1, comput ...

  5. [转] rtp h264注意点(FU-A分包方式说明)

    总括: 一帧视频数据可以编码成多个H264的NALU, 每个NALU的开头为00 00 00 01: 一个RTP包可以传送 部分.一个或多个 NALU,看NALU的大小而定. 之前写过一篇文章,分析了 ...

  6. svn 被锁定

    遇到svn被锁定,clearup 不管用一直报错 用命令行解决了 问题 : command line -> cmd>svn help>svn cleanup>exit

  7. Session案例

    用户登入案例: 按一般的网站登入实例,用户在页面登入页输入账号.密码,验证通过后,在首页显示其"欢迎回来,xxx". 首先完成登入页login.html <!DOCTYPE ...

  8. 如何利用 _ViewStart.cshtml对页面添加代码?

    _ViewStart.cshtml 添加的代码会出现在页面的最上面(<html> 之前) .这样就造成了我原先很多页面出现兼容性问题(经难是因为<html>之前出现了其它的代码 ...

  9. careercup-数组和字符串1.6

    1.6 给定一幅由N*N矩阵表示的如下,其中每个像素的大小为4个字节,编写一个方法,将图像旋转90度.不占用额外内存空间能否做到? 类似leetcode:Rotate Image 思路: 我们这里以逆 ...

  10. labview中层叠式顺序结构与平铺式顺序结构有什么不同?

    也就看着不同,平铺式看着直观,但比较占地方,程序复杂了就显得过大.二者可互相转换,从这点也可以看出它们没有本质不同!