基于開源框架的搜索引擎的研究与实现.docxVIP

基于開源框架的搜索引擎的研究与实现.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于開源框架的搜索引擎的研究与实现

华中科技大学 基于开源框架的搜索引擎的研究与实现 开题报告 谭望达 4/14/2010 本文讲述了如何在开源程序的基础上搭建自己的一个简单的搜索引擎,使用Lucene,Hadoop和一些机器学习库作为搜索引擎的基础,并且还对Lucene与Hadoop的实现原理进行了比较细致的讲述,希望能够对研究和开发搜索引擎的人起到一定的帮助。 选题意义 理论意义 从理论的意义上来说, 也有很多的地方用到了搜索引擎技术,比如说从语音识别,文本分类,模式识别,都使用到了机器学习, 而机器学习的核心就是语料库(corpus),而语料库都是庞大的,一般来说动辄以T级来计算,所以如何从T(千G)级的,也就是以十亿文档级别的数据中提取出想要的数据,是一项挑战,在搜索引擎技术诞生之前是不敢想的。可以说,搜索引擎技术与机器学习的识别的结合是未来科研的一个很重要的方向。 现实意义 从实际出发,搜索引擎生活中作为越来越广泛的使用到的一项基本工具,从生活琐事到专业领域,日常问题可以去百度百科,科研论文可以去Google学术,消费购物可以去阿里巴巴,交友联络可以去校内网,而这些公司与检索相关的内容,都可以说或多或少的应用了很多搜索引擎的技术。 现在还有越来越多的垂直搜索引擎建立起来, 也就是利用其他搜索引擎的结果进行二次排序处理, 在一个个的更细分的领域中起到了很大的作用。可以说搜索引擎作为一项互联网的基本技术被广泛的使用。 随着一个一个搜索引擎相关的公司的成功,比如Google这样一个神话般的公司,越来越多的人也关注到了这个领域。不过想从头自己编写一个搜索引擎可不是容易的事情,而随着越来越多相关的文献的发表和开源社区的建立,创建这样的一个搜索引擎就不再是难事,而实用这些开源的搜索引擎框架,不需要过多的深入技术细节,而更多的精力可以放在想法的实现上。开源框架的实用一般说来是免费的或者相对商业软件来说是很便宜的,用户可以在资金不太宽裕的时候放心的使用。 另外本文将讨论一下机器学习的一些内容,搜索引擎只是一个“搜索”的实现,而如何更好的把结果展示给用户,如何在数据之上实现更多的特性,就是需要机器学习来进行的,搜索引擎与机器学习是越来越不可分。本文将讨论一下机器学习的一些基本概念,并且简单的介绍几个开源的机器学习库。 论文综述 国外有关情况综述 国外在搜索引擎与机器学习领域是远远的走在了国内同行的前面,据可以查到的资料上来看,最早的搜索引擎有University of McGill师生开发出的Archie,是一个简单的FTP文件搜索引擎,而国外的相关文献也是非常的多。 如果想了解国外的搜索引擎研究最新情况,看看Google的就可以了解到很多的内容。Google的研究成果: 超过百万台的机群的管理: Google所主导的“云计算”也就是利用大量廉价的电脑来组成计算集群,在节约了成本的同时也大大的增加了可扩展性,Google现在的集群可以随意的通过扩展计算机的数量来增强计算与存储的能力,也可以通过扩展计算机的数量来增加数据的安全性,一份数据可以在不同的计算机的硬盘中存多份的景象。Google的云计算与很多公司的高档服务器相比,节省了约30%的成本,让自己赢在了起跑线上。 Google文件系统(Google File System,GFS): Google所创建的GFS隐藏了下层负载均衡,冗余复制等细节,对上层程序提供一个统一的文件系统API接口。Google根据自己的需求对它进行了特别优化,包括:超大文件的访问,读 操作比例远超过写操作,PC机极易发生故障造成节点失效等GFS把文件分成64MB的块(Chunk),分布在集群的机器上,使用Linux的文件系统存放。同时每块文件至少有3份以上的冗余,而且是可配置的.中心是一个Master节点(一个集群里面可以有多个Master),根 据文件索引,找寻文件块。 Map Reduce: Google把大部分的分布式运算都分解成了Map操作与Reduce操作,比如说超大的稀疏矩阵的运算,网页中关键词的统计等等。Map操作把输入分解为多个部分,让独立的处理器去运行这些内容,然后把结果混合,进行一次Reduce操作。由于分布式计算的独立性,Map-Reduce的运行时间基本上是与Map和Reduce的数目呈倒数关系的。 Big Table: 一个大型的运行于分布式平台上的数据库,就像一个巨大的表格,用来存储结构化的数据库。 说完了这些,我们再来谈谈本文的重点:开源框架的搜索引擎。 Lucene是目前一个很热门的开源搜索引擎的实现,使用Java为开发语言,Java可移植性强,也拥有了众多的开源产品, 我下面将要提到的Hadoop也是采用Java作为开发语言。Lucene是Apache基金下的一个开源项目。 在Lu

文档评论(0)

fv45ffsjjI + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档