网站大量收购独家精品文档,联系QQ:2885784924

分布式并行信息检索系统的设计与实现.doc

分布式并行信息检索系统的设计与实现.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
分布式并行信息检索系统的设计与实现

  随着社会信息化程度的不断提高,很多系统面临从 大规模数据集中快速检索信息的需求。传统的基于单机 的集中式信息检索技术已无法满足这种以大规模数据集 为基础的并发多用户信息检索的需求。利用高速网络环 境,开发分布式并行信息检索系统,使多台低端服务器或 PC机协同工作,共同承担信息检索任务,不失为一种既 经济又高效的解决方案[ 1, 2 ] 。本文以基础教育资源搜索 引擎 (Basic Educational Res ources Search Engine, BERSE) 系统为例,探讨分布式并行信息检索系统的设计与实现 技术。 1  系统模型与主要算法 1 . 1  设计思想   BERSE是南京师范大学教育科学学院设计开发的一 个面向基础教育领域的专业搜索引擎,该系统中涉及的 数据量庞大,数据变化频繁,用户对系统的响应时间要求 较高。为了能实现信息的快速检索,同时又不用大规模 地增加系统成本,笔者选择了基于低端服务器或 PC机群 的分布式并行信息检索系统设计方案[ 3 ] 。   分布式并行信息检索系统是分布式并行计算技术在 信息检索领域的应用,是计算机技术与网络通讯技术的 有机结合,它将分散的计算机资源统一整合,以发挥集群 优势为目标,实现高速网络环境下的快速信息检索。在 大规模数据检索中,并行处理具有较大的潜力可以挖掘, 利用分布式系统,可以实现多条查询之间的并行检索以 及单条查询内部的并行处理,由此提高整个系统的效 率[ 1, 2, 4 ] 。   为此,在 BERSE中,南京师范大学教育科学学院将 海量数据域进行分段,然后分布在多个查询节点上;对于 复杂的查询进行合理分解,以便在不同的数据段上并行 检索;对来自多个查询节点的查询结果通过合并处理最 后反馈给用户。同时,还需考虑当网页采集量发生较大 变化时,系统能够快速灵活地对数据域重新分段,必要时 能够方便地扩充新的查询节点。 1 . 2  检索模型 当前,并行计算结构主要分为完全共享结构 ( Shared Everything, SE )、 共享主存储器结构 ( Shared Memory, S M)、 共享磁盘结构 ( Shared Disk, SD)和无共享资源结构 ( Shared Nothing, SN)等 4种,其中, SN结构被公认为是支 持并行信息检索较好的结构,它具有资源竞争干扰最小、 高扩充性等优势[ 4, 5 ] 。分布式并行信息检索系统是一种 典型的 SN结构,它通过查询代理 (Query Agent,QA)收集 用户的检索请求,然后将查询任务分配到多个搜索器 ( Searcher)并行完成查询任务。   在 BERSE中,检索功能分为前台服务子系统和后台 数据检索子系统两部分。前台服务子系统承担查询代 理,它响应用户的信息检索请求;后台处理子系统承担具 体的检索任务,由文档服务器 (Document Server, DS)、 索 引服务器 ( Index Server, IS)和若干查询节点 (QueryNode, QN)构成,它们通过千兆交换机组成高速局域网,如图 1 所示:   系统的工作流程为:初始化时,各个 QN根据数据域 的分段信息,从 IS中读取属于自己的数据段并完成数据 的分布;QA收到查询请求时,将查询任务分解为多个子 查询,并进行形式化处理,然后向 QN分配任务; QN收到 查询任务后实施查询,并将查询结果回送给 QA; QA对查 询结果进行排序,并选取前面若干条记录,根据文档编号 (Doc I D)从 DS中提取文档,最后生成检索页面反馈给用 户,至此完成一次查询任务。 1 . 3  主要算法   (1)数据域的划分    在分布式并行检索系统中 ,数据域的划分关系到系统的 查询性能、 扩展性及易维护性等。目前 ,数据划分方法主要有 两大类:一维数据划分和多维数据划分。其中 ,一维数据划分 是根据数据的某个属性的值来划分整个数据 ,这种方法简单 明确 ,容易实现。一维数据划分方法主要有 Round - Robin划 分法、 Hash划分法、 Rang划分法和 Hybrid - Rang划分法等 4 种[ 4, 6 ] 。本文参考了 Hybrid - Rang并结合 BERSE系统的特 点 ,用“ 轮转 ” 算法实现了数据域的划分。    在 BERSE中 ,标引数据被集中存放在 IS中 ,其词条编号 (Ter m I D)对应于词典 (Lexicon)中的词条编号 ,词典中同时包 含 QN编号 (Node I D) ,如图 2所示。数据域的划分是通过对 词典中的 Node I D写标记来实现的。数据标记后 , QN初始化 时在词典中查找各自的 Node I D,然后根据对应关系从 IS中读 取数据 ,并转存在本机 ,从而

文档评论(0)

shenlan118 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档