当前位置: 首页 > news >正文

Elasticsearch的索引

正向索引和倒排索引

  1. 什么是正向索引?

    传统的数据库采用正向索引,如MySQL将表中的id创建索引,正向索引在进行不是id为索引进行搜索的时候,会逐条进行查询,比方说

    上图的表格,数据库进行逐条查询,当扫描到搜索字的时候会将该行存入结果集当中,如果没有就会进行丢弃。

    倒排索引
    1. elasticsearch采用的就是倒排索引它将要搜索的数据进行划分:

      • 文档(document):每条数据就是一个文档

      • 词条(term):文档按照语义分成的词语

    2. 如上表,当用户用倒排索引进行搜索的时候,会划分一个新的索引表,将原来的数据当中的东西,通过关键字进行划分,当有相同的时候会在文档的后面增加上索引,当有新的时候会创建出来一行新的数据,依此类推。

当用户搜索的时候,如上图比方说小米和手机,会先将搜索词进行语义的划分,然后在词条列表当中进行查询,将包含这两个词条的文档id都进行列举,再根据文档id进行查询,最后根据匹配度对其进行排序,存到结果集当中。

  1. 总结:

    什么是正向索引?

    • 基于文档id创建索引。查询词条时必须先找到文档,而后判断是否包 含词条

    什么是倒排索引?

    • 对文档内容分词,对词条创建索引,并记录词条所在文档的信息。查询时先根据词条查询到文档id,而后获取到文档

相关文章:

  • VMware启动不支持虚拟化的解决方案!
  • #Vue3篇:透传 Attributes---$attrs插槽propemit
  • 密码是什么(三):多表代替密码
  • 1991-2024年上市公司个股换手率数据
  • C++模版初阶
  • 存储性能委员会(SPC)
  • 管理学院权限管理系统开发总结
  • 产品数字化与三维可视化:为工业领域打造高效服务新引擎
  • Python自动化机器学习平台库之mindsdb使用详解
  • vue的<router-link>的to里面的query和params的区别
  • JAVA后端开发——多租户
  • 力扣 1456. 定长子串中元音的最大数目 的多解
  • 【电力电子】基于STM32F103C8T6单片机双极性SPWM逆变板
  • 一般视频剪辑的硬盘配置是什么
  • 什么时候用GraphRAG?RAG VS GraphRAG综合分析
  • 【西门子杯工业嵌入式-7-OLED】
  • 第二章 感知机
  • 火山 RTC 引擎10 ----远端视频 转网易视频格式
  • Houdini POP入门学习07 - 分组
  • 算法岗面试经验分享-大模型篇
  • 济南网站建设泉诺/西安seo管理
  • 做推广的装修网站/seo查询排名系统
  • 做网站济宁/衡阳seo优化推荐
  • 专用主机网站建设/如何进行网络推广
  • 北京高端网站建设制作设计/成都推广团队
  • 购物网站建设公司/40个免费靠谱网站