[发明专利]一种内存数据库事务管理方法及系统有效
申请号: | 200710119445.1 | 申请日: | 2007-07-24 |
公开(公告)号: | CN101089857A | 公开(公告)日: | 2007-12-19 |
发明(设计)人: | 王鑫;白平在 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京银龙知识产权代理有限公司 | 代理人: | 许静 |
地址: | 518057广东省深圳市南山*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 内存 数据库 事务管理 方法 系统 | ||
技术领域
本发明涉及计算机数据库领域,尤其涉及一种内存数据库事务管理方法及系统。
背景技术
内存数据库(MDB,Memory Database)区别于传统的磁盘型数据库,其所有的数据存取、数据流程处理都是驻留在内存中实现的。因此,相对于传统的磁盘型数据库,内存数据库的处理效率更高。
在对数据访问频率及效率要求较高的系统中,尤其是在通信领域的一些设备系统中,内存数据库是一个必然的选择,其高效的访问处理能力为设备系统的性能提供了可靠的保证。随着应用系统处理能力的提高,对内存数据库处理数据能力的要求也越来越高,数据处理流程也越来越复杂,在进行复杂流程处理的过程中,一旦在处理的过程中发生失败,那么之前修改的数据就会影响其它流程的正常处理。因此,为了保证访问数据的完整性,内存数据库就需要具备事务处理机制。
电信系统,特别是在分布式数据的电信系统中,内存数据库分布在系统的若干个处理单元上,很多数据处理流程都需要跨越不同处理单元访问内存数据库,以下简称之为跨越式访问,因此,也需要事务处理机制在分布式系统上保证访问数据的完整性。专利号为US6457021,名称为“In-memory databasesystem”的专利公开了一种内存数据库事务处理的实现方式,但是该专利仅提出一种单处理机中内存数据库事务处理的实现方式,并未涉及由多处理机分布式内存数据库事务处理的方法,而且该专利提出的单处理机内存数据库事务处理的实现方式相对复杂,也没有对事务异常死锁的保护方法,因此,该专利并不适用于电信系统中内存数据库系统的开发使用。
另外,在内存数据库事务处理过程中,包括一个重要的事务处理方式,称为数据回滚。内存数据库在执行数据回滚过程中,往往需要占用其大量的内存空间来存储数据的历史记录,由于内存数据库是一种共享式数据库,在实现事务系统时,也应该尽量减少其对非常宝贵的内存资源的占用,因此,如何平衡内存资源占用与事务处理效率这一矛盾是内存数据库事务处理需要解决的一个主要问题。
发明内容
有鉴于此,本发明的目的在于提供一种内存数据库事务管理方法及系统。该方法及系统克服现有内存数据库中缺乏事务处理系统且无法满足分布式数据系统中事务性处理要求的困难,为内存数据库中数据的一致性及安全性提供可靠保障,并大大减少数据回滚所占用的内存数据库的存储空间。
本发明提供了一种内存数据库事务管理方法,包括:
事务管理模块创建、处理和提交事务,并根据日志管理模块创建的日志执行事务,在事务执行过程中,如果存在与该事务相应的子事务,事务管理模块需要在子事务执行完成后,完成该事务的执行过程;
日志管理模块创建和管理与事务管理模块创建、处理和提交事务相应的日志;其中该方法所述日志包括操作日志和数据日志,其中,操作日志记录事务执行过程中访问内存数据库的所有操作;数据日志分布于内存数据库处理系统内的数据表中,用于保存数据的历史记录,数据日志的记录方式取决于与其对应的操作日志。
该方法所述处理事务包括对内存数据库中记录的读取、修改、删除和插入。
该方法所述事务管理模块处理事务的过程包括:
事务管理模块接收用户发送的事务请求消息,返回确认消息和事务编号给用户;事务管理模块接收用户根据事务编号发送的开始处理事务消息,开始处理事务。
该方法所述事务管理模块提交事务的过程包括:
事务管理模块接收用户发送的事务提交请求消息,进行事务提交;
事务管理模块根据事务编号查找操作日志,将所有与该事务相关的操作记录取出;
事务管理模块根据操作记录中存储的数据表标识,数据记录号定位到目标记录;
如果目标记录的事务操作标识为事务删除,则删除该目标记录;
如果目标记录的事务操作标识为事务修改,则删除数据记录号中的事务操作标识,并删除与数据记录号扩展对应的目标记录;
如果目标记录的事务操作标识为事务读取,则删除数据记录号中的事务操作标识;
如果目标记录的事务操作标识为事务插入,则删除数据记录号中的事务操作标识;
事务管理模块删除事务对应的所有操作日志记录,并且删除事务信息,事务提交结束。
该方法所述事务管理模块处理事务失败后,进行数据回滚,过程如下:
事务管理模块接收用户发送的回滚请求消息,进行回滚;
事务管理模块根据事务编号查找操作日志,将所有与该事务相关的操作记录取出;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710119445.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:塑料链盒
- 下一篇:一种消除相邻小区干扰的方法及装置