ES 中文分词
一、大名鼎鼎的中文插件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 中文分词的更多相关文章
- ES中文分词器之精确短语匹配(解决了match_phrase匹配不全的问题)
分词器选择 调研了几种分词器,例如IK分词器,ansj分词器,mmseg分词器,发现IK的分词效果最好.举个例子: 词:<<是的>><span>哈<\span ...
- ES中文分词器安装以及自定义配置
之前我们创建索引,查询数据,都是使用的默认的分词器,分词效果不太理想,会把text的字段分成一个一个汉字,然后搜索的时候也会把搜索的句子进行分词,所以这里就需要更加智能的分词器IK分词器了. ik分词 ...
- [ES]elasticsearch章5 ES的分词(二)
Elasticsearch 中文搜索时遇到几个问题: 当搜索关键词如:“人民币”时,如果分词将“人民币”分成“人”,“民”,“币”三个单字,那么搜索该关键词会匹配到很多包含该单字的无关内容,但是如果将 ...
- Elasticsearch之中文分词器插件es-ik(博主推荐)
前提 什么是倒排索引? Elasticsearch之分词器的作用 Elasticsearch之分词器的工作流程 Elasticsearch之停用词 Elasticsearch之中文分词器 Elasti ...
- Elasticsearch(10) --- 内置分词器、中文分词器
Elasticsearch(10) --- 内置分词器.中文分词器 这篇博客主要讲:分词器概念.ES内置分词器.ES中文分词器. 一.分词器概念 1.Analysis 和 Analyzer Analy ...
- ElasticSearch 中文分词搜索环境搭建
ElasticSearch 是强大的搜索工具,并且是ELK套件的重要组成部分 好记性不如乱笔头,这次是在windows环境下搭建es中文分词搜索测试环境,步骤如下 1.安装jdk1.8,配置好环境变量 ...
- ElasticSearch7.3学习(十五)----中文分词器(IK Analyzer)及自定义词库
1. 中文分词器 1.1 默认分词器 先来看看ElasticSearch中默认的standard 分词器,对英文比较友好,但是对于中文来说就是按照字符拆分,不是那么友好. GET /_analyze ...
- Es学习第五课, 分词器介绍和中文分词器配置
上课我们介绍了倒排索引,在里面提到了分词的概念,分词器就是用来分词的. 分词器是ES中专门处理分词的组件,英文为Analyzer,定义为:从一串文本中切分出一个一个的词条,并对每个词条进行标准化.它由 ...
- es学习(三):分词器介绍以及中文分词器ik的安装与使用
什么是分词 把文本转换为一个个的单词,分词称之为analysis.es默认只对英文语句做分词,中文不支持,每个中文字都会被拆分为独立的个体. 示例 POST http://192.168.247.8: ...
随机推荐
- Hadoop之Pig安装
Pig可以看做是Hadoop的客户端软件,使用Pig Latin语言可以实现排序.过滤.求和.分组等操作. Pig的安装步骤: 一.去Pig的官方网站下载.http://pig.apache.org/ ...
- Hadoop 配置好hive,第一次在conf能进入,第二次就不行了,怎么办?
问题描述: 在 Hadoop 配置好 hive 数据仓库,在conf目录下通过hive命令进入hive数据仓库,非常顺利. 但关闭终端,第二次按这种方式却显示,无次命令. 怎么办? 解决办法: 在h ...
- 《A First Course in Abstract Algebra with Applications》-chaper1-数论
由于笔者在别的专栏多次介绍过数论,这里在<抽象代数基础教程>的专栏下,对于chaper1数论这一章节介绍的方式不那么“入门”. 首先来介绍一个代数中常用也是非常重要的证明方法:数学归纳法. ...
- Linux,实时获取磁盘空间
#include <iostream> #include <stdlib.h> #include <stdio.h> #include <sys/statfs ...
- 制作一个html中闪动的title 来提示消息
var flashTitlePlayer = { start: function (msg) { this.title = document.title; if (!this.action) { tr ...
- ASP.NET MVC- Controllers and Routing- Routing
二.Creating Custom Routes In this tutorial, you learn how to add a custom route to an ASP.NET MVC ap ...
- javascript字符串基本方法
1)auchor anchor() 方法用于创建 HTML 锚. var txt="Hello world!" document.write(txt.anchor("my ...
- centos中使用python遇到的几个问题
用python搞了一个从excel中读取cobbler节点信息并加入cobbler中的脚本,运行的过程中出了不少问题,这里记录下来,方便日后查找! 一.yum install python,我通过这个 ...
- varchar(n)和varchar(max)有什么区别
如果列数据项的大小一致,则使用 char. 如果列数据项的大小差异相当大,则使用 varchar. 如果列数据项大小相差很大,而且大小可能超过 8,000 字节,请使用 varchar(max).
- Java-SSI框架学习
框架简介: 相信大家对于mvc的三层架构已经灰常熟悉了,在这就不细讲了,个人感觉ssi的框架结构还是比较典型的mvc三层架构,还是比较容易上手的.关于这块的入门我想特别感谢下FrankHui童鞋,在他 ...