[发明专利]一种分布式B+树索引系统及构建方法无效
申请号: | 200910087072.3 | 申请日: | 2009-06-18 |
公开(公告)号: | CN101576915A | 公开(公告)日: | 2009-11-11 |
发明(设计)人: | 汤成;高军;王腾蛟;杨冬青 | 申请(专利权)人: | 北京大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;H04L29/08 |
代理公司: | 北京纪凯知识产权代理有限公司 | 代理人: | 徐 宁;关 畅 |
地址: | 100871北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 索引 系统 构建 方法 | ||
技术领域
本发明涉及一种数据索引系统及构建方法,特别是一种用于云存储环境下的分布式B+树索引系统及构建方法。
背景技术
随着互联网技术的发展和Web2.0时代的到来,由于应用过程中需要对海量数据进行处理和运算,这样的应用环境对Web应用数据管理系统的可扩展性、可靠性和高效性提出了更高的要求。随着云环境技术的日益成熟,云存储系统在如今Web数据管理方面体现出越来越明显的优势。
云存储是指通过机群应用、网格技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统。现有的云存储系统如Bigtable、Hbase、PNUTS等,它们在对海量数据的索引方面都存在着一些不足,主要包括:1)现有系统都只有对数据的主键上的索引,缺乏对数据的其他属性的有效索引方式;如果客户端应用服务器需要依据数据的某些其他属性上的检索条件进行查询时,系统只能通过遍历所有数据的方式实施查询,从而使得查询效率非常低。2)现有系统在索引操作中缺乏有效的并发控制事务机制;这样的缺陷直接导致客户端应用服务器在使用索引接口时必须通过自己的编码来保证并发环境下的事务一致性,这使得客户端应用服务器的开发变得复杂,缺乏对不同索引操作的普适支持。
综上所述,为了在云存储系统中提供高效的结构化查询能力,开发一种有效的云存储系统下的索引系统有着重要的意义。
发明内容
针对上述问题,本发明的目的是提供一种在云存储环境下能够增强索引操作中的并发控制事务支持的分布式B+树索引系统及构建方法。
为实现上述目的,本发明采取以下技术方案:一种分布式B+树索引系统,其特征在于:它包括主服务器、事务服务器机群、索引服务器机群和版本控制服务器;所述事务服务器机群包括多个事务服务器,所述索引服务器机群包括多个索引服务器;所述主服务器负责管理META数据,并对所述索引服务器机群进行负载平衡调度;所述事务服务器机群负责对分布式文件系统中索引数据访问的事务控制;所述索引服务器机群负责管理和读写所述分布式文件系统中的索引数据;所述版本控制服务器负责在并发环境下所述索引服务器机群中的索引数据备份的一致性控制;云存储系统通过所述事务服务器机群向所述索引服务器机群并发起事务基本操作。
所述负载平衡调度包括当有新索引数据插入系统时,所述主服务器调度当前负载较低的所述索引服务器来管理所述新索引数据。
一种实现如权利要求1或2所述系统的分布式B+树索引构建方法,其步骤包括:1)云存储系统发起事务访问请求,事务服务器机群将所述事务访问请求分解为若干事务基本操作,同类事务基本操作组成事务基本操作序列;2)所述索引服务器根据所述事务基本操作序列中的读操作,读取分布式文件系统中的索引数据并进行备份;其余事务基本操作序列缓存在所述事务服务器机群中;3)各索引服务器结合有效性验证条件对事务基本操作序列进行事务有效性验证;4)如果所述事务服务器机群接收到的各个索引服务器的事务有效性验证返回结果都为成功,则执行步骤5);否则各个索引服务器从缓冲区中将所述事务访问请求的事务基本操作序列删除,所述事务服务器机群向所述云存储系统发送事务执行结果为失败;5)所述各索引服务器执行缓存在所述索引服务器机群中的除写操作之外的其余事务基本操作序列,之后将操作执行结果保存在副本中,执行写操作,返回提交成功结果给所述事务服务器机群,如果所述事务服务器机群收到的所有所述索引服务器的操作执行结果都为成功,则执行步骤6);如果存在某个索引服务器的操作执行结果为失败,各个索引服务器将所述副本删除,所述事务服务器机群向所述云存储系统发送事务执行结果为失败;6)所述各索引服务器将所述副本标记为已提交版本储存在所述分布式文件系统中;之后所述事务服务器机群向所述云存储系统发送所述操作执行结果的返回值;7)所述云存储系统将所述事务服务器机群的各个所述事务基本操作执行结果进行归并,得到满足所述事务访问请求的索引数据。
所述步骤2)中,主服务器对具有索引数据备份的索引服务器进行选择,选择相对空闲的索引服务器响应事务基本操作序列。
所述步骤3)中,所述有效性验证条件根据所述云存储系统设定的事务一致性级别定制。
所述步骤3)中,所述事务基本操作序列包括当前索引服务器正在执行的或已执行完成,但执行结束时间晚于当前事务基本操作序列开始时间的事务基本操作序列。
所述事务基本操作的类别包括获取下一个结点操作、读操作、写操作、分裂操作和合并操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京大学,未经北京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910087072.3/2.html,转载请声明来源钻瓜专利网。