如何对网页的整个内容进行哈希处理?

xyz*_*xyz 5 algorithm indexing hash search-engine data-structures

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

这样的哈希函数是否能够在同一个桶中放置两个类似的网页,其中有轻微的错别字等?

谢谢,

Fre*_*Foo 8

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

  • 一个密码强的哈希函数,如MD5,SHA-1或SHA-512,它实际上永远不会将两个不同的页面映射到相同的值,因此您可以假设相等的哈希值意味着相等的输入,或者
  • 一个局部敏感哈希函数,如果你想探测近重复.

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