首页 > 其他分享 >倒排索引

倒排索引

时间:2024-03-27 11:01:24浏览次数:18  
标签:排列 倒排 索引 文档 聊天 词项

  倒排索引主要由两部分组成:

      1)单词词典,即每个文档进行分词后的词项在去重后组成的集合;

      2)倒排文件 是倒排列表持久化存储的结果,通常保存在磁盘等存储设备上。倒排列表记录了词项所在文档的文档列表、单词频率等信息。


    我们以4个文档为例:

文档编号 文档内容
 1  作为一款领先的聊天助手,ChatGPT 凭借其卓越的 AI技术为用户带来无与伦比的智能交流体验
 2  聊天智能机器人 ChatGPT运用了尖端的人工智能技术,为用户提供了流畅自然的对话体验
 3  ChalGPT 以其出色的 AI性能在聊天机器人领域脱颖而出,提供了一种全新的智能对话方式
 4  ChalGPT,一款采用先进人工智能技术打造的聊天机器人,具备提供高质量智能对话服务的能力

    下面是倒排索引表:

词项序号 词项 倒排列表(文档编号:词频)
1 chatgpt (1:1)、(2:1)、(3:1)、(4:1)
2 (1:1)、(3:1)、(4:1)
3 一款 (1:1)、(4:1)
4 (1:1)、(2:1)、(3:1)、(4:1)

    

    实际的倒排列表存储的信息,要比上面复杂。倒排列表存储的信息,还会包括词项在文档中出现的位置等信息,以方便实现复杂检索。

    有了倒排列表,当检索“chatgpt”时,就无须对逐个文档进行扫描,而可以借助倒排索引锁定文档ID为1、2、3、4的文档,达到快速响应的目的。

 

参考资源:一本书讲透 Elasticsearch

 

标签:排列,倒排,索引,文档,聊天,词项
From: https://www.cnblogs.com/MrHSR/p/18098403

相关文章

  • laravel 容器的底层原理&聚簇索引和非聚簇索引的区别&面试心得
    1.laravel容器的底层原理Laravel容器的实现原理是基于PHP的反射机制和依赖注入(DependencyInjection)的思想。在Laravel中,容器(Container)是一个用于解决类之间依赖关系的工具。它负责实例化对象,并处理对象之间的依赖关系。容器的实现原理主要包括以下几个步骤:注册绑定:通过容器......
  • MySQL数据库索引失效的常见情况
    MySQL数据库索引失效的常见情况01索引失效负面后果在MySQL数据库中,当索引失效时,可能会导致以下后果:全表扫描:如果索引失效,MySQL可能会选择执行全表扫描来检索数据,这将导致性能下降,特别是对于大型数据表而言。低效的查询计划:索引失效可能导致MySQL优化器选择不合适......
  • Flink Native Kubernetes实战,索引为什么能提供查询性能
    关于FlinkNativeKubernetes先对比官方的1.9和1.10版本文档,如下图和红框和蓝框所示,可见FlinkNativeKubernetes是1.10版本才有的新功能:看看NativeKubernetes是如何运行的,如下图,创建sessioncluster的命令来自Flink安装包:更有趣的是,提交任务的命令也来自Flink安装包,......
  • 目前常见的搜索引擎有哪些?
    常见的搜索引擎可以分为两类:全网搜索类和平台内搜索。全网搜索类是指可以在互联网范围内进行搜索的引擎,它们提供了广泛的搜索结果,包括网页、图片、视频、新闻等各种类型的内容。以下是一些常见的全网搜索引擎:百度:作为国内最大的搜索引擎之一,百度在亚洲地区占有重要地位。它......
  • 海量数据处理项目-账号微服务和流量包数据库表+索引规范(下)
    海量数据处理项目-账号微服务和流量包数据库表+索引规范(下)第2集账号微服务和流量包数据库表+索引规范讲解《下》简介:账号微服务和流量包数据库表+索引规范讲解账号和流量包的关系:一对多traffic流量包表思考点海量数据下每天免费次数怎么更新?海量数据付费流量套餐包每天......
  • MySQL索引18连问,谁能顶住
    前言过完这个节,就要进入金银季,准备了18道MySQL索引题,一定用得上。作者:感谢每一个支持:github1.索引是什么索引是一种数据结构,用来帮助提升查询和检索数据速度。可以理解为一本书的目录,帮助定位数据位置。索引是一个文件,它要占用物理空间。2.MySQL索引有哪些......
  • MYSQL多表设计,多表查询,事务,索引
    目录一多表设计1.1一对多1.1.1 外键约束1.2一对一1.3多对多二多表查询2.1数据准备:2.2笛卡儿积:2.3分类2.3.1内连接2.3.2外连接 三子查询 3.1标量子查询3.2列子查询3.3行子查询3.4表子查询四事务4.1场景4.2语法 4.3事务特性 五索引5.1索引概述 5......
  • 用生动的语言讲mysql索引机制与B+树形象化理解
    索引,index,是什么呢,假如说,没有索引,比如你要点名,你就得挨个问,你是不是某某某,效率奇低,但是,当他们有了独一无二的号数或者名字,就可以免于追寻,一觅即中,这就是索引存在的意义但是,凡事有利有弊,索引增加了查询的效率,但是却降低了增删改的效率,比如说,班级加入一名新同学,你还要给他一个号数,......
  • MySQL索引介绍
    MySQL索引介绍01MySQL的索引是什么?在关系数据库中,索引是一种单独的、物理的数对数据库表中一列或多列的值进行排序的一种存储结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。我们都知道,MySQL需要支持持久化,它把数据存储......
  • mysql索引设计的注意事项(大量示例,收藏再看)
    mysql索引设计的注意事项(大量示例,收藏再看) 开发技术  开发技术 2019-03-29 8362次浏览目录一、索引的重要性二、执行计划上的重要关注点(1).全表扫描,检索行数(2).key,usingindex(覆盖索引)(3).通过key_len确定究竟使用了复合索引的几个索引字段(4)orderby和U......