概述Elaticsearch在保存数据时,会根据创建索引的mapping映射对于每个字段的数据进行分词。同时在查询索引数据的时候会对于检索词进行分词,然后再检索。因此分词对于数据库的查询效率和相关度的关系是非常大的。分词器的作用ES在创建索引和查询索引的时候都需要需要用到分词器进行分词,而分词器的作用:分词器的作用是把一段文本中的词按照一定规则进行切分由于检索和分词都需要用到分词器,因此务必保证使
https://github.com/medcl/elasticsearch-analysis-pinyin/tags
原创
2022-07-06 19:31:32
70阅读
一、概述elasticsearch官方默认的分词插件,对中文分词效果不理想。中文的分词器现在大家比较推荐的就是 IK分词器,当然也有些其它的比如 smartCN、HanLP。这里只讲如何使用IK做为中文分词。 二、安装elasticsearch环境说明操作系统:centos 7.6docker版本:19.03.12ip地址:192.168.31.165 安装这里安装7.10.1
2.安装配置1.拷贝拷贝到服务器上,解压:tar -xvzf elasticsearch-6.3.1.tar.gz 。解压后路径:/home/elasticsearch-6.3.13.创建用户创建用户,创建esdata目录,并赋予权限 [root@bogon home]# adduser esuser
[root@bogon home]# cd /home
[root@bogon home]
安装pinyin分词 地址:https://github.com/medcl/elasticsearch analysis pinyin 得到
原创
2021-08-05 16:21:39
502阅读
问题:在使用term精确查询text 类型时,比如phone 手机号数值时可以查询到,使用nickname 这种text 查询不到。我的mapping 是这样的 解决:1.通过es提供的测试分词的接口,我们可以测试各字段的分词情况get http:/ip/索引名称/_analyze
{
"field":"firtname", #要进行分析的索引中的字段
"text":"D
IK分词器下载地址:https://github.com/medcl/elasticsearch-analysis-ik选择elasticsearch对应版本的
原创
2022-10-11 16:55:33
740阅读
Spring知识点1. Spring简介(此章略过)1.1 Spring概述1.2 Spring家族1.3 Spring Framework2. IOC2.1 IOC容器2.2 基于XML管理bean2.2.1 入门案例(ioc容器的整体思路)2.2.2 获取bean的三种方式2.2.3 依赖注入2.2.3.1 setter注入2.2.3.2 构造器注入2.2.4 特殊值处理2.2.5 为类类型
最近在学java,碰到了一些很好用的方法,可以把字符串按照我们的要求分解成独立的单词,下面就来讲一下,有两种方法可以实现split方法这个方法比较简单,我们直接上代码String str = "this is a text.";
String res[]=str.split(" |\\.");
for(int i=0;i<res.length;i++)
Sys
转载
2023-08-29 23:35:04
84阅读
文章目录1. 下载分词器2. es集成pinyin3. 启动es4. 自定义分词5. 映射模型6. 初始化数据7. 查询索
原创
2022-09-07 21:48:00
1340阅读
目录一、ES优化1.限制内存2.文件描述符3.语句优化二、中文分词器 ik0.引出1.插入数据2.查询数据3.配置中文分词器0)注意:1)创建模板方式2)本地配置文件修改方式3)远程扩展字典一、ES优化1.限制内存1.启动内存最大是32G
2.服务器一半的内存全都给ES
3.设置可以先给小一点,慢慢提高
4.内存不足时
1)让开发删除数据
2)加节点
3)提高配置
5.关闭swap空间2.文
安装elasticsearch
1.新建一个用户esuser出于安全考虑,elasticsearch默认不允许以root账号运行。
创建用户:useradd esuser
设置密码:passwd esuser
切换用户:su - esuser
2.上传安装包,并解压我们将安装包上传到:/home/esuser目录
解压缩:tar -zxvf elasticsearch-6.2.4.tar
4.添加IK分词器 4.1 添加原因 一般像solr和es这类搜索引擎自带的分词器对中文的分词效果都是非常差的,我们来看个例子。
首先,我们先使用刚刚安装好的head插件来添加一个名为shop的索引,如图所示
之后我们来看一下默认的分词器是如何来拆分’五常大米’这几个字的,在浏览器中输入
http://你的ip:9200/shop/_analyze
官网文档1. 自定义分词器当内置分析仪无法满足您的需求时,您可以创建 custom使用以下各项的适当组合的分析器:tokenizer内置或自定义的标记器。(需要)char_filter内置或自定义字符过滤器的可选数组 。filter内置或自定义令牌过滤器的可选数组 。position_increment_gap在为文本值数组建立索引时,Elasticsearch在一个
ElasticSearch之IK分词器的安装与使用前言安装离线安装在线安装ik分词器测试扩展(停用)词(典)测试数据概念配置词典1.修改配置文件2.新建词典3.自定义内容4.重新启动ES5.测试远程词典1.新建项目2.启动项目3.配置远程扩展词典4.重启ES5.测试 前言ElasticSearch中默认使用标准分词器进行分词,这种方式不适用于中文语法,所以对中文查询不友好。IK分词器是一款适用于
内置分词器、中文分词器这篇博客主要讲:分词器概念、ES内置分词器、ES中文分词器。 一、分词器概念 1、Analysis 和 AnalyzerAnalysis: 文本分析是把全文本转换一系列单词(term/token)的过程,也叫分词。Analysis是通过Analyzer来实现的。当一个文档被索引时,每个Field都可能会创建一个倒排索引(Mapping可以设置不索引该Field)。倒排索
上文 Elasticsearch(ES) 下载添加IK分词器 带大家 下载 并使用了 IK 分词器 我们先启动 ES 服务 然后 我们来说 IK分词器 怎么用设置分词器 我们还是要发put请求 创建索引时 通过参数设置 这里 我们put请求 类型要换成 json的 我们先加一个这样的模板{
"mappings": {
"properties": {
一、IK分词器全民制作人,大家好,我是练习时长2年半的个人练习生亚瑟王,喜欢ES、钢琴、鼓励队友。ES默认的standard分词器对中文不友好,会将中文分割成一个个汉字。对于中文分词,目前比较常用的是IK分词器。IK分词器的作者对这个项目维护的比较积极,能紧跟ES的最新版本。安装IK分词器的教程网上太多了,我这里就不再赘述了。本篇博客仅仅记录我自己学习IK的一些小小心得。1. 创建测试的Mappi
ES配置ES分词器安装 由于elasticsearch默认的分词器是全文分词,需要安装ik分词器。 进入到bin目录中 ./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.7.1/elasticsearch-analysis-ik-7.7
IK 分词器和ElasticSearch集成使用1.上述查询存在问题分析在进行字符串查询时,我们发现去搜索"搜索服务器"和"钢索"都可以搜索到数据;
而在进行词条查询时,我们搜索"搜索"却没有搜索到数据;
究其原因是ElasticSearch的标准分词器导致的,当我们创建索引时,字段使用的是标准分词器:{
"mappings": {
"article": {