elasticsearch 安装中文分词器

发车

为什么要在elasticsearch中要使用ik这样的中文分词呢,那是因为es提供的分词是英文分词,对于中文的分词就做的非常不好了,因此我们需要一个中文分词器来用于搜索和使用。今天我们就尝试安装下IK分词。

上车

1、去github 下载对应的分词插件
https://github.com/medcl/elasticsearch-analysis-ik/releases
根据不同版本下载不同的分词插件

2、到es的plugins 目录创建文件夹
cd your-es-root/plugins/ && mkdir ik

3、解压ik分词插件到ik文件夹

unzip elasticsearch-analysis-ik-6.4.3.zip

第二种安装方法

还有一种方式 直接通过es的命令进行安装,es版本需要大于5.5.1

./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.3.0/elasticsearch-analysis-ik-6.3.0.zip

安装好后 重启es
会看到 加载了 ik分词了

到站

IK 分词器简介

  • 1,Elasticsearch中文分词我们采用Ik分词,ik有两种分词模式,ik_max_word,和ik_smart模式;

    • ik_max_word 和 ik_smart 什么区别?

ik_max_word: 会将文本做最细粒度的拆分,比如会将“中华人民共和国国歌”拆分为“中华人民共和国,中华人民,中华,华人,人民共和国,人民,人,民,共和国,共和,和,国国,国歌”,会穷尽各种可能的组合;
ik_smart: 会做最粗粒度的拆分,比如会将“中华人民共和国国歌”拆分为“中华人民共和国,国歌”。

索引时,为了提供索引的覆盖范围,通常会采用ik_max_word分析器,会以最细粒度分词索引,搜索时为了提高搜索准确度,会采用ik_smart分析器,会以粗粒度分词

实测

创建index

curl -XPUT http://localhost:9200/index

创建 mapping

curl -XPOST http://localhost:9200/index/index_mapping -H ‘Content-Type:application/json‘ -d‘ {
	"properties": {
		"content": {
			"type": "text",
			"analyzer": "ik_max_word",
			"search_analyzer": "ik_smart"
		}
	}
}‘

添加几个数据

curl -XPOST http://localhost:9200/index/index/1 -H ‘Content-Type:application/json‘ -d‘  {"content":"美国留给伊拉克的是个烂摊子吗"}  ‘

curl -XPOST http://localhost:9200/index/index/3 -H ‘Content-Type:application/json‘ -d‘  {"content":"中韩渔警冲突调查:韩警平均每天扣1艘中国渔船"}  ‘

curl -XPOST http://localhost:9200/index/index/4 -H ‘Content-Type:application/json‘ -d‘  {"content":"中国驻洛杉矶领事馆遭亚裔男子枪击 嫌犯已自首"}  ‘

进行查询

curl -XPOST http://localhost:9200/index/index/_search -H ‘Content-Type:application/json‘ -d‘
{
	"query": {
		"match": {
			"content": "中国"
		}
	},
	"highlight": {
		"pre_tags": ["<tag1>", "<tag2>"],
		"post_tags": ["</tag1>", "</tag2>"],
		"fields": {
			"content": {}
		}
	}
}

查看效果

原文地址:https://www.cnblogs.com/gwyy/p/12205257.html

时间: 2024-08-29 15:33:42

elasticsearch 安装中文分词器的相关文章

如何在Elasticsearch中安装中文分词器(IK)和拼音分词器?

声明:我使用的Elasticsearch的版本是5.4.0,安装分词器前请先安装maven 一:安装maven https://github.com/apache/maven 说明: 安装maven需要java1.7+ 编译安装分词器时,可能会报错,报错信息如下: [ERROR] COMPILATION ERROR : [INFO] -------------------------------------------------------------[ERROR] No compiler i

(06)ElasticSearch 分词器介绍及安装中文分词器

分词器是用来实现分词的,从一串文本当中切分出一个一个的单词(词条),并对每个词条进行标准化处理(大小写.单复数.同义词等转换).分词器包括3部分: 1.character filter:分词之前的预处理,过滤掉html标签,特殊符号转换等. 2.tokenizer:分词, 3.token filter:标准化 ElasticSearch内置分词器: 1.standard分词器:(默认分词器)它会将词汇单元转换成小写形式,并除去停用词(a.an.the等)和标点符号,支持中文采用的方法为单字切分.

Elasticsearch之中文分词器插件es-ik

前提 什么是倒排索引? Elasticsearch之分词器的作用 Elasticsearch之分词器的工作流程 Elasticsearch之停用词 Elasticsearch之中文分词器 Elasticsearch之几个重要的分词器 elasticsearch官方默认的分词插件 1.elasticsearch官方默认的分词插件,对中文分词效果不理想. 比如,我现在,拿个具体实例来展现下,验证为什么,es官网提供的分词插件对中文分词而言,效果差. [[email protected] elasti

Elasticsearch之中文分词器插件es-ik的热更新词库

前提 Elasticsearch之中文分词器插件es-ik的自定义词库 先声明,热更新词库,需要用到,web项目和Tomcat.不会的,请移步 Eclipse下Maven新建项目.自动打依赖jar包(包含普通项目和Web项目) Tomcat *的安装和运行(绿色版和安装版都适用) Tomcat的配置文件详解 1: 部署 http 服务在这使用 tomcat7 作为 web 容器, 先下载一个 tomcat7, 然后上传到某一台服务器上(192.168.80.10).再执行以下命令 tar -zx

Solr4.10与tomcat整合并安装中文分词器

1.solr Solr 是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器.Solr提供了比Lucene更为丰富的查询语言,同时实现了可配置.可扩展,并对索引.搜索性能进行了优化. Solr可以从Solr官方网站(http://lucene.apache.org/solr/ )下载,解压后目录如下: bin:solr的运行脚本 contrib:solr的一些贡献软件/插件,用于增强solr的功能. dist:该目录包含build过程中产生的war和jar文

Elasticsearch安装中文分词插件ik

Elasticsearch默认提供的分词器,会把每个汉字分开,而不是我们想要的根据关键词来分词.例如: curl -XPOST "http://localhost:9200/userinfo/_analyze?analyzer=standard&pretty=true&text=我是中国人" 我们会得到这样的结果: { tokens: [ { token: text start_offset: 2 end_offset: 6 type: <ALPHANUM>

ElasticSearch的中文分词器ik

一.前言   为什么要在elasticsearch中要使用ik这样的中文分词呢,那是因为es提供的分词是英文分词,对于中文的分词就做的非常不好了,因此我们需要一个中文分词器来用于搜索和使用. 二.IK分词器的安装和使用 2.1.安装ik    我们可以从官方github上下载该插件,我们下载对应于我们使用的es的版本的ik,并且我们能够看到具体的安装步骤,可以有两种安装方法.      这里我们选择第一种方式:    重启es,我们就可以使用ik这个中文分词器了. 2.2.使用ik中文分词器  

elasticsearch安装ik分词器(极速版)

简介:下面讲有我已经打包并且编辑过的zip包,你可以在下面下载即可. 1.下载zip包.elasticsearch-analysis-ik-1.8.0.jar下面有附件链接[ik-安装包.zip],下载即可.(内有做好的elasticsearch-analysis-ik-1.8.0.jar) 2.上传zip包.下载ik.zip文件后解压缩,如下图. 修改plugin-descriptor.properties文件,将elasticsearch.version=2.2.0改成自己的elastics

Docker 安装ElasticSearch的中文分词器IK

主要问题 一定要保证ElasticSearch和ElasticSearch插件的版本一致 我是用的是ElasticSearch是5.6.11版本 对应elasticsearch-analysis-ik-5.6.11 安装插件 在线安装 进入容器 docker exec -it elasticsearch /bin/bash 在线下载并安装 ./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analy