Chinaunix首页 | 论坛 | 博客
  • 博客访问: 846909
  • 博文数量: 180
  • 博客积分: 10029
  • 博客等级: 上将
  • 技术积分: 2185
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-06 09:15
文章存档

2010年(133)

2009年(47)

我的朋友

分类: 项目管理

2009-11-20 20:29:34

  本文我将模块化地展示一个搜索引擎的结构: 个模块的组织和构成!!
 
0. 通用搜索引擎结构
 
  
  通用搜索引擎结构的说明:
  (1)网页抓取模块 : 从Internet上自动获取信息
  (2)预处理模块   : 文本分析和处理
  (3)索引模块     : 倒排索引的建立
  (4)检索模块    
           查询的分析     相似度的计算和排序(Ranking)    结果摘要
  (5)用户接口
 
   以下是Google的组成:
 
1. 引擎模块结构 (更简洁的表示)(Viso图)
                  
2. 搜索引擎的工作流程图:
                
3. 网页抓取模块的工作过程:
          
 
             网页抓取模块
 
  任务: 通过Web页面之间的链接关系从Web上自动获取页面信息,常常成为Robot, Spider,Crawler;
        通过抓取确保WWW有效资源的覆盖和及时更新;
  Crawler: 
        网页抓取,   网页解析提链,    输出 page && Link
  Crawler control:
        是抓取模块的核心;
        抓取控制、调度;
        广度、特殊化、反馈;
 
 网页采集的基本结构:
                  
 
 网页采集的运行过程: (处理流程图: 不太清晰啊! 以后重画!)
       
 
 网页搜索算法:
     网页间的连接显然是图,要遍历图的话我们首先想到的当然是广度优先算法和深度优先算法!
 实际中,考虑到深度优先的具体应用的制约, 搜索引擎使用的是广度优先算法!!
 广度优先 VS 深度优先 : 研究表明,广度优先方法得到的网页集合的重要性更好!
 
网站采集 VS 全局 URL 采集
   网站采集: 一个网站一个网站采集
   全局 URL 采集: 将所有 URL 放入一个 URL 池,从中使用某种策略进行选择;
   网站采集在支持应用方面的灵活性更大一些, 但是采集效率可能不如全局 URL 采集;
   通常的搜索引擎采用全局 URL 采集的方法。 
 
4. 网页采集的更新策略:
 
   A. 定期重采
      一段时间以后重新采集所有的网页,全部采完以后替换原来的网页;
      定期重采非常简单,但是浪费带宽,周期也长!
 
   B. 增量采集
      只按照某种策略采集那些可能新增、变化的网页, 并删除那些已经不存在的网页;
      增量采集可以节省带宽,网页更新周期相对较短,但是系统的复杂性增大!!
  
 
阅读(2435) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~