论提高搜索引擎效率和精度的关键技术(3)
作者:佚名; 更新时间:2014-12-05
6 数据库中增量式信息更新方法
增量式信息更新方法的基本思路是:在WWW中包含大量的文档资源,这些资源的变化周期是不一致的:有的变化无常,有的十分稳定。因此应该以文档的变化周期作为进行有效性验证的依据,在每一次索引信息库的更新过程中,只对那些最可能发生变化的(部分)文档进行验证。
一个文档的变化周期就是它相邻的两次变化之间的时间间隔。
值得注意的是,一个文档的变化周期可能是不固定的。在某个时期内,它可能变化得比较频繁,而在另一个时期内,它则可能比较稳定。一般地说,无法准确地计算一个文档变化周期,只能根据文档在一个时期内的变化情况来估算它的变化周期。下面给出一个启发式规则,作为估算文档变化周期的一个依据。
如果在一个时间间隔内一个文档的内容没有发生变化,那么可以认为它处在一个稳定期,在下一个相同的时间间隔内它也很可能不会发生变化。反之,如果在一个时间间隔内一个文档的内容发生了变化,那么在这个时间间隔内它就很可能发生了多次变化。
从实用的角度出发,通常以索引信息系统的信息更新周期作为度量文档变化周期的时间单位,也就是说,一个文档变化周期的取值只能是系统信息更新周期的倍数。给出如下的增量式信息更新算法:
/*假设当前正在进行的是第k(k≥1)次信息更新过程。*/
Begin
While(索引信息库中还有文档信息的有效性没有验证时){任取一个未验证的文档作为当前文档;
If(当前文档的变化周期f是k的因子)Then
{验证当前文档的有效性;
If(当前文档已不能被访问)Then
从索引信息库中删除对应的记录
If(当前文档已经发生了变化)Then
{把当前文档URL加入到目标列表;
把当前文档的变化周期修改为Max(1,f/2);
}
Else
把当前文档的变化周期修改为2f;
}
以目标列表中的URL作为浏览起点,启动机器人开始新一轮信息收集工作;
End[5]
当一个文档第一次进入系统时,它的变化周期被假定为1。也就是说,假定它会在系统更新周期内发生变化。随着信息更新过程的不断进行,将根据文档的实际变化情况,不断地调整它们的变化周期。如果一个文档的索引信息在一次信息更新过程需要予以更新,也就是说,文档的内容发生了变化,我们认为它很可能会在近期内再发生变化,因此,把它的变化周期缩短为原来的一半。如果在预计的变化周期内文档没有改变,那么就认为它在近期是比较稳定的,因此把它的变化周期扩展为原来的两倍。
增量式信息更新方法可以极大地减轻搜索引擎进行索引信息库维护的负担。由于我们以系统信息更新周期作为度量文档变化周期的基本时间单位,而且文档变化周期只能是系统信息更新周期的2的幂次,因此可能会影响少量文档索引信息的时效性。但是,考虑到WWW庞大的规模,从整体上看,增量式信息更新方法是一个能够提高搜索引擎工作效率的有效手段。
总的说来,在搜索引擎的发展过程中,虽然出现了上述众多的技术来提高引擎工作效率,但不管是那种技术,短期内,要完全使搜索引擎在实现技术上都超过人脑仍然是难以达到的。因此,人脑和电脑的分工和配合依然会是产生一个高质量搜索引擎的最好保证,这也是今后搜索引擎的发展所必须要注意的重要事情。
参考文献:
[1] 凤元杰,刘正春,王坚毅.搜索引擎主要性能评价指标体系研究[J].情报学报,2004,23(1).
[2] 梁斌.走进搜索引擎[M].北京:电子工业出版社,2007.10
[3] 徐宝文.搜索引擎与信息获取技术[M].北京:清华大学出版社,2003.
[4] 邱哲,符滔滔.开发自己的搜索引擎[M].北京:人民邮电出版社,2007.
[5] Cay S.Horstmann JAVA2核心技术 卷II:高级特性[M].7版.北京:机械工业出版社,2006.
上一篇:论恶意软件及防护方法
下一篇:关于工业蒸汽锅炉自动化控制的探析
热门论文