[发明专利]在多版本数据库系统中的万圣夜保护有效
申请号: | 201110358461.2 | 申请日: | 2011-10-31 |
公开(公告)号: | CN102567453A | 公开(公告)日: | 2012-07-11 |
发明(设计)人: | C·S·弗里德曼;C·J·坎宁安 | 申请(专利权)人: | 微软公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 杨洁 |
地址: | 美国华*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 版本 数据库 系统 中的 万圣夜 保护 | ||
1.一种在计算环境中缓解与万圣夜问题相关的问题的方法,所示万圣夜问题包括其中更新操作潜在地允许在操作期间多于一次地访问记录,所述方法包括:
访问数据存储操作语句的实例(202);
执行所述数据存储操作语句的所述实例导致对数据存储记录的老版本的更新或删除,或对数据存储记录的创建,在对数据存储记录的更新或创建情况中得到所述数据存储记录的新版本,或在数据存储中的删除情况中得到所述数据存储记录的已删除版本(204);以及
将所述数据存储操作语句的所述实例与所述数据存储记录的所述新版本或所述数据存储记录的所述已删除版本相关联(206)。
2.如权利要求1所述的方法,其特征在于,将所述数据存储操作的所述实例与所述数据存储记录的所述新版本或所述数据存储记录的所述已删除版本相关联包括:将与所述数据存储操作语句的所述实例相关联的一个或多个标识符存储在所述数据存储记录的所述新版本中。
3.如权利要求2所述的方法,其特征在于,将与所述数据存储操作语句的实例相关联的一个或多个标识符存储在所述数据存储记录的新版本或所述数据存储记录的已删除版本中包括:存储事务的标识符,所述事务包括所述数据存储操作语句的所述实例;以及存储在所述事务内的所述数据存储操作语句的所述实例的标识符。
4.如权利要求2所述的方法,其特征在于,将与所述数据存储操作语句的所述实例相关联的一个或多个标识符存储在所述数据存储记录的所述新版本中或所述数据存储记录的所述已删除版本中包括:存储所述数据存储操作语句的全局标识符。
5.如权利要求2所述的方法,其特征在于,将与所述数据存储操作语句的所述实例相关联的一个或多个标识符存储在所述数据存储记录的所述新版本中或所述数据存储记录的所述已删除版本中包括:将一个或多个标识符存储在所述数据存储记录的所述新版本的记录头部中。
6.如权利要求2所述的方法,其特征在于,将与所述数据存储操作语句的所述实例相关联的一个或多个标识符存储在所述数据存储记录的所述新版本中或所述数据存储记录的所述已删除版本中包括:将一个或多个标识符存储在所述数据存储记录的所述新版本中的用户能够访问的列中。
7.如权利要求2所述的方法,其特征在于,所述数据存储记录的所述新版本中或所述数据存储记录的所述已删除版本中与所述数据存储操作语句的所述实例相关联的一个或多个标识符包括版本号,所述方法还包括:一旦全部能用的版本号已被使用,将与数据存储操作语句相关的全部版本号重置为安全版本号,并重新使用各版本号。
8.如权利要求2所述的方法,其特征在于,还包括压缩所述数据存储记录的所述新版本或所述数据存储记录的所述已删除版本中与数据存储操作语句的实例相关联的一个或多个标识符中的一个或多个。
9.如权利要求1所述的方法,其特征在于,将所述数据存储操作语句的所述实例与所述数据存储记录的所述新版本或所述数据存储记录的所述已删除版本相关联包括:在所述数据存储记录的所述新版本或所述数据存储记录的所述已删除版本中设置单个位,来指示所述数据存储记录的所述新版本或所述数据存储记录的所述已删除版本作为执行所述数据存储操作语句的所述实例的结果而被创建。
10.如权利要求9所述的方法,其特征在于,还可包括在所述数据存储操作语句已经完成执行后清除所述单个位。
11.如权利要求1所述的方法,其特征在于,将所述数据存储操作语句的所述实例与所述数据存储记录的所述新版本或所述数据存储记录的所述已删除版本相关联可包括:将所述数据存储记录的所述新版本或所述数据存储记录的所述已删除版本存储在与当前事务相关联的列表中,所述当前事务包括在所述当前事务的上下文内的由所述数据存储操作语句的所述实例所创建的记录。
12.如权利要求11所述的方法,其特征在于,还可包括在所述数据存储操作语句已经完成执行后丢弃所述列表。
13.如权利要求11所述的方法,其特征在于,还包括:当执行读取操作时,检查与所述当前事务相关联的记录列表,以确定所述记录由所述数据存储操作语句的所述实例创建并且应该是不可读的,还是所述记录先前已存在并且应该是可读的。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110358461.2/1.html,转载请声明来源钻瓜专利网。