基于Lucene的搜索引擎研究与实践

来源 :中国地质大学(武汉) | 被引量 : 0次 | 上传用户:ninghong0319
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
搜索引擎已经成为互联网必不可少的基础服务,它可以帮助用户在海量信息中迅速准确的检索到需要的信息,给人们的工作和生活带来了极大的方便。随着网络的迅速发展,出现了大批中小规模的网站,而对于任何一个通用搜索引擎而言它不可能抓取互联网上所有的信息资源,为了帮助用户能够快速在中小型站点中检索到所需的信息,这就产生了对小型搜索引擎的需要。小型搜索引擎需要的硬件资源要求低,索引的数据量小,收录网站页面全,页面更新和索引周期短,可以有效提高站内的查全率和查准率。论文简要介绍了搜索引擎的原理和发展现状,详细研究了网络蜘蛛,索引系统和检索系统相关的技术,设计和实现,论文的主要工作可以归结为以下几个方面:   1)搜索引擎原理的研究。主要讨论了搜索引擎实现的原理,搜索引擎由网络蜘蛛系统,索引系统和检索系统三部分构成,从这三大系统出发,分别研究了网络蜘蛛的访问策略,URL消重,DNS缓存,蜘蛛访问控制,页面更新策略,索引信息预处理,中文分词,倒排索引以及检索系统中检索文档的常用评分算法;   2)重点研究了网络蜘蛛的设计与实现。本部分具体介绍了如何使用C++开发一个功能完备的网络蜘蛛系统,讨论了HTTP协议的request/response模型,网络蜘蛛分为底层网络蜘蛛和上层网络蜘蛛,底层网络蜘蛛实现了网页请求的发送与接收,Form,MultipartForm,Cookie,chunked编码文件的解码,GZIP解压缩编码文件以及字符集的转换;上层网络蜘蛛实现了页面的抓取、存储,页面字符集的识别,URL的提取,URL的消重、存储,蜘蛛访问页面频率控制和多线程抓取页面的功能;   3)索引系统的设计与实现研究。本部分介绍了Lucene索引的索引方法和内置分词的功能,实现了HTML,MS Word和PDF三种格式文件的预处理,采用JTidy和标签过滤法实现了HTML文件的预处理,采用PDFBox实现PDF文档的预处理,采用Apache POI实现了Word文档的预处理,利用IK Analyzer实现了中文分词,结合这些模块实现了索引系统;   4)检索系统的设计与实现研究。本部分分析了检索的流程以及Lucene检索的使用方法,设计了两种方案进行检索,其中第二种方案单字前缀检索方法在一定程度上解决了索引和检索分词粒度不同产生的问题。
其他文献
近年来,XML数据流的查询处理引起了国内外学者的广泛兴趣。如何在XML数据流中有效地查询大量XPath表达式是当今研究的一个热点问题。目前,已经提出很多种在XML文档上进行XPat
信息技术的蓬勃发展,以及企业对信息系统需求的不断深化,一方面也加剧了企业对软件系统的依赖,另一方面也迫切需要企业不断的发展自身的信息化水平。企业的应用系统也从比较
学位
智能交通系统是通信技术、控制技术和计算机等技术的有效集成,其目的是充分利用现有道路基础设施资源,从整体上改善交通的安全性、高效性与舒适性。公路收费系统是智能交通系统
学位
随着传感器技术的发展及计算机计算能力的提高,关于多传感器的信息融合技术的应用也越来越广泛。在军事领域,以多传感器技术为核心内容的战场感知已成为现代战争中最具影响力的
学位
随着经济全球化和电子商务的迅猛发展,企业业务集成将面对分布、异构和动态的应用环境,传统的工作流技术也将面临巨大挑战。与此同时,面向服务的计算模式逐渐流行,Web服务技
近年来,随着物联网的发展,作为其中最为重要的射频识别(RFID)技术引起人们的广泛关注。在RFID系统基础上,结合网络技术来构建一个由大量读写器和标签所组成的物联网成为RFID
支持向量机(Support Vector Machine, SVM)是一种通用高效的机器学习方法,能较好地处理小样本、非线性、高维数据等实际问题,目前已经成为机器学习的研究热点,并广泛应用于模
当前,随着各行业信息化程度的不断提高,企业网络的不断升级完善,使得多组织、多用户通过协同模式完成某一工作的需求愈来愈大。其中很多的功能需求是现有的软件产品无法实现
信息爆炸的时代,如何有效地收集、整理以及存储所感兴趣的信息已经成为各行各业面临的最严峻的问题。如今,如何帮助人们在日益增多的数据信息中发现数据之间的联系和数据的意义
学位
数据库技术是计算机科学领域中应用最广的技术之一。作为数据库的重要组成部分,查询优化器对数据库系统的性能有着举足轻重的影响。目前,查询优化器主要采用的优化方法有规则