zoukankan      html  css  js  c++  java
  • 搜索引擎的基础-倒排索引

      昨天看hadoop视频的时候里面提到了google搜索引擎里使用的倒排索引技术,当时没有理解,今天翻阅了一些文档终于觉得拨云见日了,下面从用户在谷歌首页进行网页搜索这个角度来说明。

      首先上一张图:

      

      简单的来说,当用户在搜索框输入一个关键词点击查询按钮后,后台程序首先会计算出所查询词的哈希值,然后去哈希表里寻找匹配项,哈希表的每一项通过指针指向一个哈希冲突表,哈希冲突表里存放着具有相同哈希值的单词。也就是说,搜索的第一步获取一个和用户搜索关键词相同哈希值的单词列表(冲突表)。然后会用这个冲突表里的单词和用户搜索词一一比较,找到完全匹配的单词。而冲突表中的每个单词对应一个倒排列表,如下图:

      

      这是一个最简单的倒排列表,每个单词对应唯一的单词ID,每个文档(即用户搜索后返回的网页)对应唯一的DocId,倒排列表中记录着每一个单词在哪些文档中出现过。比如跳槽这个单词,在编号为1,4的文档中出现过,那么就返回编号为1,4的两个网页作为搜索结果展示在页面上。

  • 相关阅读:
    URL参数加密专用
    错误
    js学习类
    .net第一个服务器控件
    javascript中的call()和apply()方法 原创实例
    FIS使用技巧
    自定义参数表单URL参数处理
    避免编写解决"不存在"问题的代码
    从 1.1.0 升级到 1.2.0 的注意事项
    jquery常用插件,应用解析
  • 原文地址:https://www.cnblogs.com/sheeva/p/4756886.html
Copyright © 2011-2022 走看看