论文部分内容阅读
随着互联网时代的到来,网络信息资源成爆炸式增长。然而伴随着互联网信息的越来越巨大,网络用户想要找到自己所需的信息就如大海捞针一样,为了更加方便、快捷并有效的利用网络上的信息资源,搜索引擎系统便应时出现了。现在,搜索引擎技术作为计算机与信息产业界竞相研究开发的对象,已经日益成熟起来。目前,在传统搜索引擎技术产品中,开源全文搜索引擎Nutch和全文索引软件包Lucene是当中的具有代表性的两个产品。
博客做为一种新兴的网络服务形式,已经被越来越多的人所关注和应用。然而,博客搜索引擎却不能简单的应用传统搜索引擎技术去开发。博客是互联网上的一种共享空间,是一种作者与读者通过互联网以日志风格进行交互的中介,是一种崭新的信息传播和交互方式。用户可以在该空间上发表文章、评议、图片、影音文件等个人资源。博客用户更新博客的形式不确定,更新博客的内容不确定,更新博客的时间不确定,使得博客网页带有明显的不确定性。因此,博客搜索引擎与传统搜索引擎有着明显的区别。博客搜索引擎只专注于博客方面,博客搜索引擎比传统搜索引擎的索引站点更加明确;博客网页更新时间的不确定性,使得博客搜索引擎比传统搜索引擎更要求时效性;从内容上看,博客检索不仅要取得传统检索的网页形式,还要有博客链接。传统搜索引擎在时效性,覆盖率,页面分析等方面都无法满足用户对博客资源搜索的要求。目前,设计研发一款能够准确抓取博客页面,较大程度上覆盖博客资源,并更新及时的博客搜索引擎已经成为搜索引擎研究领域研究的热点和挑战。
本文在研究传统搜索引擎的基本原理、核心技术和处理流程的基础上,结合博客搜索引擎的具体需求,以开源全文搜索引擎Nutch为体系结构基础,以基于Java的全文索引软件包Lucene为系统的索引功能与检索功能的开发工具包,搭建起了完整的博客搜索引擎系统。
系统实现了分布式易扩展结构,在Nutch源码的基础上,重写了网页过滤部分,网页去噪部分,网页消重部分,实现了PageRank算法;在页面内容分析上,实现了正向最大匹配算法的中文分词方法,并对系统模块进行了优化,加快了系统运行速度。