给定数十亿个URL,如何确定重复内容

时间:2015-03-17 07:38:29

标签: web-services web

我在编程面试中被问到这个问题。我在下面详细描述了这个问题。这是一个开放式的问题。

鉴于数十亿个网址(深层链接),如何对哪些网址指向重复内容进行分类。问题进一步扩展到发现在重复页面的情况下,哪些是真实的。这是第一部分。 我的方法(有效假设)是在域的基础上对它们进行分类,然后匹配同一桶中URL的内容。

在第二部分中,采访者缩小了问题,说明: 仅给出两个URL,URL1是关于名人的维基页面(例如:Brad Pitt),URL2包含许多名人的信息,包括Brad Pitt。 我们如何识别哪一个是真实的哪个是重复的? 我的回答是基于他们的引用来比较两页。

面试官让我从头开始构建答案,并希望我假设我们没有关于URL上重复内容的任何先前信息。 由于它是一个开放式问题,任何领导都会证明是有帮助的。

1 个答案:

答案 0 :(得分:1)

您可能会发现本文有用:" Finding Near-Duplicate Web Pages: A Large-Scale Evaluation of Algorithms"由Monika Henzinger在谷歌,因为这个问题吸引了大量的研究。来自论文:

  

一个天真的解决方案是将所有对与文档进行比较。既然如此   Manber [11]和Heintze [9]在大型数据集上过于昂贵   提出了用于检测近似重复文档的第一算法   减少了比较次数。两种算法都适用于序列   相邻的人物。布林等人。 1开始使用单词序列   检测侵犯版权。 Shivakumar和Garcia-Molina [13,14]   继续这项研究,并专注于将其扩展到数千兆字节   数据库[15]。 Broder等人。 [3]也使用了单词序列   有效地找到几乎重复的网页。后来,Charikar [4]   开发了一种基于随机投影的方法   文献。最近Hoad和Zobel [10]开发并比较了方法   用于识别版本化和抄袭的文档。

换句话说,这是一个复杂的问题,各种各样的解决方案取得了不同的成功,而不是具有“正确”的解决方案。回答。大多数答案涉及检查单词或字符序列。