[发明专利]基于动态索引的分布式缓冲区管理方法有效
| 申请号: | 201110263655.4 | 申请日: | 2011-09-07 |
| 公开(公告)号: | CN102314506A | 公开(公告)日: | 2012-01-11 |
| 发明(设计)人: | 白广超;李祥凯;冯玉;李卫;冷建全 | 申请(专利权)人: | 北京人大金仓信息技术股份有限公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 北京汲智翼成知识产权代理事务所(普通合伙) 11381 | 代理人: | 陈曦;郭亚芳 |
| 地址: | 100085 北京市*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 动态 索引 分布式 缓冲区 管理 方法 | ||
技术领域
本发明涉及一种数据库集群系统中分布式缓冲区的管理方法,尤其涉及一种基于动态索引机制实现的分布式缓冲区管理方法,属于数据库集群系统技术领域。
背景技术
随着经济的高速发展,用户数量、数据量呈现爆炸式增长。在用户需求不断增长的应用环境下,对数据库技术提出了严峻的考验。对于所有的数据库而言,除了记录正确的处理结果之外,还面临着以下几方面的挑战:如何提高处理速度,实现数据库的负载均衡;如何保证数据库的可用性、数据安全性以及如何实现数据集可扩展性。
为了应对上述技术挑战,人们借鉴计算机集群(将一组松散集成的计算机软件和/或硬件连接起来高度紧密地协作完成计算工作)的技术理念,将多个数据库连接起来组成数据库集群系统。数据库集群系统(Database Cluster System,简称DBCS)将集群技术与数据库系统相结合,是一组完整的、自治的计算处理单元(节点),每个节点均有独自的CPU、内存以及磁盘等硬件资源,运行独立的操作系统和自治的数据库系统。各个节点通过高速专用网络或者商业通用网络互连,彼此协同计算,作为统一的数据库系统提供并行事务处理服务。
在数据库系统中,使用缓冲区的目标是减少磁盘和存储器之间传输的数据块的数目,即减少磁盘访问次数。在单机数据库系统中,缓冲区的应用技术已经十分成熟,但在数据库集群系统中,由于集群系统属于分布式系统,传统的缓冲区技术已经不能适应这种复杂的分布式系统。分布式缓冲区管理不仅要求将数据块缓存到缓冲区中,还必须保证多个数据库节点对相同数据块的并发访问,并且保证数据库节点可以访问到正确的数据块版本。
在专利号为ZL200710099762.1的中国发明专利中,公开了一种嵌入式数据库的存储管理方法,包括如下步骤:(1)数据在内存存储策略为:逻辑、物理结构相一致,分为系统区、主存数据库区、用户工作区、日志区和预留区;数据在外存存储策略为:逻辑结构分为:数据库表、段、数据库块;物理结构包括物理文件和物理块;(2)数据库物理文件组织为:将数据字典放在首部,其后为用户表;(3)数据字典在外存的存储管理为:物理文件的描述信息存储在文件头,外延定义类和属性定义类采用三段式的存储方式;数据字典在内存采用页式存储管理方法;(4)采用T树存取常驻内存数据,采用B+树存取常驻外存数据;采用扩展的段页式存储管理方法对数据本身及其索引进行管理。该方法提高了存储空间的利用率,加快了数据访问的速度。但是,该方法并不适合在数据库集群系统中使用。
发明内容
针对现有技术所存在的不足,本发明所要解决的技术问题在于提供一种基于动态索引的分布式缓冲区管理方法。使用该方法可以提高数据库集群系统的整体性能。
为实现上述的发明目的,本发明采用下述的技术方案:
一种基于动态索引的分布式缓冲区管理方法,用在数据库集群系统中,其特征在于:
所述数据库集群系统的每个节点设置独立的缓冲区;
当数据块被某个节点首次加载到该节点的缓冲区时,首先将该数据块的信息加入到全局缓冲区管理器的动态索引表中,并将缓冲区的属性设置为本地资源,由该节点持有;
当其它节点需要访问该数据块时,首先向所述全局缓冲区管理器查询,在通过动态索引表得知该数据块已经被加载、并被某个节点持有的情况下,修改该缓冲区的属性为全局资源,并向持有该数据块的节点申请传送该数据块以供访问。
其中,当缓冲区被修改后,该节点向全局缓冲区管理器申请更新动态索引表,并修改所述缓冲区的状态。
所述缓冲区的状态包括持有节点和资源属性。
当某个节点需要查找某数据块时,首先查询本地的缓冲区,判断该缓冲区中是否存在该数据块,若存在且该缓冲区的属性为本地资源则直接使用;否则查询所述全局缓冲区管理器的动态索引表,若其它节点的缓冲区存在该数据块,则向其它节点申请传送该数据块并相应修改本地的缓冲区。
若该数据块存在且缓冲区的属性不是本地资源,则向所述全局缓冲区管理器查询该数据块是否是最新版本,若该数据块是最新版本则直接访问该数据块,若该数据块不是最新版本则向持有最新版本的数据块的节点请求传送数据块并相应修改本地的缓冲区。
若所述全局缓冲区管理器的动态索引表没有该数据块的信息,则从数据库集群系统的磁盘中读取该数据块到本地的缓冲区,并将该数据块的信息添加到所述动态索引表中,更新所述全局缓冲区管理器中的持有节点和资源属性信息,并将缓冲区的属性设置为本地资源。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京人大金仓信息技术股份有限公司,未经北京人大金仓信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110263655.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:冷光源电动车车牌
- 下一篇:重型车用变速箱辅助支撑





