资源描述:
《基于Sphinx的Web站内搜索引擎的设计与实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、网络与通信《微计算机信息》(管控一体化)2010年第26卷第5-3期文章编号:1008-0570(2010)05-3-0116-03基于Sphinx的Web站内搜索引擎的设计与实现TheDesignandImplementationofBuildingWebsiteInternalSearchEngineBasedonSphinx1彭宇扬2彭自成1(1.中山大学;2.广州市视高电子技术有限公司)刘清明LIUQing-mingPENGYu-yangPENGZi-cheng摘要:目前站内搜索已成为Web应用领域的一个热点课题。本文在对站内搜索技术进行分析比较的基础上,根据Sphi
2、nx系统结构和运行机制的特点提出了一种可通用的基于Sphinx构建Web站内搜索引擎的方法。该方法对于利用LAMP技术构建的网站,不用修改它的原有架构而能便捷地生成一个性能优越的站内搜索引擎。关键词:站内搜索;全文检索;数据库驱动;分词中图分类号:TP311文献标识码:AAbstract:Thispaperanalyzesandcomparesthewebsiteinternalsearchtechnologies,thenpromotesacommonmethodonhowtobuildwebsiteinternalsearchenginebasedonSphinxacco
3、rdingtoitssystemstructureandrunningmechanismfeatures.ThismethodaimedtothewebsiteswhichbuiltbyLAMP,andcancreateaperformance-excellentwebsiteinternalsearchengineconvenientlyand技fastforthewebsitewithoutchangingitsformerconfigurations.Keywords:WebsiteInternalSearch;Full-textSearch;DatabaseDrive
4、n;WordSegmentation术据库和脚本语言集成,所以极其适合为数据库驱动的网站提供1站内搜索技术分析创高质量、高性能的站内搜索。随着网站内容的不断丰富,站内搜索逐渐成为继通用搜索目前,Sphinx的发布软件包主要包括4个部分:1)indexer:新和行业搜索之后的又一个热点,其应用价值日益引起IT界的重sphinx索引器,用于创建全文索引;2)search:一个简单的命令行视和关注。现有的站内搜索技术一般可归结为三种类型:基于数(CLI)的测试程序,用于测试全文索引;3)searchd:一个守护进程,其据库、基于Spider抓取和全文检索技术。他软件可以通过这个守护
5、进程进行全文检索;4)sphinxapi:一系1)传统的数据库字段检索技术对处理非结构化数据有先天列searchd的客户端API库,用于流行的Web脚本开发语言编不足,且数据库索引并非是为全文检索设计,所以传统的基于数程时调用。据库的站内搜索不具备分词功能,无法完成全文检索,检索功能一般认为,一个完整的检索系统由索引器、检索器和用户接相对简单;用户对搜索范围、内容和体现的结果无法精确控制。口三部分组成。在Sphinx软件包中indexer和searchd分别充当2)基于Spider抓取的站内搜索随着数据量增加,搜索结果了索引器和检索器的角色,而sphinxapi则以API的方
6、式提供了中垃圾信息比重上升,影响结果的排序和显示效果,严重影响精用户接口。确度,且只能对静态页面搜索,动态页面数据无法抓取;用户对搜3基于Sphinx的站内搜索引擎的设索范围、内容、栏目和体现的结果无法精确、有效的控制,各种垃计与实现圾信息过多。3)全文检索站内搜索技术对数据库数据进行html解析、分目前,很多网站的构建都是采用广为流行的基于开放源代词、索引,实现站内搜索,容量大,速度快,支持分词功能,可用关键码的LAMP(Linux+Apache+MySQL+PHP)技术,该技术为网词进行检索,可基于内容分析的排序方法,所有动态网页和没有站建设提供了一套可靠的低成本、高性能
7、解决方案。考虑到这链接的网页均可有效收录;用户可对搜索的内容范围和体现的种情况,我们的研究就是在基于LAMP技术构建的网站平台上,结果进行精确的控制,提供动态摘要,摘要清晰明确,便于用户快借助Sphinx软件包提供的全文检索功能、同时使用LibMMSeg速寻找到所需信息。中文分词算法软件包来为网站生成一个功能强大的站内搜索因此,全文检索技术是站内搜索引擎的主要发展方向。引擎。3.1系统目标2全文检索引擎Sphinx简介本系统要实现一个高效的全文检索站内搜索引擎,其主要Sphinx是SQLPhraseIn