论文部分内容阅读
随着互联网的发展,网页数量的激增,网络上的数据呈几何增长,用户获取有用的信息变得困难。在这样一个大的环境下,搜索引擎成为了互联网上最重要的Web应用程序,它几乎成为了大部分网络用户的主要入口。随着互联网上数据的爆炸性增长,传统的技术架构已经越来越不适应目前海量数据处理的要求。 由于互联网上的网页数以十亿计,面对海量的网页数据,搜索引擎的架构也发生了变化,从传统的集中式搜索引擎过渡到了分布式搜索引擎。起初,开发人员要构建分布式搜索引擎是非常困难的,因为开发人员必须面对系统底层的处理细节,使得无法集中主要时间和精力在搜索引擎本身的架构上。随后,搜索巨头Google公司提出了MapReduce分布式编程模型,并发布了GFS/MapReduce/Bigtable三篇论文,DougCutting在此基础上实现了开源的分布式计算平台Hadoop。Hadoop提供了MapReduce编程框架,使得开发人员可以不用关心系统底层的细节,只需要将精力集中在搜索引擎的架构实现上。 本文将基于Hadoop这个开源的分布式计算平台搭建起分布式搜索引擎系统,利用Map/Reduce编程模型设计主要系统模块,同时充分利用分布式系统下已有的资源,组织更为庞大的计算网络,满足搜索引擎对计算能力、稳定性和扩展性的需求,并综合利用TF-IDF和PageRank评分策略以及用户反馈优化搜索结果。