上课我们介绍了倒排索引,在里面提到了分词的概念,分词器就是用来分词的。 分词器是ES中专门处理分词的组件,英文为Analyzer,定义为:从一串文本中切分出一个一个的词条,并对每个词条进行标准化。它由三部分组成,Character Filters:分词之前进行预处理,比如去除html标签Tokenizer:将原始文本按照一定规则切分为单词Token Filters:针对Tokenizer处理的单
转载
2024-05-20 21:32:15
55阅读
IK支持自定义扩展词典和停用词典,所谓扩展词典就是有些词并不是关键词,但是也希望被ES用来作为检索的关键词,可以将这些词加入扩展词典。停用词典就是有些词是关键词,但是出于业务场景不想使用这些关键词被检索到,可以将这些词放入停用词典。如何定义扩展词典和停用词典可以修改IK分词器中config目录中IKAnalyzer.cfg.xml这个文件。NOTE:词典的编码必须为UTF-8,否则无法生效一、步骤
转载
2024-04-01 13:02:32
436阅读
Linux的docker下ES使用ik分词器一、1.首先停止删除之前的elasticsearch容器(加-a是查看的所有的,不加是正在运行的,如果是正在运行的要先停止才能删除)2.进入到目录 url/localcd /url/local3.创建文件es,并在es下创建data,plugins文件(加-p为递归创建) 创建成功后可以进入到es目录 ls查看一下我们创建的文件,然后返回上一级目录mkd
转载
2024-06-27 07:21:49
78阅读
1.创建删除
创建:
put /myidnex
{
“setting”:{},
“mapping”:{}
}
防止自动创建:可以在elasticsearch.yml中添加action.anto.create_index:false
删除:
delete /myindex1,myindex2
delete /_all
2.索引设置number_of_shards主分片数,默认5,索引
转载
2024-05-07 19:15:42
57阅读
目录一、创建索引二、查看索引三、索引是否存在四、删除索引五、创建文档六、查看文档七、更新文档八、文档是否存在九、删除文档一、创建索引# 创建一个默认的索引,默认是标准分词器的索引
PUT /es_db2
# 创建一个默认为ik分词器的索引
PUT /es_db3
{
"settings": {
"index": {
"analysis.analyzer.default
转载
2024-03-21 14:35:25
197阅读
AnalysisAnalysis 解析器由三个模块=character filters(字符过滤器), tokenizers(标记器), and token filters(标记过滤器)组成Analysis 中的自定义分词analysis 基本概念 === 全文索引中会用到Tokenizer(分词器)对文档分词,提取token(词元),讲token进一步处理如大小写转换的算法叫Filter(过滤器
转载
2024-07-01 14:12:12
65阅读
ElasticSearch1、ElasticSearch学习随笔之基础介绍 2、ElasticSearch学习随笔之简单操作 3、ElasticSearch学习随笔之java api 操作 4、ElasticSearch学习随笔之SpringBoot Starter 操作 5、ElasticSearch学习随笔之嵌套操作 6、ElasticSearch学习随笔之分词算法 7、ElasticSear
转载
2024-08-09 15:55:37
14阅读
前言我们通过前面两篇文章的学习,基本解es,但还不足以应对我们平时的开发任务,因此我们还需要全面深入的学习es技术。本篇文章会讲述很多底层内核级原理,所以我们需要集中精力深入体会。一 ES 内核级原理及相关概念1.1 分词器原理&介绍它指把一段语句,拆分成单个的单词。同时对每个单词进行normalization (时态转换,单复数转换)处理,以提升recall召回率(搜索的时候,增加能够搜
转载
2024-05-05 15:37:04
192阅读
文章目录一、本地文件读取方式二、远程扩展热更新 IK 分词三、重写ik源码连接mysql 一、本地文件读取方式首先进入elasticsearch目录的plugins目录下,查看目录结构 2.进入confg目录下 创建文件mydic.dic 并添加:“我是中国人” 3.打开config目录下 IKAnalyzer.cfg.xml配置文件 vim IKAnalyzer.cfg.xml 修改内容如下:
转载
2024-03-21 09:46:18
112阅读
一、需求因为需要对搜索结果进行一个统一化的评分,因此需要仔细研究ES本身的评分规则从而想办法把评分统一。省流:无法确切统一化二、ES查询评分规则之前有说过ES的查询评分原理,那么仔细思考之后就会发现,长文本搜索对应的score会比短文本搜索的score高很多:score=单个分词评分之和,长文本对应的词更多那么score就会更多。通过在查询中设置参数”explain”:true来查看具体的分数来源
转载
2024-02-15 20:45:27
152阅读
## 什么是分词
```
把文本转换为一个个的单词,分词称之为analysis。es默认只对英文语句做分词,中文不支持,每个中文字都会被拆分为独立的个体。
```## es内置分词器
```
- standard:默认分词,单词会被拆分,大小会转换为小写。
- simple:按照非字母分词。大写转为小写。
- whitespace:按照空格分词。忽略大小写。
- stop:去除无意义单
转载
2023-12-28 08:27:02
49阅读
在ES中,词项搜索也叫term搜索,term就有词项的意思。词项检索的意思就是说我输入一个词汇,在检索的时候不会把你输入的这个词汇做分词,匹配条件就是完整的输入的词汇,但是文档插入的时候该分词还是分词。下面会有例子说明。 全文检索不一样,全文检索就是按照分词插入,分词匹配,分词处理输入条件。一、基于Term的查询1、简介term是表达语义最小的单位,搜索和利用统计语言模型进行自然语言处理都需要处理
转载
2024-04-24 15:34:29
81阅读
1. ES其实也就像一个数据库,它有自己的一套存储结构。像建立数据库表一样,我们需要为每个字段添加一些属性,比如字段类型,该字段是否要分词,该字段需要哪种分词器去解析它等。以下是完整的字段属性:
1. "status": {
2. "type": "string", //字符串类型
3. "index": "analyzed"//分词,不分
转载
2024-05-21 20:10:01
299阅读
倒排索引正排索引:文档id到单词的关联关系倒排索引:单词到文档id的关联关系示例: 对以下三个文档去除停用词后构造倒排索引 image倒排索引-查询过程查询包含“搜索引擎”的文档通过倒排索引获得“搜索引擎”对应的文档id列表,有1,3通过正排索引查询1和3的完整内容返回最终结果倒排索引-组成单词词典(Term Dictionary)倒排列表(Posting List)单词词典(Term
Elasticsearch中,内置了很多分词器(analyzers),例如standard (标准分词器)、english (英文分词)和chinese (中文分词)。其中standard 就是无脑的一个一个词(汉字)切分,所以适用范围广,但是精准度低;english 对英文更加智能,可以识别单数负数,大小写,过滤stopwords(例如“the”这个词)等;chinese 效果很差; 1、ela
转载
2024-06-01 18:32:26
188阅读
针对一些特殊的词语在分词的时候也需要能够识别 有人会问,那么,例如: 如果我想根据自己的本家姓氏来查询,如zhouls,姓氏“周”。 如果我想根据自己公司里的产品名称来查询,如“” 如果我想根据某个网络上流行的词名称来查询,如“扫福” 那么,若直接使用es-ik则分不出来的,所以,这就是为
转载
2024-09-01 08:38:54
38阅读
1、es分词:分词是将文本转换成一系列单词的过程,也可以叫文本分析,在ES里面称为Analysis;2、分词器:分词器是ES中专门处理分词的组件,英文为Analyzer,它的组成如下: character filter:字符过滤器,对文本进行字符过滤处理,如处理文本中的html标签字符。处理完后再交给tokenizer进行分词。一个analyzer中可包含0个或多个字符过滤器,多个按配置顺序依次进
转载
2023-09-12 16:52:09
110阅读
文档(Document):一般搜索引擎的处理对象是互联网网页,而文档这个概念要更宽泛些,代表以文本形式存在的存储对象,相比网页来说,涵盖更多种形式,比如Word,PDF,html,XML等不同格式的文件都可以称之为文档。再比如一封邮件,一条短信,一条微博也可以称之为文档。 文档集合(Document Co
转载
2024-07-22 17:28:39
52阅读
分词器ES的分词器把文本解析为一个一个的词,写入倒排索引中filter过滤器lemmagen 词性还原stop 停顿词shingle 临近词n个作为一组查询analyzer分词器standard标准分词器多字段搜索优化bool 查询采取 more-matches-is-better 匹配越多越好的方式,所以每条 match 语句的评分结果会被加在一起,从而为每个文档提供最终的分数 _score 。
转载
2024-02-22 16:43:42
43阅读
ES分词器种类常见的分词器,如Standard分词器、Simple分词器、Whitespace分词器、IK分词等,还支持自定义分词器(比如一些小国家的语言需要自定义分词器)ES默认就是Standard分词器分词器在分词时的过程标记化:分词器第一步是将文本拆分成单个标记(tokens), 就是单个的单词或中文词组,这个标记可以是单词,数组,特殊字符,中文词语等。 此时会包含一些分隔符,标点,停用词等
转载
2024-06-24 15:54:00
42阅读