首页 > 其他分享 >初学elasticsearch——除了CRUD之外我还需要关注es的哪些问题

初学elasticsearch——除了CRUD之外我还需要关注es的哪些问题

时间:2024-11-04 20:58:21浏览次数:1  
标签:词条 倒排 删除 CRUD 索引 elasticsearch 文档 es

1.倒排索引是如何工作的

倒排索引中主要有词条和文档两个概念:词条是分词后产生的词语,每条数据都有对应的文档(被序列化好的json串)

倒排索引就是把词条、文档ID记录下来,每当出现一个重复的词条都会追加在文档ID

如下图,词条是不会重复的

 在查询的时候,我们会先对搜索内容进行分词,根据分词去倒排索引中查询文档id,根据文档id查询文档,最终返回结果集。

 

2.字段介绍

_source:在存储的时候就是存储了原始文档_source和倒排索引两种信息。

index:是否在es中建立索引,默认是true

store:是否在es中存储,默认为false(这个其实是lucene的功能,es中的_source已经取代了他)

 

X.es中的删除是真的删除吗

当es中使用delete删除某文档时,他并不会立刻删除该文档,而是给元数据一个标记该文档已删除

es基于lucene,lucene将索引数据分为多个段segments,每个段都是一个独立的索引文件,当文档被标记为删除时会使这些删除操作记录在一个删除文件中

es会定期执行段合并操作来删除删除文件中的文件;

此外es还提供了一个删除缓存,在删除大量文档时,缓存的删除会被持久化到删除文件中

 

X1.es为什么占内存那么大

es使用了多级缓存提高查询速度,使用内存映射文件来提高文件访问速度,同时es还是基于JVM的

标签:词条,倒排,删除,CRUD,索引,elasticsearch,文档,es
From: https://www.cnblogs.com/kun1790051360/p/18504341

相关文章

  • Field Crop Res | 中国热科院甘蔗中心发布甘蔗智慧育种的全新架构
    近日,中国热带农业科学院/热带生物技术研究所甘蔗研究中心在“国家热带农业科学中心科技创新团队”和“热带作物生物育种全国重点实验室科研项目”等专项资助下,研究并发布了甘蔗智慧育种的全新架构。相关研究成果以_Digitalevolutionandtwinmiracleofsugarcanebreeding为题......
  • MES管理系统(期中)
    写在最前自学的话是跟着b站上黑马程序员的视频和文档资料,看的是这个视频建议在黑马公众号,获取课程资料,跟着课程资料里的ppt或md文档自学,实在看不懂的在去看视频,如果一集一集刷,耗时MES管理系统1.新建一个java的maven项目2.maven中导入相关依赖(需要学习maven相关知识......
  • 如何定义ggplot2 的scale_fill_manual() 中参数 values 的命名向量?
    需求背景对R语言中,ggplot2的scale_fill_manual()函数的values参数理解不到位,它这里需要的是一个命名向量,无法在c()函数内部直接创建一个向量。举例说明,以不同分类数据的条形图来作为图例。比如我有14个不同物种,绘制其不同颜色的条形图,注意颜色不能随便定义,需要指定每个......
  • ​Cell Res | 首个知识与数据联合驱动的跨物种生命基础大模型GeneCompass:解析基因调控
    近年来,大语言模型(LLMs)已在自然语言、计算机视觉等通用领域引发了新一轮技术革命,通过大规模语料和模型参数进行预训练,LLMs能够掌握语言的共性规律,能够对多种下游任务产生质的提升,已经形成了新的人工智能范式。在生命科学领域,单细胞组学技术的突破产生了大量不同物种细胞的基因表达......
  • TypeScript中的类型注解、Interface接口、泛型
    一、认识TypeScript1.概述TypeScript是具有类型语法的JavaScript,是一门强类型的编程语言。它是JavaScript的超集(js中的所有元素都属于ts),这意味着任何有效的JavaScript代码本身也是有效的TypeScript代码。2.优点静态类型检查TypeScript在编译阶段就可以检查类......
  • 【typescript】什么是类型参数全局?如何使用它们?
    在TypeScript中,“类型参数全局”并不是一个标准术语,这里是指如何在全局范围内定义和使用类型参数,或者是如何处理全局类型的定义。不过,如果从全局类型的角度来看,我们可以讨论一下如何在TypeScript中定义和使用全局类型,以及如何通过类型参数在全局范围内传递类型信息。全局类......
  • 【typescript】什么是类型参数工具类型?如何使用它们?
    什么是类型参数工具类型?类型参数工具类型(UtilityTypes)是TypeScript提供的内置类型,用于在现有类型的基础上进行转换或修改。这些工具类型可以帮助开发者简化常见的类型操作,如去除属性的可选项、添加只读属性、提取对象的键等。TypeScript的工具类型非常强大,能够显著提高代......
  • CF2036(Codeforces Round 984 (Div. 3))
    疯狂写,结果卡在t3的分类讨论当场暴毙,切完t4困得受不了睡觉去了。A.Quintomania难度:红#include<bits/stdc++.h>#definelllonglong#definemxn100010usingnamespacestd;llt,n,k,ans,a[mxn],c;voidsolve(){cin>>n;for(inti=1;i<=n;i++)cin>>a[i];f......
  • Educational Codeforces Round 162 (Rated for Div. 2) - VP记录
    Preface这次状态不是很好,B题做的稍微久了一点。D题一眼秒出做法,可惜很多细节没考虑到导致WA了三发。下次应当在做题的时候多多考虑细节,手推数据。而不要想着撞大运撞对。A.MovingChips每一次移动可以补齐一个\(0\),所以找\(1\)中穿插的\(0\)的数量即可,注意两边的\(......
  • AtCoder Beginner Contest 378
    AtCoderBeginnerContest378总结A直接模拟,存\(1\)到\(4\)出现个数。#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<cmath>#include<vector>#include<queue>#include<map&g......