内容引擎异步升级框架制造技术

技术编号:2913337 阅读:217 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供一种内容引擎异步升级框架。本发明专利技术的实施例提供一种工具用于对计算机数据库中存储的数据执行异步升级。在一个实施例中,升级工具可配置成将现有数据记录分成多个数据块。每个数据块可以排列在异步队列中。当存在可用的处理能力时,数据块可进行升级操作,并且另一数据块可被添加到该队列中。一旦所有数据块都被升级,已升级的数据记录就可以供访问数据库的应用使用。在一个实施例中,可以对数据记录执行不同类型的升级操作。

【技术实现步骤摘要】

本专利技术的实施例涉及计算机数据库。更为特别地,本专利技术的实施例提供一种工具用于升级数据库中被访问的数据记录。
技术介绍
数据库是公知的用于存储、搜索以及检索计算机中存储的信息的系统。现今所使用的最为流行的数据库类型是关系数据库,其通过使用可以用多种不同方式来整理和访问的表的集合来存储数据。用户使用关系数据库管理系统(DBMS)来访问关系数据库中的信息。关系数据库中的每个表包括一个列或多个列的集合。每列通常指明名称和数据类型(例如,整数、浮点数、字符串,等等)并且可用于存储公共的数据元。随着时间的推移,应用开发者发布现有软件应用的新版本,例如数据库、文字处理器、应用服务器等等的新版本。当新软件版本被安装时,用户可能需要对使用该软件的以前版本所创建的数据记录进行升级。例如,在内容管理的上下文中,传统的升级工具可被配置成执行诸如升级关于相对较小数量的数据库对象的数据库元数据之类的任务。然而,传统的升级工具不能够在不让整个系统离线较长一段时间的条件下升级较大数量的文档。然而,这对于许多客户来说不是个可接受的解决方案,因为让内容管理工具离线较长一段时间可能简直是过于破坏运行中的商业操作。出于这种原因,不可能针对具有大量实例(诸如文档)的对象执行升级。因此,老数据可能在数据库中保持不变,同时新记录被根据新版本的软件创建。取决于新软件版本所引入的功能,新的实现可能必须实时地转换/升级老数据(这使性能慢下来)或者忽略它(其花费额外的存储)。作为替代,基于将被访问的数据记录,用户可能必须同时使用软件应用的-->新老版本二者。数据库中老数据和新数据的共存还可能造成数据矛盾并导致不正确的查询结果。
技术实现思路
本专利技术的实施例提供一种异步升级工具用于升级计算机数据库中所存储的数据。本专利技术的一个实施例包括一种方法用于升级多个数据库记录的方法。该方法通常可包括接收将要对多个数据库记录执行的升级操作的选择并且生成多个数据块。每个数据块相对于其它数据块而言可涉及所述多个数据库记录中的不同的数据库记录集合。该方法还可包括,当任何数据块保持在异步升级队列中时,确定是否存在资源可用于处理升级队列中的下一个数据块。当确定存在可用的资源时,就从异步升级队列中选择一数据块,以及对所选数据块中涉及的数据库记录执行已选升级操作。如果任何数据块保持在所述异步升级队列中,则标识待升级的下一个数据块。本专利技术的另一实施例包括一种包含程序的计算机可用存储介质,该程序当被运行时执行用于升级多个数据库记录的操作。该操作通常可包括接收将要对多个数据库记录执行的升级操作的选择,生成多个数据块。每个数据块相对于其它数据块而言可涉及所述多个数据库记录中的不同的数据库记录集合。该操作还可包括,当任何数据块保持在异步升级队列中时,确定是否存在资源可用于处理升级队列中的下一个数据块。当确定存在可用的资源时,就从异步升级队列中选择数据块,以及对所选数据块中涉及的数据库记录执行已选升级操作。如果任何数据块保持在所述异步升级队列中,则标识待升级的下一个数据块。本专利技术的另一实施例包括一种具有处理器和包含程序的存储器的系统,该程序当被处理器执行时被配置成执行用于升级多个数据库记录的操作。该程序通常可配置成执行以下步骤:接收将要对多个数据库记录执行的升级操作的选择,以及生成多个数据块。每个数据块相对于其它数据块而言可涉及所述多个数据库记录中的不同的数据库记录集合。该程序执行的步骤还可包括,当任何数据块保持在异步升级队-->列中时,确定是否存在资源可用于处理升级队列中的下一个数据块。当确定存在可用的资源时,就从异步升级队列中选择数据块,以及对所选数据块中涉及的数据库记录执行已选升级操作。如果任何数据块保持在所述异步升级队列中,则标识待升级的下一个数据块。附图说明通过参考实施例,可以获知并详细理解本专利技术的上述特性、优点和对象,获得对上面简要概括的本专利技术的具体描述,其中在附图中对实施例进行了说明。然而注意,这些附图仅是说明本专利技术的典型实施例,并且由此不应看成对本专利技术范围的限制,因为本专利技术可包括其他等效的实施例。图1说明根据本专利技术的一个实施例的示例性计算系统。图2说明根据本专利技术的一个实施例的用于对数据库记录执行异步升级的方法。图3A-图3D提供对根据本专利技术的一个实施例的用于对多个数据库记录进行升级的方法的说明。具体实施方式本专利技术的实施例可用于升级系统(例如关系数据库)所存储的多个数据对象,而且还不必使系统离线。通常,数据记录是根据应用所需要的特定格式来构造的。例如,数据库可包含存储供内容引擎使用的应用内容的记录(例如,图像文件、音频文件、以及文本文件,等等),其用于将内容提供给发请求的用户。在某些情况下,软件应用(例如,用于对用户对信息的请求做出响应的内容引擎)可能被修改从而需要新的数据格式或者只是升级到新版本。在这样的情况下,与该应用相关联的现有数据记录可能必须被升级到新的数据格式。例如,如果经修改的应用结合了某种类型的数据加密,则任何现有数据记录可能必须被升级成具有那种类型的数据加密。在数据库包括大量数据记录的情况下,升级数据可能在内容管理系统上强加较大的处理负荷。因此,内容引擎可能-->不可用于对用户请求做出响应,诸如不能给商业网站提供内容或者不能给在公共数据库中存储记录的其他软件应用提供数据记录。本专利技术的实施例提供一种工具用于对计算机数据库中所存储的数据执行异步升级。在一个实施例中,升级工具可被配置成将现有数据记录分成数据块。每个数据块可以排列在异步队列中。当存在可用的处理能力时,数据块可进行升级操作,并且另一数据块可被添加到该队列中。一旦所有数据块都被升级,已升级的数据记录就可以供访问数据库的应用使用。在一个实施例中,可以对数据记录执行不同类型的升级操作。通过实现对分离的数据块使用异步升级操作,该工具可减少由于数据升级而给数据库的可用性或性能带来的影响。因此,本专利技术的实施例可以在系统处于“活动(live)”时进行操作,因为异步升级事件是在数据库处于“联机(online)”时进行执行的。这么做使得用户能够在进行升级的同时进行工作。此外,通过将数据记录分成彼此独立地进行升级的多个块,较大的升级可以以较小的组块来处理。这么做使得升级工作能够随着时间的流逝而发生。而且,可以并行地在多个服务器上执行升级,使得最小化对联机客户应用的影响。此外,对系统的用户而言,升级可以透明地执行。也即,在具有适当的过渡逻辑的背景下执行升级,允许应用使用已升级的数据或未升级的数据来工作。因此,在升级进行时,系统用户不需要知道这些升级处理或者不需要中断使用系统。下面,参考本专利技术的实施例。然而,应当理解,本专利技术不局限于具体描述的各实施例。相反,以下特性和要素的任何组合,无论是否涉及不同的实施例,都被预期用于实现并实施本专利技术。此外,在各个实施例中,本专利技术提供了优于现有技术的许多优点。然而,虽然本专利技术的各实施例可获得优于其他可能的解决方案和/或现有技术的优点,但是无论特定优点是否是通过给定的实施例获得的,都不会限制本专利技术。因此,除了在权利要求(书)中明确记载之外,下述的方面、特性、实施例和优点仅仅是说明性的而不被看成所附权利要求的要素或限制。同样,除了在权利要求(书)中明确记载之外,对“本专利技术”的参考不应当被本文档来自技高网
...

【技术保护点】
一种用于升级多个数据库记录的计算机实现的方法,包括: 接收将要对所述多个数据库记录执行的升级操作的选择; 生成多个数据块,其中每个数据块相对于其它数据块而言涉及所述多个数据库记录中的不同的数据库记录集合; 将所述多个数据块 添加到异步升级队列;以及 当任何数据块保持在所述异步升级队列中时: 确定是否存在可用于处理所述升级队列中下一个数据块的资源, 当确定存在可用的资源时,从所述异步升级队列中选择数据块, 对所选数据块中涉及的数据库记录执 行选择的升级操作,以及 如果任何数据块保持在所述异步升级队列中,则标识待升级的下一个数据块。

【技术特征摘要】
US 2007-11-28 11/946,6831.一种用于升级多个数据库记录的计算机实现的方法,包括:接收将要对所述多个数据库记录执行的升级操作的选择;生成多个数据块,其中每个数据块相对于其它数据块而言涉及所述多个数据库记录中的不同的数据库记录集合;将所述多个数据块添加到异步升级队列;以及当任何数据块保持在所述异步升级队列中时:确定是否存在可用于处理所述升级队列中下一个数据块的资源,当确定存在可用的资源时,从所述异步升级队列中选择数据块,对所选数据块中涉及的数据库记录执行选择的升级操作,以及如果任何数据块保持在所述异步升级队列中,则标识待升级的下一个数据块。2.根据权利要求1所述的方法,还包括:在生成所述多个数据块之前,设置升级状态标志以指示选择的升级操作的未完成状态。3.根据权利要求2所述的方法,还包括:当完成针对所述多个数据块的选择的升级操作时,设置所述升级状态标志以指示选择的升级操作的完成状态。4.根据权利要求1所述的方法,其中所述升级操作是从一种或多种已定义类型的升级操作中选择的,并且其中所述一种或多种已定义类型的升级操作中的每一种包括根据用来访问所述多个数据库记录的应用的至少一个需求对数据库记录进行的不同修改。5.根据权利要求1所述的方法,其中所述多个数据库记录以特定软件应用的第一版本所使用的第一格式来存储数据。6.根据权利要求5所述的方法,其中选择的升级操作被用于将所述多个数据库记录升级成由所述特定软件应用的第二版本所使用的第二格式。7.根据权利要求1所述的方法,其中标识下一个数据块的步骤包括使用所述下一个数据块的标识符来设置承袭关键字。8.根据权利要求1所述的方法,其中所述多个数据库记录被异步升级,所述异步是相对于访问所述多个数据库记录的其他数据库操作而言。9.一种系统,包括:处理器;以及包含程序的存储器,所述程序当被所述处理器执行时被配置成...

【专利技术属性】
技术研发人员:毕皖昌MRC西曼SM沃特斯
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

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

1