2024.2.25 -ElasticSearch 进阶

倒排索引

Elasticsearch的倒排索引机制是通过将文档中出现的词汇与它们所在的文档ID关联起来,实现快速查找包含特定词汇的文档。下面是一个具体的例子来说明倒排索引的工作原理:

假设我们有一个简单的文章集合,包含以下三篇文章:

1. 文章A:标题为“新冠病毒疫情最新动态”,内容为“关于全球COVID-19疫情的最新进展报告”
2. 文章B:标题为“春季流感预防措施”,内容为“如何在春季有效预防流感病毒传播”
3. 文章C:标题为“疫苗接种的重要性”,内容为“讨论不同类型的疫苗及其在防疫中的关键作用”

**构建倒排索引过程:**

对于每个文档,Elasticsearch会执行以下步骤:
- 分词(Tokenization):对文档的内容进行分词处理。例如,文章A的标题和内容分别会被分成如下的关键词:
  - 标题:“新冠”、“病毒”、“疫情”、“最新”、“动态”
  - 内容:“全球”、“COVID-19”、“疫情”、“最新”、“进展”、“报告”

- 创建倒排索引条目:
  - 对于每个唯一词汇,记录它出现在哪些文档以及在文档中的位置信息:
    - “新冠” -> [文档A, 标题]
    - “病毒” -> [文档A, 标题], [文档A, 内容]
    - “疫情” -> [文档A, 标题], [文档A, 内容]
    - ...
    - “预防” -> [文档B, 标题]
    - “疫苗” -> [文档C, 标题]

**查询使用倒排索引:**

现在,如果我们想要搜索包含关键词“疫情”的所有文章,Elasticsearch可以直接查看倒排索引,找到关键词“疫情”对应的文档列表,即:

- “疫情” -> [文档A, 标题], [文档A, 内容]

因此,搜索引擎立即知道文档A包含了这个词,并且可以在毫秒级的时间内返回搜索结果。

总结来说,Elasticsearch的倒排索引使得无需扫描整个文档集合就能迅速定位到含有特定词汇的文档,极大地提高了全文检索的速度和效率。

ES的架构

角色:client Esmaster 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/701674.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java学习——泛型

Java泛型是Java语言中的一个特性,它允许你在类、接口和方法上定义类型参数。使用泛型可以使代码更加通用,减少代码重复,并在编译时提供更强的类型检查。下面分别介绍泛型类、泛型方法和泛型接口。 泛型类 泛型类是在类名后添加类型参数声明…

ap和ac的工作原理

让我们一步步解释无线网络中访问点 (AP) 和无线控制器 (AC) 的工作原理: 1. 访问点 (AP): 访问点是无线局域网络 (WLAN) 中的关键组件之一,它充当无线设备(如笔记本电脑、智能手机等)和有线网络之间的桥梁。其工作原理…

Oracle开发和应用——PL/SQL语法2(游标及集合)

6.4.6. 游标 这里的游标(cursor),是指数据库开发中的游标,而且,这里所指的是显式定义的游标。因为,除了显式定义的游标,我们每条SQL语句也会隐式的定义、打开和关闭一个游标,其实质是一个带有指针的结果集。当我们按照顺序取出结果时,这个指针会按照从前到后的顺序移…

990-09产品经理:How project management benefits different teams 项目管理如何使不同的团队受益

Project management methods and tools can be deployed across all teams and industries to help improve efficiency and drive results. In this chapter, we’ll provide an overview of how PM benefits construction, IT, marketing, and operations teams. 项目管理方法…

解锁苏宁电商数据新纪元:关键字搜索API接口引领业务升级

苏宁关键字搜索API接口:电商数据探索的新篇章 一、引言 在电商领域,数据的重要性不言而喻。为了帮助开发者更高效地获取和利用电商数据,苏宁开放平台提供了关键字搜索API接口。本文将带你深入了解这一接口的技术细节,让你在电商…

如何获取pnpm存储目录

现在你可以做 得到:\path\to.pnpm-store\v3 pnpm store path注:从v7.0.0开始,pnpm 存储位于不同的文件夹中。它将位于$XDG_DATA_HOMELinux Linux : ~/.local/share/pnpm/store (default) Windows : C:\Users\YOUR_NAME\AppData\Local\pn…

设计模式--单例模式--懒汉饿汉

单例模式 单例模式(Singleton),保证一个类仅有一个实例,并提供一个访问它的全局访问点。 单例模式 通常我们可以让一个全局变量使得一个对象被访问,但它不能防止你实例化多个对象。一个最好的办法就是,让类自身负责保存它的唯一实…

selenium自动化测试如何定位一闪而过的元素,比如提示信息、提交按钮

这里以登录按钮为例 在当前页面按F12点击控制,在下方输入debugger,点击登录按钮后点击输入debugger的地方按回车,一闪而过的元素就会定住不动就可以定位了

golang中make和new的区别

参考链接 https://worktile.com/kb/ask/38441.html 在Go语言中,make和new都是用于创建数据结构的内置函数,区别: 分配内存的区别 返回类型的区别 初始化的区别 分配内存的区别 make 用于创建切片、映射和通道等 引用类型 的数据结构。new 用…

企业网站建设需要多少钱?定制开发费用报价在3000-4000元

建立一个网站需要多少钱? 网站建设的价格划分也有很多。 这里首先要提的是市面上常见的一种低成本建站方式——模板网站,就是那种直接制作网站原型就可以无限复制的网站。 或者可以在几分钟内建立一个由软件生成的网站。 成本低得惊人,从500元…

【C++那些事儿】C++入门 | 命名空间 | 缺省参数 | 引用 | 内联函数 | auto关键字 | 范围for循环 | nullptr

📷 江池俊: 个人主页 🔥个人专栏: ✅数据结构冒险记 ✅C那些事儿 🌅 有航道的人,再渺小也不会迷途。 文章目录 前言1. C关键字(C98)2. 命名空间2.1 命名空间定义2.2 命名空间使用 3. C输入&输出4. 缺…

Qt 使用MD5给数据加密方法

重点: 1.通常在存储密码的时候需要对数据进行加密,通常采用Md5进行加密。 //存储密码时候 //读取存储的用户名和密码, 密码是经过加密的 void TDialogLogin::readSettings() {QSettings settings; //创建QSettings对象bool savedsettings.value(&q…

PyPDF2:项目实战源码分享(PDF裁剪)

目录📑 1. 背景📑2. 源码模块解析📑2.1 读取PDF页数2.2 获取指定页的宽高尺寸2.3 裁剪单页PDF2.4 批量裁剪PDF 总结📑 1. 背景📑 接PyPDF2模块推荐博文中提到的实际需求(将银行网站下载来的多页且单页多张…

【More Effective C++】条款8:new和delete的理解

new:内建的操作符和sizeof一样,不能被改变意义,包含下面两个部分 调用operator new 分配足够的内存;在内存上调用构造函数,为对象赋初值,并将返回的指针转型为对象的类型。 程序员无法直接调用对象初始化…

LeetCode 热题 100 | 二叉树(一)

目录 1 基础知识 1.1 先序遍历 1.2 中序遍历 1.3 后序遍历 2 94. 二叉树的中序遍历 3 104. 二叉树的最大深度 4 226. 翻转二叉树 5 101. 对称二叉树 菜鸟做题,语言是 C 1 基础知识 二叉树常见的遍历方式有: 先序遍历中序遍历后序遍历…

基于YOLOv5+PySide6的火灾火情火焰检测系统设计深度学习

wx供重浩:创享日记 对话框发送:225火灾 获取完整源码源文件已标注的数据集(1553张)配置跑起来说明 可有偿49yuan一对一远程操作,在你电脑跑起来 效果展示: ​数据集在下载的文件夹:yolov5-5.0\…

2024寒假集训营第四场 I回头 -- 题解 (带路径修改的Dijkstra)

目录 回头: 题目大意: 思路解析: 代码实现: 回头: 题目大意: 给你一个n个点m条边的带权有向图,你现在需要从第一个点走到第n个点,求最短路径,当无解时输出-1. 值得注意的…

CRF算法(Conditional Random Fields)揭秘

CRF基本介绍 在机器学习中,建模线性序列结构的方法,除了HMM算法,另一个重要的模型就是CRF。HMM为了降低模型复杂性,对观测变量做了独立假设(即隐状态之间有相关性,而观测变量之间没有相关性),这在某种程度…

单机取证-信息安全管理与评估-2022年国赛真题-环境+wp

🍬 博主介绍 博主介绍:大家好,我是 Mikey ,很高兴认识大家~ 主攻:【应急响应】 【python】 【数字取证】【单机取证】【流量分析】【MISC】 🎉点赞➕评论➕收藏 == 养成习惯(一键三连)😋 🎉欢迎关注💗一起学习👍一起讨论⭐️一起进步 作者水平有限,欢迎各…

HuggingFists系统功能介绍(2)--数据源账号

数据源 再次,我们进入“数据源”管理模块。该模块用于管理我们在进行数据处理或分析时所需要的所有数据源。在定义任何的数据流程读写工作之前,必须先通过数据源管理模块创建出对应的数据源。数据源可以是我们需要进行数据处理时,原始数据所在…