zoukankan      html  css  js  c++  java
  • 《searching the web》学习笔记

    第一次读搜索引擎方面的文章,读的似懂非懂,先记录下来,以后再细看。


    摘要: 本文简要概括当前搜索引擎的设计。介绍一般的网络搜索引擎结构(architecture)后依次详细介绍搜索引擎每个部分的主要技术,包括crawling, 网页存储(local web page storage),indexing,以及如何利用网页间的链接特性。

    第一节:介绍

             面对海量的互联网网页和信息,输入关键词(query)得到希望的结果是互联网用户所需要的,这就需要设计网络搜索引擎。一般的搜索引擎使用信息检索(IR, Information Retrieval)技术,但是他是对应于规模小的,连续(coherent)的集合的搜索技术,对于互联网并不完全适用,为此需要引入新的技术。

             互联网的特点:(1) 海量数据、变化快、规模不断增大;(2)分布存储;(3) 网页间有超链接(蝴蝶结结构) 

    • Crawlers的主要任务是从初始网页集出发遍历全部的网页(理论上的全部),直到资源耗尽。Crawl时根据访问更多的站点,或者是访问特定的站点等目标而有不同的策略。
    • Indexer 的主要任务是抽取每个页面的全部字(word),并记录字出现的URL和在页面中的位置,还需要根据文档、结构、功能等创建不同的索引(index)。
    • Query Engine 的主要任务是接收和补全用户的查询(query),它依赖于indexrepository

     

    第二节:Crawling web pages 网页爬虫

    2.1. Page selection

    •  What is importance of page?   Interest Driven / Popularity Driven / Location Driven
    •  How a crawler operates?    Crawl & Stop / Crawl & Stop with threshold
    •  How a crawler guesses good pages to visit? (choose the next URLs to visit)   Reference to 1.1.

    2.2. Page refresh (如何更新页面)

             Uniform refresh policy > Proportional refresh policy

             Should consider freshness and age

    • Fresh strategy: 向下的抛物线模型
    • Open issues: crawlers与网站交互 & 并行crawl & crawl如何获取需要填表单或取得数据

     

    第三节:storage

    3.1. Challenges: 需要考虑的因素

    •  Scalability: 考虑大信息量
    •  Dual access mode: Random access for end-user, Streaming access for indexer and analysis modules.
    •  Large bulk updates: 顾名思义
    •  Obsolete pages: How to detect and remove obsolete pages.

    3.2. Design a distributed web repository: 需要考虑节点的结构,节点间的通信,及更新方式

    •  Page distribution policy: uniform/hash
    •  Physical page organization methods
    •  Update strategy: (Batch mode + shadowing)/ (steady mode + in place)

    3.3. Open issues:

    •  Indexer不仅仅通过网址,也考虑含的图片、视频等信息
    •  Streaming order

     

    第四节:indexing

             Indexing: link index | text index | utility index | etc.

    4.1. Structure of an inverted index

             The inverted list for a term is a sorted list of locations where the term appears in the collections, in which location means page identifier + position + payload field(occurrences+).

    4.2. Challenges

             Web scale: 创建和重建过程需要用的资源和时间

             存储结构与结果表现的平衡.

    4.3. Index partitioning

             Local inverted file: 每个节点分管一部分互不相交的pages

             Global inverted file: 每个节点分管一部分terms

    4.4. WebBase Text-indexing system

             Distributors + indexers + query servers

             两种技巧减少系统开销:

             Avoid explicit I/O for statistics: local to statisticians in memory

             Local aggregation: aggregation in nodes à statisticians

     

    第五节: Ranking and Link Analysis

             网页搜索和普通文本搜索的区别: 网页搜索数据量大、 网页间关联。本节中介绍如何利用网页间关系给出更准确的搜索结果。

    5.1. PageRank

             Citation ranking: 被指向的次数(越多说明越重要)

             PageRank: citation rank的基础上还要考虑指向该页面的页面本身的重要程度(递归)。求解rank可以归结为求一个矩阵的特征值1的特征向量,也可以迭代求解。

             上面的PageRank是以全部pages组成强连通图为前提的,在海量的pages中这个条件常常不满足,如可能会出现等级沉没(rank sink)和等级泄露(rank leak)发生,此时迭代式要做相应的变化。

             实践中需要解决的问题:迭代要收敛 & 收敛要快。(排序结果会更早的出现)

    5.2. HITS  (Hypertext Induced Topic Search)

             计算每个页面的全局等级(global rank,根据查询内容出的等级(query dependent ranking techinique),等级包含authority + hub score.

             Authority表述的是与query相关的程度的page,而hub score可能指向更多authoritiespage。交互迭代的过程。

             authorityhub score可以归结为求一个矩阵和其转置矩阵的特征向量问题,也可以用迭代法。

    5.3. Others

             Identifying communities + Finding related pages + Classification and Resource Compilation

    5.4. Future Directions

    •  如何利用其他信息,如查询记录,浏览记录等;
    •  开发更健全的文档分析技术,并利用到web中这些有链接的文档查询中

     

    第六节:总结

             根据用户的极少的搜索关键词,从海量的网页中,快速准确地返回查询结果。

             执行步骤:Crawlers分析网页,Query Engine返回相关网页,Ranking Module对返回结果排序。

     

     


    名词解释:

    1.       Crawls:爬虫跟踪pages,返回URLs,并把跟踪到的pages发送到page repository,直到资源耗尽。

    有些爬虫可能是访问尽可能多的sites,而不去考虑隐藏很深的pages

    有些爬虫可能是集中访问同一个域中的pages,如government

    2.       Crawl control model:确定哪些URLs继续跟踪,哪些可以忽略。

    3.       Indexer model: 抓取页面中所有文字,并记录每个文字出现的页面,形成lookup table.

    还要生成结构索引。

    数据量&变化速度&页面的相关links

    4.       Collection analysis module

    5.       Utility index: collection analysis module 创建,可以由网页包含的图片个数、宽度这些信息检索pages

    6.       Query engine:接受和补全用户的query

    7.       inverse document frequency(IDF):逆向文件频率,是词语i普遍重要性的度量。某一特定词语的IDF,可以由文件总数除以包含该词语的文件数目,再将得到的商取对数得到。

    term frequency(TF): 词频,指一个词语i在文件j中出现的次数。通常被正规化,以防止它偏向长的文件。

    IS(P)[ij]: TF[ij]*IDF[i] Interest Driven

    参考 http://hi.baidu.com/sowhatliu/blog/item/aa0a8817d701b70fc93d6db6.html

    8.       Backlink count: 导入链接数,指向该链接的hyperlink数。

    IB(P): Popularity Driven

    IL(P): Location Driven

     

     


    翻译:

    Information Retrieval (IR):信息检索

    Coherent: 一致的

    Scalable: 可扩展的

    Updateable: 可更新的

    Discriminating ability: 辨别能力

    Poisson process: 泊松过程,一个累积随机事件发生次数的最基本的独立增量过程。

    Bow-tie: 蝴蝶结

    and vice versa: 反之亦然

    schematically: 大致、示意地、粗略地

    crawler:爬虫

    grist:谷物、有利的武器

    retrieve: 检索

    repository: 仓库,资源库

    coverage: 误差

    bias: 误差

    be biased to: 偏重于

    leave out: 忽略

    lookup table: 查找表

    pose a difficulty: 构成难题

    less common: 更鲜为人知的

    scenario: 方案

    hierarchy: 层次结构

    bibliometrics: 文献计量学

    threshold: 阀值,界点

    up-to-date:最新的          

    obsolete: 陈旧的、过时的

    analogous: 相似的

    fluctuation: 波动

    periodically: 周期性地

    scenario: 情景

    ad hoc: 特设、为此

    scalability: 可测量的

    dual: 双重的

    bulk: 大容量

    advantageous:有好处的

    batch-mode: 批处理方式

    on the downside: 从不利的方法讲

    space compaction:

    checksum: 校验和

    cyclic redundancy check: 循环冗余度校验

    give rise to: 导致、形成

    adjacency: 邻接物

    retrieve: 检索

    accommodate: 适应

    lexicon:字典

    resilience:恢复力

    tradeoff:折中、权衡

    facilitate: 协助、促进

    disseminate: 扩散、传播

    mutually: 互相地

    replication: 重复实验、重现

    throughput:吞吐量

    concurrently:并发地

    overhead: 系统开销

    adverse: 敌对的,相反的

    spamming: 非所要信息,垃圾邮件        /

    aperiodic: 非规则的

    rank sink: 等级沉没

    rank leak: 等级泄露

    decay: 衰减

    dictate: 规定

    gravitate: 倾向于

    scarecely: 几乎不

    exotic: 奇异的

    mundane:平凡的

    baipartite: 双向的

    trawl:拖网

    co-citation:共被引

    hustle: 急速活动

    heuristic: 启发式的,试探性的.

  • 相关阅读:
    iSCSI又称为IPSAN
    文档类型定义DTD
    HDU 2971 Tower
    HDU 1588 Gauss Fibonacci
    URAL 1005 Stone Pile
    URAL 1003 Parity
    URAL 1002 Phone Numbers
    URAL 1007 Code Words
    HDU 3306 Another kind of Fibonacci
    FZU 1683 纪念SlingShot
  • 原文地址:https://www.cnblogs.com/liyuxia713/p/2540721.html
Copyright © 2011-2022 走看看