Oltp集群数据库中页面查询方法及数据处理节点的制作方法

文档序号:8258983阅读:470来源:国知局
Oltp集群数据库中页面查询方法及数据处理节点的制作方法
【技术领域】
[0001]本发明实施例涉及计算机领域,并且更具体地,涉及OLTP集群数据库中页面查询方法及数据处理节点。
【背景技术】
[0002]联机事务处理(On-Line Transact1n Processing,0LTP)数据库的目标架构是共享磁盘(Shared-disk)的OLTP集群数据库系统,可以通过增加数据库服务器的方法来线性增长数据处理能力(Scale-out),克服单实例数据库系统只能通过升级数据库服务器硬件来来提升数据处理能力(Scale-up)的局限性。OLTP集群数据库最核心的组件是数据库内核引擎,只有在一个好的数据库内核引擎的基础上,才有可能建立起一个好的集群数据库。
[0003]Shared-disk架构的集群数据库有两种实现方式:一种是以Oracle RAC为代表的完全分布式的集群,通过分布式缓冲池和分布式锁管理来保证各数据库引擎节点的数据一致性;另一种是以IBM DB2 pureScale (来源于IBM主机上的DB2 Data Sharing)为代表的有中心协调节点的集群,通过全局缓冲池和全局锁管理器来保证各数据库引擎节点(数据处理节点)的数据一致性。
[0004]上面两种方法都存在如下问题:数据处理节点缓存不足时,需要淘汰页面,等再次需要访问时,又要重新通过网络或磁盘读取,增大了处理开销。

【发明内容】

[0005]本发明实施例提供一种OLTP集群数据库中页面查询方法及数据处理节点,能够在一定程度上减少OLTP集群数据库引擎节点(数据处理节点)的处理开销。
[0006]第一方面,提供了一种OLTP集群数据库的页面查询方法,该OLTP集群数据库包括中心节点和至少一个数据处理节点,该中心节点采用被动释放物理锁PLock的处理方式管理PLock,该方法包括:当该数据处理节点在进行数据查询的过程中需要查询第一页面,且该数据处理节点的数据库缓冲区存储空间中不存在该第一页面时,该数据处理节点在该数据处理节点的共享内存中查找该第一页面的页面摘要;如果根据该页面摘要判断出该数据查询的目标数据不具有在该第一页面的可能性,则该数据处理节点不对该第一页面进行查询操作;或者,如果根据该页面摘要判断出该数据查询的目标数据具有在该第一页面的可能性,则该数据处理节点加载该第一页面到该数据库缓冲区存储空间,并遍历该第一页面进行该数据查询。
[0007]结合第一方面,在第一种可能的实现方式中,具体实现为:该方法还包括:当该数据处理节点的数据库缓冲区存储空间不足需要淘汰页面时,该数据处理节点确定该数据处理节点的数据库缓冲区存储空间中需要淘汰的第二页面,保留该第二页面的PLock,生成该第二页面的页面摘要,并淘汰该第二页面;或者,当该数据处理节点持有第三页面的物理锁时,该数据处理节点在该数据处理节点的共享内存中生成该第三页面的页面摘要。
[0008]结合第一方面或第一方面的第一种可能的实现方式,在第二种可能的实现方式中,该方法还包括:当该数据处理节点接收到第四页面发生锁冲突的消息时,该数据处理节点释放该第四页面的PLock,并失效该第四页面的页面摘要,其中,该第四页面为该数据处理节点的数据库缓冲区存储空间中缓存的页面,或该第四页面为该数据处理节点已经淘汰但仍然保留PLock的页面。
[0009]第二方面,提供了一种OLTP集群数据库中用于页面查询的方法,该OLTP集群数据库包括中心节点和至少一个数据处理节点,该中心节点采用被动释放物理锁PLock的处理方式管理PLock,该方法包括:当该OLTP集群的数据处理节点持有第一页面的物理锁时,该数据处理节点生成该页面摘要;以及,当该数据处理节点的数据库缓冲区存储空间不足需要淘汰页面时,该数据处理节点确定该数据处理节点的数据库缓冲区存储空间中需要淘汰的第二页面,保留该第二页面的PLock,生成该第二页面的页面摘要,并淘汰该第二页面。
[0010]结合第二方面,在第一种可能的实现方式中,该方法还包括:当该数据处理节点接收到第三页面发生锁冲突的消息时,该数据处理节点释放该第三页面的PLock,并失效该第三页面的页面摘要,其中,该第三页面为该数据处理节点的数据库缓冲区存储空间中缓存的页面,或该第三页面为该数据处理节点已经淘汰但仍然保留PLock的页面。
[0011]第三方面,提供了一种OLTP集群数据库的数据处理节点,该数据处理节点所在的OLTP集群数据库包括中心节点和至少一个该数据处理节点,该中心节点采用被动释放物理锁PLock的处理方式管理PLock,该数据处理节点包括:页面摘要查找单元,用于当该数据处理节点在进行数据查询的过程中需要查询第一页面,且该数据处理节点的数据库缓冲区存储空间中不存在该第一页面时,在该数据处理节点的共享内存中查找该第一页面的页面摘要;页面访问单元,用于如果根据该页面摘要判断出该数据查询的目标数据不具有在该第一页面的可能性,则不对该第一页面进行查询操作;该页面访问单元还用于如果根据该页面摘要判断出该数据查询的目标数据具有在该第一页面的可能性,则加载该第一页面到该数据库缓冲区存储空间,并遍历该第一页面进行该数据查询。
[0012]结合第三方面,在第一种可能的实现方式中,该数据处理节点还包括:页面淘汰单元,用于当该数据处理节点的数据库缓冲区存储空间不足需要淘汰页面时,确定该数据处理节点的数据库缓冲区存储空间中需要淘汰的第二页面,保留该第二页面的PLock,并淘汰该第二页面;页面摘要生成单元,用于在该页面淘汰单元淘汰该第二页面时生成该第二页面的页面摘要。
[0013]结合第三方面或第三方面的第一种可能的实现方式,在第二种可能的实现方式中,该数据处理节点还包括:页面摘要生成单元,用于当该数据处理节点持有第三页面的物理锁时,在该数据处理节点的共享内存中生成该第三页面的页面摘要。
[0014]结合第三方面或第三方面的第一种可能的实现方式或第三方面的第二种可能的实现方式,在第三种可能的实现方式中,该数据处理节点还包括:页面摘要失效单元,用于当该数据处理节点接收到第四页面发生锁冲突的消息时,释放该第四页面的PLock,并失效该第四页面的页面摘要,其中,该第四页面为该数据处理节点的数据库缓冲区存储空间中缓存的页面,或该第四页面为该数据处理节点已经淘汰但仍然保留PLock的页面。
[0015]第四方面,提供了一种OLTP集群数据库的数据处理节点,该数据处理节点所在的OLTP集群数据库包括中心节点和至少一个该数据处理节点,该中心节点采用被动释放物理锁PLock的处理方式管理PLock,该数据处理节点包括:页面摘要生成单元,用于当该数据处理节点持有第一页面的物理锁时,在该数据处理节点的数据库缓冲区存储空间建立该页面摘要;页面淘汰单元,用于当该数据处理节点的数据库缓冲区存储空间不足需要淘汰页面时,确定该数据处理节点的数据库缓冲区存储空间中需要淘汰的第二页面,保留该第二页面的PLock,并淘汰该第二页面;该页面摘要生成单元还用于在该页面淘汰单元淘汰该第二页面时,生成该第二页面的页面摘要。
[0016]结合第四方面,在第一种可能的实现方式中,该数据处理节点还包括:页面摘要失效单元,用于当该数据处理节点接收到第三页面发生锁冲突的消息时,释放该第三页面的PLock,并失效该第三页面的页面摘要,其中,该第三页面为该数据处理节点的数据库缓冲区存储空间中缓存的页面,或该第三页面为该数据处理节点已经淘汰但仍然保留PLock的页面。
[0017]基于以上技术方案,本发明实施例的OLTP集群数据库中页面摘要使用管理方法及数据处理节点,在访问页面时根据页面摘要快速过滤页面,减少了不必要的磁盘10,减少了数据处理节点与中心节点的交互,从而能够减少网络通信时间,减少了数据处理节点的处理开销,提高数据处理节点的处理效率。
【附图说明】
[0018]为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0019]图1是本发明实施例OLTP集群数据库的页面查询方法流程图。
[0020]图2是本发明实施例OLTP集群数据库中页面查询方法的具体流程图。
[0021]图3示是本发明实施例OLTP集群数据库的用于页面查询的方法流程图。
[0022]图4示是本发明实施例OLTP集群数据库的数据处理节点的结构示意图。
[0023]图5示是本发明实施例OLTP集群数据库的数据处理节点的另一结构示意图。
[0024]图6示是本发明实施例OLTP集群数据库的数据处理节点的另一结构示意图。
[0025]图7示是本发明实施例OLTP集群数据库的数据处理节点的另一结构示意图。
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1