[发明专利]一种内存数据库事务管理方法及系统有效
申请号: | 200710119445.1 | 申请日: | 2007-07-24 |
公开(公告)号: | CN101089857A | 公开(公告)日: | 2007-12-19 |
发明(设计)人: | 王鑫;白平在 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京银龙知识产权代理有限公司 | 代理人: | 许静 |
地址: | 518057广东省深圳市南山*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 内存 数据库 事务管理 方法 系统 | ||
1.一种内存数据库事务管理方法,其特征在于,包括:
事务管理模块创建、处理和提交事务,并根据日志管理模块创建的日志执行事务,在事务执行过程中,如果存在与该事务相应的子事务,事务管理模块需要在子事务执行完成后,完成该事务的执行过程;
日志管理模块创建和管理与事务管理模块创建、处理和提交事务相应的日志,其中,所述日志包括操作日志和数据日志,其中,操作日志记录事务执行过程中访问内存数据库的所有操作;数据日志分布于内存数据库处理系统内的数据表中,用于保存数据的历史记录,数据日志的记录方式取决于与其对应的操作日志。
2.根据权利要求1所述的方法,其特征在于,所述处理事务包括对内存数据库中记录的读取、修改、删除和插入。
3.根据权利要求2所述的方法,其特征在于,所述事务管理模块处理事务的过程包括:
事务管理模块接收用户发送的事务请求消息,返回确认消息和事务编号给用户;事务管理模块接收用户根据事务编号发送的开始处理事务消息,开始处理事务。
4.根据权利要求2所述的方法,其特征在于,所述事务管理模块提交事务的过程包括:
事务管理模块接收用户发送的事务提交请求消息,进行事务提交;
事务管理模块根据事务编号查找操作日志,将所有与该事务相关的操作记录取出;
事务管理模块根据操作记录中存储的数据表标识,数据记录号定位到目标记录;
如果目标记录的事务操作标识为事务删除,则删除该目标记录;
如果目标记录的事务操作标识为事务修改,则删除数据记录号中的事务操作标识,并删除与数据记录号扩展对应的目标记录;
如果目标记录的事务操作标识为事务读取,则删除数据记录号中的事务操作标识;
如果目标记录的事务操作标识为事务插入,则删除数据记录号中的事务操作标识;
事务管理模块删除事务对应的所有操作日志记录,并且删除事务信息,事务提交结束。
5.根据权利要求2所述的方法,其特征在于,所述事务管理模块处理事务失败后,进行数据回滚,过程如下:
事务管理模块接收用户发送的回滚请求消息,进行回滚;
事务管理模块根据事务编号查找操作日志,将所有与该事务相关的操作记录取出;
事务管理模块根据操作记录中存储的数据表标识,数据记录号定位到目标记录;
如果目标记录的事务操作标识为事务插入,则删除该目标记录;
如果目标记录的事务操作标识为事务修改,则删除该目标记录,将数据记录号扩展中的内容复制到数据记录号中,并删除数据记录扩展中的内容;
如果目标记录的事务操作标识为事务删除,则删除数据记录号中的事务操作标识;
如果目标记录的事务操作标识为事务读取,则删除数据记录号中的事务操作标识;
事务管理模块删除事务对应的所有操作日志记录,并且删除事务信息,事务回滚结束。
6.根据权利要求3、4或5所述的方法,其特征在于,所述事务管理模块接收用户发送的请求消息后,启动事务保活机制,通过设置事务存活周期控制事务的存活时间。
7.根据权利要求1所述的方法,其特征在于,所述日志管理模块管理日志包括:
如果对目标记录进行了读取操作,则将目标记录的事务操作标识置为事务读取状态,并记录到操作日志中;
如果对目标记录进行修改操作,则先保存一份该目标记录的备份记录,然后在原目标记录上进行修改,在目标记录和备份记录的事务操作标识均置为事务修改状态,并记录到操作日志中,并且将备份记录号中的内容复制到数据记录号扩展中;
如果对目标记录进行了删除操作,则将目标记录的事务操作标识置为事务删除状态,并记录到操作日志中;
如果对目标记录进行了插入操作,则将目标记录的事务操作标识置为事务插入状态,并记录到操作日志中。
8.一种内存数据库事务管理系统,其特征在于,包括:
事务管理模块,用于创建、处理和提交事务,并根据日志管理模块创建的日志执行事务,在事务执行过程中,如果存在与该事务相应的子事务,事务管理模块需要在子事务执行完成后,完成该事务的执行过程;
日志管理模块,用于创建和管理与事务管理模块创建、处理和提交事务相应的日志;其中,所述日志管理模块包括操作日志管理模块和数据日志管理模块,其中,
操作日志管理模块,用于记录事务执行过程中访问内存数据库的所有操作;
数据日志管理模块,分布于内存数据库处理系统内的数据表中,用于保存数据的历史记录,数据日志的记录方式取决于与其对应的操作日志。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710119445.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:塑料链盒
- 下一篇:一种消除相邻小区干扰的方法及装置