【问题标题】:How does hashing of entire content of a web page work?对网页的全部内容进行哈希处理是如何工作的?
【发布时间】:2011-08-16 00:13:25
【问题描述】:

我有时在信息检索、搜索引擎、爬虫等环境中听说我们可以通过散列页面内容来检测重复页面。什么样的哈希函数能够对整个网页(至少有 2 个寻呼机)进行哈希处理,从而使 2 个副本具有相同的哈希输出值?典型的哈希输出值的大小是多少?

这样的哈希函数是否能够将 2 个类似的网页与轻微的拼写错误等放在同一个桶中?

谢谢,

【问题讨论】:

    标签: algorithm data-structures hash indexing search-engine


    【解决方案1】:

    我认为您正在寻找 模糊散列,其中仅对文档的部分而不是整个文档进行一次散列。

    【讨论】:

      【解决方案2】:

      任意散列函数,给定两个输入 xy s.t. x = y,根据定义将为它们返回相同的值。但是,如果您想正确地进行这种重复检测,您将需要:

      • 一种强大的加密哈希函数,例如 MD5、SHA-1 或 SHA-512,它实际上永远不会将两个不同的页面映射到相同的值,因此您可以假设相同的哈希值意味着相同的输入,或者
      • locality sensitive hash function,如果您想检测近似重复项。

      使用哪一个真正取决于您的需求;加密哈希在近似重复检测中没有用,因为它们旨在将近似重复映射到非常不同的值。

      【讨论】:

        猜你喜欢
        • 2018-06-18
        • 2011-05-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多