当前位置: 首页 > 专利查询>微软公司专利>正文

在页级跟踪重做完成制造技术

技术编号:7843349 阅读:212 留言:0更新日期:2012-10-13 01:43
本发明专利技术涉及在页级跟踪重做完成。各实施例涉及实现过渡重做阶段以允许先于重做阶段的数据访问,以及涉及确定要在过渡重做阶段期间处理哪些包括未经处理的事务的数据页。在一实施例中,计算机系统启动数据库恢复的分析阶段,该阶段扫描数据库事务日志并构建包括与未经处理的数据事务相对应的页的脏页表。计算机系统在最终重做阶段之前从该脏页表中确定要在过渡重做阶段期间处理哪些页。计算机系统在到达最终重做阶段之前在过渡重做阶段期间处理所确定的页,并在系统事务重做阶段完成后,使以下内容可用:在过渡重做阶段期间被处理的那些页以及未被调度为要在最终重做阶段期间进行处理的那些数据库页。

【技术实现步骤摘要】

本专利技术涉及先于重做阶段的数据访问的技木。
技术介绍
计算机已变得高度集成于工作、家庭、移动设备以及许多其他地方中。计算机可快速且有效地处理大量信息。被设计成在计算机系统上运行的软件应用允许用户执行包括商业应用、学校作业、娱乐等等在内的各种各样的功能。软件 应用通常被设计成执行特定的任务,诸如用于草拟文档的文字处理器应用或者用于发送、接收和组织电子邮件的电子邮件程序。在许多情况下,软件应用被设计为与其他软件应用或其他计算机系统交互。例如,因特网用户可经由web浏览器与web服务器进行交互。用户可请求诸如电子邮件的特定服务并接收与其相对应的数据。在一些情况下,web服务器可从数据库检索数据,以履行用户的请求。这些数据库可存储几百万用户的数据。因此,数据库被频繁地备份,以确保用户数据是安全的。然而,有时候,数据服务器可发生故障,并且这些故障可在客户机或服务器事务正在进行时发生。随后要执行多个步骤来使该数据库重新在线。在这些步骤正在被执行时,用户不能访问来自该数据库的数据。
技术实现思路
在此描述的各实施例涉及实现过渡重做阶段以允许先于重做阶段的数据访问,并涉及确定要在过渡重做阶段期间处理哪些包含未经处理事务的数据页。在一个实施例中,计算机系统启动数据库恢复的分析阶段,该阶段扫描数据库事务日志并构建包括与未经处理的数据事务相对应的页的脏页表。计算机系统在最終重做阶段之前从脏页表中确定要在过渡重做阶段期间处理哪些页。计算机系统在到达最终重做阶段之前在过渡重做阶段期间处理所确定的页,并在系统过渡重做阶段完成后,使以下内容可用在过渡重做阶段期间被处理了的那些页以及未被调度为要在最終重做阶段期间进行处理的那些数据库页。在另ー个实施例中,计算机系统启动数据库恢复的分析阶段,该阶段扫描数据库事务日志并构建包括与未经处理的数据事务相对应的页的脏页表。计算机系统访问数据库事务日志以确定哪些优先数据页已在特定时间段内被访问了阈值次数。计算机系统还访问脏页表以确定要在过渡重做阶段期间处理哪些包括未经处理的事务的数据页。计算机系统然后在到达最终重做阶段之前在过渡重做阶段期间处理优先数据页和所确定的包括未经处理的事务的数据页两者。提供本
技术实现思路
以便以简化形式介绍将在以下具体实施方式中进ー步描述的ー些概念。本
技术实现思路
并非g在标识所要求保护的主题的关键特征或必要特征,也不g在用于帮助确定所要求保护的主题的范围。另外的特征和优点将在以下的描述中阐述,并且部分可从该描述中显而易见,或者可以从此处的教示实践中习得。本专利技术的特征和优点可以通过在所附权利要求中特别指出的手段和组合来实现并获取。本专利技术的特征将从以下描述和所附权利要求书中变得完全显而易见,或者可通过如下所述对本专利技术的实践而获知。附图说明为了进一步阐明本专利技术的各实施例的以上和其他优点和特征,将參考附图来呈现本专利技术的各实施例的更具体的描述。可以理解,这些附图只描绘本专利技术的典型实施例,因此将不被认为是对其范围的限制。本专利技术将通过使用附图用附加特征和细节来描述和解释,附图中图I示出了在其中本专利技术的各实施例可用于包括实现过渡重做阶段以允许先于重做阶段的数据访问和确定要在过渡重做阶段期间处理哪些包括未经处理的事务的数据页的计算机体系结构。图2示出了用于实现过渡重做阶段以允许先于重做阶段的数据访问的示例方法的流程图。 图3示出了用于确定要在过渡重做阶段期间处理哪些包括未经处理的事务的数据页的示例方法的流程图。图4示出示例数据库恢复阶段排序的流程图。具体实施例方式在此描述的各实施例涉及实现过渡重做阶段以允许先于重做阶段的数据访问,并涉及确定要在过渡重做阶段处理哪些包含未经处理的事务的数据页。在一个实施例中,计算机系统启动数据库恢复的分析阶段,该分析阶段扫描数据库事务日志并构建包括与未经处理的数据事务相对应的页的脏页表。计算机系统在最終重做阶段之前从脏页表中确定要在过渡重做阶段期间处理哪些页。计算机系统在到达最终重做阶段之前在过渡重做阶段期间处理所确定的页,并在系统过渡重做阶段完成后,使以下内容可用在过渡重做阶段期间被处理了的那些页以及未被调度为要在最終重做阶段期间进行处理的那些数据库页。在另ー个实施例中,计算机系统启动数据库恢复的分析阶段,该分析阶段扫描数据库事务日志并构建包括与未经处理的数据事务相对应的页的脏页表。计算机系统访问数据库事务日志以确定哪些优先数据页已在特定时间段内被访问了阈值次数。可在运行时期间确定关于哪些页被频繁访问的信息,并将该信息记录在事务日志中。在崩溃以后,数据恢复过程可使用日志中的信息来确定哪些页被频繁地访问。计算机系统还访问脏页表以确定要在过渡重做阶段期间处理哪些包括未经处理的事务的数据页。计算机系统然后在到达最终重做阶段之前在过渡重做阶段期间处理优先数据页和所确定的包括未经处理的事务的数据页两者。由于各用户工作量可阻塞(block)在对这些页的重做之后才进行,因此包括优先(被频繁访问的)页可能是有好处的。以下讨论现涉及可以执行的多种方法以及方法动作。应当注意,虽然这些方法动作可能是按一定次序讨论的,或者是在流程图中被描绘为是按照特定顺序进行的,然而并非必然需要特定的次序,除非特别声明,或者是在ー个动作被执行之前因为该动作依赖于另ー动作的完成而需要的情況。本专利技术的各实施例可包括或利用专用或通用计算机,该专用或通用计算机包括诸如例如一个或多个处理器和系统存储器等计算机硬件,如以下更详细讨论的。本专利技术范围内的各实施例还包括用于承载或存储计算机可执行指令和/或数据结构的物理和其他计算机可读介质。这样的计算机可读介质可以是可由通用或专用计算机系统访问的任何可用介质。存储计算机可执行指令的计算机可读介质是计算机存储介质。承载计算机可执行指令的计算机可读介质是传输介质。由此,作为示例而非限制,本专利技术的各实施例可包括至少两种显著不同的计算机可读介质计算机存储介质和传输介质。计算机存储介质包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储或其他磁存储设备、或可用于存储计算机可执行指令或数据结构形式的所需程序代码装置且可由通用或专用计算机访问的任何其他介质。“网络”被定义为允许在计算机系统和/或模块和/或其他电子设备之间传输电子数据的ー个或多个数据链路。当信息通过网络或另ー个通信连接(硬连线、无线、或者硬连线或无线的组合)传输或提供给计算机吋,该计算机将该连接适当地视为传输介质。传输介质可包括可用于携带计算机可执行指令或数据结构形式的数据或所需程序代码装置且可由通用或专用计算机访问的网络和/或数据链路。上述的组合也应被包括在计算机可读 介质的范围内。此外,在到达各种计算机系统组件之后,计算机可执行指令或数据结构形式的程序代码装置可从传输介质自动传输到计算机存储介质(或反之亦然)。例如,通过网络或数据链路接收到的计算机可执行指令或数据结构可被缓存在网络接ロ模块(例如,“NIC”)内的RAM中,然后最終被传输到计算机系统RAM和/或计算机系统处的较不易失性的计算机存储介质。因而,应当理解,计算机存储介质可被包括在还利用(或甚至主要利用)传输介质的计算机系统组件中。计算机可执行指令包括,例如使通用计算机、专用计算机、或专用处理设备执行某一功能或某组功能的指令和数据本文档来自技高网
...
<a href="http://www.xjishu.com/zhuanli/55/201210071285.html" title="在页级跟踪重做完成原文来自X技术">在页级跟踪重做完成</a>

【技术保护点】

【技术特征摘要】
2011.03.18 US 13/051,9701.在包括多个计算系统的计算机联网环境中的包括至少一个处理器和存储器的计算机系统处,一种用于实现过渡重做阶段以允许先于重做阶段的数据访问的计算机实现的方法,所述方法包括 启动数据库恢复的分析阶段(410)的动作,其中所述分析阶段扫描数据库事务日志(135)并构建包括与未经处理的数据事务相对应的一个或多个页(141)的脏页表(140); 在所述最终重做阶段(430)之前从所述脏页表中确定要在所述过渡重做阶段(415)期间处理哪些页的动作; 在到达所述最终重做阶段之前在所述过渡重做阶段期间处理所确定的页的动作;以及 在系统事务重做阶段(420)完成后使以下内容可用的动作在所述过渡重做阶段期间被处理了的那些页以及未被调度为要在所述最终重做阶段期间进行处理的那些数据库页。2.如权利要求I所述的方法,其特征在于,在页级跟踪重做完成,使得正在所述最终重做阶段中进行处理的所请求页只是被阻塞直到所述所请求页为已重做的为止,并且所述所请求页在所述最终重做阶段完成之后被释放。3.如权利要求2所述的方法,其特征在于,用户请求是在所述最终重做阶段完成之前在所述数据库处被接收和处理的。4.如权利要求I所述的方法,其特征在于,还包括向与在所述过渡重做阶段期间要处理的各页相对应的各脏页表条目添加标记的动作。5.如权利要求4所述的方法,其特征在于,还包括实例化一事件的动作,该事件被配置为等待被标记为要在所述最终重做阶段期间进行处理的各脏页表页。6.如权利要求4所述的方法,其特征在于,还包括使用所添加的标记来创建要在所述过渡重做阶段期间处理的页的链表。7.如权利要求I所述的方法,其特征在于,还包括确定哪些页是系统事务重做所必需的。8.如权利要求7所述的方法,其特征在于,还包括标记要在所述系统事务重做期间处理的那些页,其中所述标记指示这些页要在所述过渡重做阶段中被处理。9.如权利要求I所述的方法,其特征在于,所确定的要在所述过渡重做阶段期间处理的页包括已被访问了阈值次数的优先数据页。10.如权利要求9所述的方法,其特征在于,所述优先数据页包括以下各项中的至少一项系统事务页、所述脏页表中列出的页和事务日志。11.如权利要求I所述的方法,其特征在于,每一页在被访问之前被锁存,使得在所述最终重做阶段期间,如果页正在等待被重新处理或者如果重做没有完成,则用户请求被阻塞直到所述最终重做阶段完成处理所请求的页为止。12.一种用于实现一种方法的计算机程序产品...

【专利技术属性】
技术研发人员:R·D·达曼卡H·R·科达瓦拉
申请(专利权)人:微软公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1