倒排索引原理及其应用

一:前言

在操作数据库时,使用索引查找数据一般都是最有效率。但是,当开发一个大型项目时,比如说搜索引擎,操作的数据很多,有很多的用户进行检索时。数据库系统响应结果的速度就很慢了。
因此,在搜索引擎中,或者是对海量数据的操作,我们就要换掉传统的正向索引(Forward Index)(按照顺序依次一个个检索数据源),要使用一种叫倒排索引的技术来检索数据。

二:引言

1.概念解析:
倒排索引(Inverted Index),笔者和大家一样,在一开始时,以为它就是正向索引的反义词,操作应该就是正向索引反过来,倒序检索。
其实啊,有可能是因为翻译有点渣,直接根据Invert 有颠倒的意思意译,然后大家都这么用了。其实,在理解了其核心思想之后。
称为反向索引更为合理。

2.原理:
关键词------>文档的映射

3.应用:
首先,服务器端创建倒排索引
①创建文档列表:将所有的原始数据源进行编号。记录下文档编号以及文档内容,形成文档列表。
②创建倒排索引列表:将文档数据进行分词,会得到很多的词条。对词条进行编号,以词条创建索引。记录下词条编号、词条、词条所在文档编号到列表中,形成了倒排索引列表
词条所在列表就是倒排列表,也称反向列表;词条就是倒排索引,也称反向索引

然后,客户端用户搜索
①分词操作:服务器端会对用户输入的数据进行分词,得到要搜索的所有词条。
②匹配列表:分词得到的词条就是倒排索引,根据这些词条在倒排索引列表中找到对应文档编号。
③找到文档:根据得到的文档编号到文档列表中查找文档内容。

最后,输出检索结果。

三:尾言

①.倒排索引称之为反向索引更好。

②.正排索引就是通过文档找关键词。

③.倒排索引就是通过词条查找文档。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值