管理数据库恢复时间。一方法包括接收指定数据库的目标恢复时间的用户输入。该方法还包括确定从持久存储读取数据库的数据页的时间量。该方法还包括确定处理数据库的日志记录以对数据页应用日志记录中指定的改变的时间量。该方法还包括确定如果发生数据库故障则当前要在恢复中要读取的脏页的数量。该方法还包括确定如果发生数据库故障则要在恢复中处理的日志记录的数量。该方法还包括调整当前要在恢复中读取的脏页的数量或要在恢复中处理的日志记录的数量中的至少一个以满足指定的目标恢复时间。
【技术实现步骤摘要】
管理数据库恢复时间
本专利技术涉及数据库管理。
技术介绍
计算机和计算系统已经影响了现代生活的几乎每个方面。计算机通常在工作、休闲、保健、运输、娱乐、家政管理等中都有涉猎。计算系统可用于实现数据库系统。数据库系统通常存储信息供其它客户机计算系统使用。数据库系统允许不同的客户机访问数据库系统,包括执行诸如从数据库系统读取数据、向数据库系统写入数据或对数据库系统更新数据的动作。因为不同的客户机访问可能会彼此冲突,数据库系统可实现事务数据处理功能。例如,假定客户机访问数据库以将钱从一个账户转帐到另一个账户。客户机将读取关于第一账户的信息以确定第一账户中资金的金额。如果资金的金额是足够的,则客户机将通过使第一账户的账户余额减少要转帐的金额(具体地通过用减少的余额来替换第一账户的余额)来对第一账户记入借方(debit)。客户机然后将(或在相同时间或重叠的时间)访问第二账户并读取第二账户的余额。客户机可通过使要转帐的金额加上第二账户的余额并将该总数写入数据库作为第二账户的余额来对要转帐的金额记入贷方(credit)。如果第二客户机在第一客户机正在执行转帐时能够访问账户余额,则第二客户机可能会读取过时的信息,或者可能写入稍后可能会被第一客户机重写或可能引起转帐交易问题的数据。为此,数据库系统使用各种类型的事务计算。例如,在一些示例中,数据库使用乐观事务。在这些事务中,数据库假定其它系统将不会干扰这些事务。在事务受到干扰的情况下,数据库存储了在该事务开始之前存在的值,且可使用存储的值来中止事务,并使受到影响的数据库元素返回到它们在事务开始之前所处的状态中。具体地,数据库系统将存储数据的老版本和数据的新版本。当作出持久的改变或提交了事务时,数据的新版本成为数据库的当前状态。当事务被中止时,数据的老版本保持作为数据库的当前状态。数据库通常具有数据库项目的存储器中版本以及存储在持久存储中(诸如硬盘上)的数据库项目的持久存储的版本。存储器中版本可被存储在缓冲池中。当正在操作数据库中的项目时,它们通常使用存储器中的副本来操作。例如,数据库项目可从诸如硬盘的持久存储中读取以存入诸如系统RAM和/或处理器高速缓存的存储器中。计算系统然后可访问数据库来读取数据库项目,数据库项目将按照存储器中的副本提供给计算系统。计算系统可修改数据库项目,这导致存储器中的修改。尚未被保存到持久存储中的、缓冲池中的被应用了改变的页在此可被称为脏页。通常,对数据库项目的改变通常在事务日志中作出或记录在事务日志中。当数据库故障发生和/或发现数据库不一致时,可使用事务日志来还原数据库。具体地,可使用事务日志来重新应用已经提交的事务的改变,并退回来自正在进行中但在发现不一致性时未被提交的事务的改变。事务日志包括各种日志记录。每一日志记录与数据库页相关联,并包括对数据库页的改变。通常当发现数据库不一致时,使用持久存储中的数据库的数据来解决该不一致性。因此,为了解决不一致性,数据页从持久存储读取、存储在存储器中,且根据事务日志应用改变。数据库的还原可通过周期性地对持久存储写入日志记录改变来优化。具体地,日志记录可通过将日志记录的数据页读入存储器中、对数据页作出在日志记录中标识的改变、并将数据页写回至持久存储中来处理。日志记录通常由日志序列号(LSN)标识。LSN通常是单调增加的号码,使得可容易地确定日历记录是以何种次序来创建的。周期性地将日志记录改变写入持久存储中通常是结合设置检查点来完成的。检查点表示时间点,且可与LSN相关联。可设置检查点,且LSN可与检查点相关联。系统然后开始更新数据库页,从最老的LSN开始,并朝向与新近设置的检查点相关联的LSN执行。可向系统确保,已经处理了下一最新近设置的检查点(即,当前设置的检查点之前设置的检查点)之前的所有日志记录,并且其中归档的改变被应用于持久存储。还原系统的恢复时间在系统中可能会变化。尽管检查点设置可减少恢复时间,由于在检查点之间有太多日志记录或页要处理,这样仍可能导致无法接受的恢复时间,或者当要处理相对小数量的改变时,由于要执行的检查点设置而导致资源的过度利用。具体地,尽管检查点可减少恢复时间,通常也需要显著的资源利用来从持久存储中读取数据页并根据日志记录应用改变。对这样的资源的使用可在管理恢复时间时验证,然而当设置检查点不会显著地减少恢复时间时,这可能是一种对资源的低效使用或是一种会从正在执行的其它操作取走资源的使用。此外,即使脏页的百分比很小,检查点将通常遍历整个缓冲池来寻找脏页。在较大的存储器系统中,脏页的百分比与总的缓冲池大小相比可能小得多。此外,在检查点持续时间期间,禁用所缓冲的写入日志记录的生成。如果在注意到检查点完成之前,数据库变为不一致或崩溃,则可能没有检测已经向持久存储发出的写入操作的机制,从而导致恢复期间的不必要的数据页读取以从持久存储中读取实际上已经根据对其应用的日志记录更新的数据页。在没有估计预期的恢复时间的任何合理机制的情况下,自动检查点是基于无法表征所有不同类型的工作负载的推断的。这导致不可预测的恢复表现,并使得“最小恢复间隔”不可靠。在此要求保护的主题不限于解决任何缺点或仅在诸如上述环境中操作的各个实施例。相反,提供该背景仅用以示出在其中可实践在此描述的部分实施例的一个示例性
技术实现思路
此处示出的一个实施例涉及一种在计算环境中实施的方法。该方法包括用于管理数据库恢复时间的动作。该方法包括接收指定数据库的目标恢复时间的用户输入。该方法还包括确定从持久存储读取数据库的数据页的时间量。该方法还包括确定处理数据库的日志记录以对数据页应用日志记录中指定的改变的时间量。该方法还包括确定如果发生数据库故障则当前要在恢复中读取的脏页的数量。该方法还包括确定如果发生数据库故障则要在恢复中处理的日志记录的数量。该方法还包括根据指定的目标恢复时间,调整当前要在恢复中读取的脏页的数量或要在恢复中处理的日志记录的数量中的至少一个。提供本
技术实现思路
以便以简化形式介绍将在以下具体实施方式中进一步描述的一些概念。本
技术实现思路
并非旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。另外的特征和优点将在以下的描述中阐述,并且部分可从该描述中显而易见,或者可以从此处的教示实践中习得。本专利技术的特征和优点可以通过在所附权利要求中特别指出的手段和组合来实现并获取。本专利技术的特征将从以下描述和所附权利要求书中变得完全显而易见,或者可通过如下所述对本专利技术的实践而获知。附图说明为了描述可获得本主题的上述和其它优点和特征的方式,将通过参考附图中示出的本主题的具体实施例来呈现以上简要描述的本主题的更具体描述。应该理解,这些附图仅描绘了各典型实施例,因此其不应被认为是对范围的限制,各实施例将通过使用附图用附加特征和细节来描述并解释,在附图中:图1示出了数据库恢复系统的各部分;以及图2示出了管理数据库恢复时间的方法。具体实施方式此处描述的一些实施例包括根据系统中的脏页数量、活动日志大小和系统IO特征来对数据库系统的预期恢复时间建模的功能。此外在一些实施例中,系统IO特征可以是实际系统的观察到的特征。该模型可用于估计数据库的恢复时间,并试图保证用户指定的最小恢复间隔。可实现一些实施例,其中最本文档来自技高网...
【技术保护点】
【技术特征摘要】
2011.03.04 US 13/041,0911.一种在计算环境中的管理数据库恢复时间的方法,所述方法包括:(a)接收指定数据库的目标恢复时间的用户输入(202);(b)确定从持久存储读取数据库的数据页的时间量(204);(c)确定处理数据库的日志记录以对数据页应用日志记录中指定的改变的时间量(206);(d)确定如果发生数据库故障则当前要在恢复中读取的脏页的数量(208),其中脏页的一个列表被包含在一个或多个脏页列表内,每个脏页列表包括用于一个或多个脏页中的每个脏页的页面标识符以及相关联的首次弄脏日志序列号(firstDirtiedLSN),并且其中每个数据页由页面标识符、它是否是脏页的指示以及与对应于对所述每个数据页的最新近改变的日志条目相对应的页面日志序列号(pageLSN)来标识;(e)确定如果发生数据库故障则要在恢复中处理的日志记录的数量(210);(f)根据指定的目标恢复时间,调整当前要在恢复中读取的脏页的数量或要在恢复中处理的日志记录的数量中的至少一个(212)。2.如权利要求1所述的方法,其特征在于,在正在进行的基础上重复所述动作(d)、(e)和(f)以试图在数据库操作的一段时间上维持期望的恢复时间。3.如权利要求1所述的方法,其特征在于,确定当前要在恢复中要读取的脏页的数量是基于所述一个或多个脏页列表来确定的。4.如权利要求3所述的方法,其特征在于,所述一个或多个脏页列表是基于轻量检查点来维护的,轻量检查点不对持久存储写入页或改变,而是记录标识最老脏页的信息。5.如权利要求3所述的方法,其特征在于,按照调度器维护一个或多个脏页列表。6.如权利要求1所述的方法,其特征在于,接收指定数据库的目标恢复时间的用户输入是在不接收指定启动期间的IO目标或最后一个检查点之后的日志边界的附加用户输入的情况下完成的。7.如权利要求1所述的方法,其特征在于,确定从持久存储读取数据库的数据页的时间量是基于数据库的持久存储的观察到的IO特征的。8.如权利要求1所述的方法,其特征在于,根据指定的目标恢复时间,调整当前要在恢复中读取的脏页的数量或要在...
【专利技术属性】
技术研发人员:R·D·达曼卡,H·R·科达瓦拉,
申请(专利权)人:微软公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。