我想知道一些大型搜索引擎的重新抓取策略是如何工作的。例如让我们考虑谷歌。我们知道谷歌正在使用动态间隔来重新抓取每个网站。假设根据谷歌动态间隔,每 10 分钟应该重新抓取 10 万个站点。所以这 100000 个网站的爬取过程应该在 10 分钟内完成。大概有两种可能的情况:
1) google bot 将获取每个站点的第一页,然后生成该页面中的 URL 列表。对于每个 URL,它会检查该 URL 之前是否被获取。如果它是新的,它将获取新页面。此过程将一直持续到爬网结束或特定深度阈值。
2) google bot 将再次获取每个页面(无论它是否已更新)
假设 google 使用第一种策略,那么具有相同 url 但内容更新的页面将如何被抓取和索引?假设谷歌使用第二个,那么它如何在不到 10 分钟的时间内重新抓取所有这些页面?其他网页呢?可能有超过 60 亿个网页可用,如何及时重新抓取所有这些网页?我真的认为在 hadoop 基础架构上使用一些新技术(如 nutch 和 solr)是不可能的。
问候。