整个网页内容的哈希是如何工作的?

5

我有时在信息检索、搜索引擎、网络爬虫等领域听到过,我们可以通过对页面内容进行哈希来检测重复页面。什么样的哈希函数能够哈希整个网页(至少包含2页),使得2个副本具有相同的哈希输出值?典型哈希输出值的大小是多少?

这种哈希函数能否将存在轻微拼写错误等相似的网页放入同一个桶中?

谢谢。

2个回答

9
任何哈希函数,只要给定两个输入 xy 使得 x = y,都会根据定义为它们返回相同的值。但是如果您想要正确地进行此类重复检测,则需要:

  • 一个密码学强度的哈希函数,例如 MD5、SHA-1 或 SHA-512,它几乎永远不会将两个不同的页面映射到相同的值,因此您可以假设相等的哈希值意味着相等的输入,或者
  • 一个 局部敏感哈希函数,如果您想要检测近似重复。

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


1

我认为你正在寻找模糊哈希,其中仅对文档的部分进行哈希处理,而不是一次性对整个文档进行哈希处理。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接