[发明专利]用增量分页器来管理状态有效
申请号: | 200680050056.1 | 申请日: | 2006-11-17 |
公开(公告)号: | CN101351799A | 公开(公告)日: | 2009-01-21 |
发明(设计)人: | J·R·豪威尔;J·R·道瑟 | 申请(专利权)人: | 微软公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;G06F17/40 |
代理公司: | 上海专利商标事务所有限公司 | 代理人: | 张政权 |
地址: | 美国华*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 增量 分页 管理 状态 | ||
1.一种用于管理数据库的计算机实现的方法,包括:
将所述数据库作为原始状态和部分映射的系列来维护,其中所述部分映射 中的每一个包括事务试图在数据库中加以改变的至少一个对地址的值分配;
将第一部分映射追加到所述原始状态;
将后续部分映射逐一地追加到先前被添加到所述系列中的前导部分映射;
建立指向所述系列中被选中的部分映射的指针;以及
限制对所选部分映射的改变,使得对为其建立了所述指针的所选部分映射 的状态没有改变。
2.如权利要求1所述的方法,其特征在于,还包括确定在所选部分映射 内所述地址到值的分配,包括:
从由所述指针所指向的所选部分映射的状态开始,并从该状态向着所述系 列的起始端前进;以及
访问所选部分映射,直到满足以下条件之一:
找到首次对地址的值分配;以及
到达所述系列的起始端。
3.如权利要求1所述的方法,其特征在于,所述所选部分映射包括最近 被追加到所述部分映射系列的部分映射(310),并且所述指向所选部分映射 的指针包括当前状态指针(120)。
4.如权利要求3所述的方法,其特征在于,还包括:
为一事务试图在所述数据库中改变的至少一个分配创建一新的部分映射 (310);以及
当启动所述事务时,将所述新的部分映射(310)指向由所述当前状态指 针(120)指示的状态。
5.如权利要求4所述的方法,其特征在于,还包括通过在满足以下条件 之一时将所述当前状态指针(120)指向所述新的部分映射,在所述事务的执 行一完成时就提交所述事务:
当启动所述事务时所述当前状态指针(120)继续指向由所述当前状态指 针(120)指示的状态;以及
在启动所述事务时由所述当前状态指针(120)指示的状态与由所述当前 状态指针(120)指示的新状态之间没有介入事务改变了所述事务访问的前一 分配。
6.如权利要求5所述的方法,其特征在于,还包括在未提交所述事务时, 通过丢弃所述新的部分映射来中止所述事务。
7.如权利要求1所述的方法,其特征在于,对所选部分映射建立所述指 针以保留所选部分映射的快照(3210)。
8.如权利要求1所述的方法,其特征在于,还包括:
标识所述系列中没有对其建立指针的第一部分映射;
标识在将所述第一部分映射追加到所述系列之后追加到所述系列的第二 部分映射;
通过以下动作之一将包括在所述第二部分映射中的每一分配插入到所述 第一分配中:
向所述第一分配添加包括在所述第二部分映射中的、先前未包括在 所述第一部分映射中的任何分配;以及
用具有包括在所述第二部分映射中的分配的分配来盖写同时包括在 所述第一部分映射和所述第二部分映射两者中的任何分配;以及
从所述系列中移除所述第二部分映射。
9.如权利要求1所述的方法,其特征在于,还包括将来自低速存储的数 据高速缓存在高速存储中,包括:
将第一部分映射(3910)储存在所述高速存储(3960)中;
将第二部分映射(3930)储存在所述低速存储(3950)中;以及
对所述系列中的部分映射排序,使得所述第一部分映射(3910)的第一状 态通过参考所述第二部分映射(3930)来定义。
10.如权利要求9所述的方法,其特征在于,所述高速存储(3960)包括 存储器,而所述低速存储(3950)包括盘存储。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200680050056.1/1.html,转载请声明来源钻瓜专利网。