首页 > 其他分享 >什么是倒排索引

什么是倒排索引

时间:2023-12-04 22:13:33浏览次数:38  
标签:... 词汇 倒排 什么 索引 文档 正排

前言

上周四被面试官问到了倒排索引,虽用过 ES,但不知道这玩意儿说不过去啊。

倒排索引(Inverted Index)是一种用于快速查找文档或文档集合中包含特定词汇的数据结构。与传统的正排索引(Forward Index)不同,倒排索引是通过词汇表(词汇-文档关系表)来构建的。

在倒排索引中,每个词汇都会映射到包含该词汇的文档列表。当需要查找包含特定词汇的文档时,只需直接查询倒排索引,而不需要遍历整个文档集合。

基本原理:

  1. 收集文档:首先,需要收集要建立索引的文档,这可以是文本文档、网页、数据库记录等。
  2. 分词:对每个文档进行分词,将文档中的文本切分成词汇。这个过程通常包括去除停用词(常见但无实际意义的词汇)等预处理步骤。
  3. 建立词汇表:建一个词汇表,其中包含所有文档中出现过的词汇。这个词汇表可以看作是一个映射,将每个词汇与包含该词汇的文档列表关联起来。
  4. 构建倒排索引:对每个词汇,创建一个倒排列表(Inverted List),记录包含该词汇的文档的位置或标识。倒排列表通常按照文档的频率或其他相关信息进行排序。
  5. 查询:当需要查询包含特定词汇的文档时,直接查找倒排索引,找到包含该词汇的文档列表。这使得检索效率非常高效。

实际示例(结合正排索引)

正排索引:

假设有一本书,这本书有一个正排索引。正排索引记录了这本书的每一页的内容以及对应的页码。我们可以根据页码迅速找到书中的任意一页。

页码 内容
1 书的封面和版权信息
2 序言
3 第一章的内容
4 第一章的继续
... ...
200 最后一章的内容
201 附录

倒排索引:

然后,假设按照内容中的词汇,建立倒排索引,记录每个词出现在这本书的哪些页。

词汇 出现的书籍和页码
第一章 页3, 页4, ...
最后 页200, ...
内容 页3, 页200...
... ...

参考文献

[1] 倒排索引-维基百科

标签:...,词汇,倒排,什么,索引,文档,正排
From: https://www.cnblogs.com/lweiis/p/17876120.html

相关文章

  • “影响力”经济:抖音为什么更值得商家、达人长期深耕?
    文|新熔财经作者|叶一城数亿的活跃用户,简单而自然的切入方式,快速、高频的执行效率,让抖音对电商界的冲击无可阻挡。这背后,流量玩法登峰造极,是很多人的直接观感。但实际上,更底层、更本质,是“影响力”经济正在发挥作用。电商是抖音“影响力”经济的表现之一,而不是流量的产物。这种属性,决......
  • 为什么上个系统就这么难
     为什么说上个系统好很有难度呢?它的难度又在哪里呢?下面是笔者摸索出了一套模型进行分享,大家一起往下看看了解更多。 为什么上个系统就这么难© 由ZAKER科技提供看这标题,经历过的同学都挺深有感触的吧。确实是上个系统就是这么难,是真得不容易!做了这么多系统,我自......
  • 为什么 Android 和 iOS 下面代码运行结果不同?
    Android和iOS是两个不同的操作系统,它们在底层实现和功能上存在差异。这些差异可能导致相同的代码在Android和iOS上产生不同的运行结果。以下是一些可能引起差异的因素:硬件和体系结构:Android和iOS运行在不同的硬件上,每种硬件都有自己的特性和限制。这些差异可能会影响代码的运行结果......
  • openGauss学习笔记-141 openGauss 数据库运维-例行维护-例行重建索引
    openGauss学习笔记-141openGauss数据库运维-例行维护-例行重建索引141.1背景信息数据库经过多次删除操作后,索引页面上的索引键将被删除,造成索引膨胀。例行重建索引,可有效的提高查询效率。数据库支持的索引类型为B-tree索引,例行重建索引可有效的提高查询效率。如果数据发生......
  • flutter帮我们做了什么?(鸿蒙是flutter吗)
    Flutter和鸿蒙(HarmonyOS)是两个不同的移动应用开发框架,它们有各自的特点和用途。Flutter:UI框架:Flutter是由Google开发的UI工具包,用于在移动、Web和桌面平台上构建美观、高性能的应用。跨平台:Flutter允许开发者使用相同的代码库构建iOS、Android、Web和桌面应用程序,实现......
  • 为什么要做ERP集成?ERP系统如何与其他业务应用程序集成
    什么是ERP集成?ERP集成是指将企业资源计划(Enterprise Resource Planning,ERP)系统与其他软件应用或业务流程进行无缝连接和整合的过程。ERP系统通常涵盖企业内部的各种功能模块,如财务、供应链管理、生产制造、销售和人力资源等。ETL集成能够将这些功能模块与其他业务系统(如客户关系......
  • 揭秘!为什么今年大厂纷纷裁员?真相让人震惊!
    前言最近我在新闻上看到各行各业都在裁员,包括百度、腾讯、阿里、美团、字节跳动等等在内的许多大厂都在裁员。近期,一波裁员席卷大厂,引起了广泛关注。为何今年大厂纷纷裁员?背后究竟隐藏着怎样的原因?今天,我们将揭开这个谜底,让你了解真相!精彩内容即刻呈现!近年来,互联网和科技行业飞速发......
  • 数据可视化的私有化部署成本为什么总是高?如何解决?
    尽管已经接手过不少可视化项目,但昂贵的私有化部署费用还是一次又一次“再创新高”。可以预见,数据可视化软件私有化部署所带来的高昂成本,将是许多企业面临的问题。根据我的观察,这种高昂的成本主要有以下几个原因。首先,企业通常需要定制化的数据可视化方案,以满足特定业务需求。私......
  • 做算力的浪潮信息为什么还要再卷大模型?
    避免重复造轮子,前提是轮子已经造得很好。 大模型有多卷?现在国内已经有180个以上生成式大模型,科技大厂、互联网大厂纷纷入局,既有百度、浪潮信息、阿里、腾讯等一众巨头,也有专攻AI的讯飞、商汤等垂直领域小巨头,以及“日日新”的创业企业。今天A厂商发布大模型,各种参数对比下来......
  • 视频集中存储/智能分析融合云平台EasyCVR平台接入rtsp,突然断流是什么原因?
    安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等,以及支持厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等。平台既具备传统安防视频监控的能力,也具备接入AI智能分析的......