百度为什么不能实时收录并索引最新内容?

 

原文:http://www.paopaoniu.com/html/bai-du-wei-shi-me-bu-neng-shi-shi-shou-lu-bing-suo-yin-zui-xin-nei-rong-2596.html

 

 

大凡站长都会有这样一个实际感受和经验,即对有sitemap(站点索引地图)的网站,Google很快就能将新内容索引,甚至快到几分钟!

而Baidu根本不可能做到这点。就算是大网站、更新快的网站,也要一段时间。具体没有做过实验,但根本无法和Google的几分钟内容就被索引相提并论!

为什么会这样?

今天我研究Sphinx搜索引擎的时候,算是找到了点答案……

搜索引擎Sphinx研究侧记

在研究Sphinx时,采用4百万级的数据做测试(http://www.17wen.com 一起问),生成1400MB文档,总耗时382秒(6分半,速度还算不错)

虽然速度还行,但也不能增加点新内容就重建索引,所以Sphinx提供了增量索引的模式,即可将新增加的内容单独索引,然后增量索引和主索引再合并……

但即便是这个模式,在增加1个增量所有的情况下,也需要120秒进行合并索引!!

所以最后的策略是,每天凌晨4点更新一次增量索引,每周重新建立主索引!这样避免重复建立索引。但很明显,这样导致的结果就是,每天都新内容,必须是到下一天(凌晨4点后)才能被搜索到!

Google的文件体系

Google一直在宣传他的分布式文件系统,它是搜索成千上万台分布式机器。虽然我不得知Google具体的算法,但可以推测出,它的索引不是一个或者少量的分布式,而是基本并存的海量计算机上的串联!所以很容易达到当台机器上的实时(或准实时更新),也就是我们可以看到的那种几分钟就索引新内容的效果!

Baidu会是怎么样的一个系统?

显然,Baidu除了云里雾里的彰显它的分词技术外,很少详细介绍他们的搜索技术!

虽然不知道内幕,但我猜测,它肯定不是海量小索引的串联,而是几个大容量索引的群集。这种导致的结果就是,不容易实时更新,每次更新会耗费大量时间和文件操作。

所以不难推测,Baidu很难像Google那样实时更新索引。

当然,以上只是从外部表现来进行分析和推测,没有实际内部技术依据!所以,虽然不能全部相信,但也不可不信。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值