CN101438261B - 执行逐步升级的方法及系统 - Google Patents
执行逐步升级的方法及系统 Download PDFInfo
- Publication number
- CN101438261B CN101438261B CN2007800159798A CN200780015979A CN101438261B CN 101438261 B CN101438261 B CN 101438261B CN 2007800159798 A CN2007800159798 A CN 2007800159798A CN 200780015979 A CN200780015979 A CN 200780015979A CN 101438261 B CN101438261 B CN 101438261B
- Authority
- CN
- China
- Prior art keywords
- data
- version
- domain name
- application program
- progressively
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/658—Incremental updates; Differential updates
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
描述了执行逐步升级的技术。装置可以包括具有应用程序的第一版本的数据集的数据库,和耦合到该数据库的计算设备。该计算设备可以具有处理器和存储器,存储器存储应用程序的第一版本、安装程序、和逐步更新引擎。处理器可以执行安装程序来安装应用程序的第二版本,且所述逐步更新引擎一次一个数据段地将数据集转换到第二版本所使用的数据模式。对其它实施方式也予以描述并主张权利。
Description
背景
软件应用程序周期性地发布具有改进的特征的新版本。将软件应用程序升级到新版本可能涉及将用户数据从现有数据模式转换到新版本所使用的新的数据模式。在某些情况下,用户数据的量可能过大以至于升级操作可能使设备或网络对于延长的时间段变得不可用。例如,基于服务器的软件应用程序可能具有万亿字节级的用户数据,其可能花几天或甚至几周来升级到新的数据模式。关键任务商业系统或高可用性系统可能发现这种延长的停机时间段是不可接受的。因此,可能需要改进升级技术来解决这些和其它问题。
概述
提供本概述以便以简化的形式介绍将在以下详细描述中进一步描述的一些概念。本概述并不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于限制所要求保护的主题的范围。
各实施例一般可以针对将软件应用程序逐步升级到该软件应用程序的新版本的升级技术。在一些实施例中,可以使用逐步升级技术来分阶段地更新应用程序的各部分和/或该应用程序的数据集。例如,在一实施例中,安装程序可被安排成在与应用程序的先前版本相同或类似的硬件平台上安装该应用程序的新版本。逐步更新引擎可被安排成将该应用程序的先前版本的数据集转换到该应用程序的新版本所使用的新的数据模式。更具体地,逐步更新引擎可以一次一个数据段地、分阶段地转换数据集。以此方式,在转换操作期间客户机可以访问先前版本的其它数据段,藉此授予对该应用程序的受限的使用而不是致使该应用程序完全不可用。对其它实施方式也予以描述并主张权利。
附图
图1示出网络的示例性实施例。
图2示出第一逻辑流程的示例性实施例。
图3示出第二逻辑流程的示例性实施例。
图4示出第三逻辑流程的示例性实施例。
图5示出第四逻辑流程的示例性实施例。
详细描述
各实施例一般可以针对软件应用程序的升级技术。具体而言,各实施例可以针对逐步升级技术,其中可以分阶段地升级应用程序以减少停止时间和对客户机和/或用户的潜在影响。这对于例如使用诸如被用来提供web主存服务的那些等基于服务器的web应用程序的大规模公司网络可能尤其重要。此外,在升级过程期间,逐步升级技术可以允许客户机继续访问基于服务器的web应用程序的各部分。这种受限的访问对于关键任务和高可用性应用程序可能特别重要。结果,在升级设备或网络的软件应用程序时,网络管理员可以体验减少了的任务和耗费,且用户可以体验向经升级的应用程序和服务的更无缝的转换。
图1示出网络的一示例性实施例。图1示出网络100的框图。网络100可以表示适于实现各种实施例的通用网络体系结构。网络100可以包括多个元素。元素可以包括被安排来执行特定操作的任何物理或逻辑结构。视给定的一组设计参数或性能约束的需要,每一元素可被实现为硬件、软件、或其任意组合。硬件元素的示例可以包括处理器、微处理器、电路、电路元件(例如,晶体管、电阻器、电容器、电感器等)、集成电路、专用集成电路(ASIC)、可编程逻辑器件(PLD)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、存储器单元、逻辑门、寄存器、半导体设备、芯片、微芯片、芯片组等。软件的示例可以包括任何软件组件、程序、应用软件、计算机程序、应用程序、系统程序、机器程序、操作系统程序、中间件、固件、软件模块、例程、子例程、函数、方法、接口、软件接口、应用程序接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、文字、值、符号、或其任意组合。虽然图1中示出的网络100在特定拓扑中具有有限数量的元素,但可以理解,网络100在给定实现所需的另选拓扑中可以包括更多或更少元素。各实施例不限于该上下文。
如图1所示,例如,网络100可以包括各种元素,如计算阵列140、服务器150、网络160、负载平衡器170、和客户机设备180-1-s。在一实施例中,例如,服务器150可以作为web服务器来实现。web服务器可以包括能够接受 来自客户机设备(例如,客户机180-1-s和/或计算设备122-1-n)的超文本传输协议(HTTP)请求以提供网页的计算设备。网页通常是使用诸如超文本标记语言(HTML)、可扩展标记语言(XML)、可扩展超文本标记语言(XHTML)、MICROSOFT标记语言(WordML)等某种形式的标记语言生成的文档。网络160可以包括使用诸如传输控制协议和网际协议(TCP/IP)等一种或多种因特网协议的分组网络。负载平衡器170可以包括以计算资源被以高效的方式使用的方式向一组联网的计算机服务器(例如,计算阵列140)分派工作负载的设备。负载平衡器170可以使用例如计算机、服务器、虚拟服务器、网络设备等来实现。
在各实施例中,计算阵列140可以包括多个计算设备122-1-n。计算设备122-1-n的示例可以包括,但不必限于,计算机、计算机系统、计算机子系统、工作站、终端、服务器、web服务器、虚拟服务器、个人计算机(PC)、台式计算机、膝上型计算机、超膝上型计算机、便携式计算机、手持式计算机、个人数字助理(PDA)、移动计算设备、和任何其它电子、机电或电气设备。各实施例不限于该上下文。
例如,在一实施例中,计算阵列140可被实现为服务器场,其中计算设备122-1-n的每一个都表示一个服务器、虚拟服务器、虚拟机、单板计算机(SBC)、服务器刀片、web服务器等。服务器场一般是通常由一个公司维护以实现超出一个机器的能力的服务器需求的计算机服务器的集合。通常,服务器场将主服务器和后备服务器两者同时分配给单个任务,以便在主服务器发生故障的情况下,后备服务器将接管主服务器的功能。例如,服务器场通常被用来提供web主存服务。web主存服务是向个人和组织提供在线系统以供存储信息、图像、视频、音频、文本、动画、电影、图片或可经由万维网(WWW或“web”)访问的任何其它形式的web内容等的一类因特网主存服务。web主机是在其拥有的服务器上提供空间以供其客户机使用以及提供因特网连接的公司,通常位于数据中心中。web主机还可以为其不拥有的、位于其数据中心中的服务器提供数据中心空间和到因特网的连接。
图1还示出计算设备122-1的更详细的框图。计算设备122-1可以表示任何计算设备122-1-n。在其最基本的配置106中,计算设备122-1通常包括至少 一个处理单元102和存储器104。存储器104可以使用机器可读的或计算机可读的、能够存储数据的任何介质来实现,包括易失性和非易失性存储器。例如,存储器104可以包括只读存储器(ROM)、随机存取存储器(RAM)、动态RAM(DRAM)、双数据率DRAM(DDRAM)、同步DRAM(SDRAM)、静态RAM(SRAM)、可编程ROM(PROM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪存、诸如铁电聚合物存储器等聚合物存储器、奥氏存储器、相变或铁电存储器、硅-氧化物-氮化物-氧化物-硅(SONOS)存储器、磁卡或光卡、或适于存储信息的任何其它类型的介质。如图1所示,存储器104可以存储各种软件程序,如一个或多个应用程序118、逐步更新引擎(GUE)119、安装程序120、和附带数据。
计算设备122-1还可以具有在配置106之外的另外的特征和/或功能。例如,计算设备122-1可以包括可移动存储108和不可移动存储110,这些存储还可以包括如前所述的各种类型的机器可读的或计算机可读的介质。计算设备122-1还可以具有一个或多个输入设备114,如键盘、鼠标、笔、语音输入设备、触摸输入设备等。诸如显示器、扬声器、打印机等一个或多个输出设备116也可以被包括在计算设备122-1中。
计算设备122-1还可以包括允许计算设备122-1与其它设备进行通信的一个或多个通信连接112。通信连接112可以包括各种类型的标准通信元件,如通信接口、网络接口、网络接口卡(NIC)、无线电、无线发射机/接收机(收发机)、有线和/或无线通信介质、物理连接器等。通信介质通常以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并包括任意信息传送介质。术语“已调制数据信号”指的是以在信号中编码信息的方式设定或更改其一个或多个特征的信号。作为示例而非局限,通信介质包括有线通信介质和无线通信介质。有线通信介质的示例可以包括导线、电缆、金属线、印刷电路板(PCB)、背板、交换光纤、半导体材料、双绞线、同轴电缆、光纤、经传播的信号等。无线通信介质的示例可以包括声学、射频(RF)频谱、红外和其它无线介质。此处使用的术语机器可读的和计算机可读的介质旨在包括存储介质和通信介质。
计算设备122-1-n的每一个都可以包括多个数据库。如参考计算设备122-1详细示出的,计算设备122-1可以被耦合到数据库124a、124b、126a、126b、128a和128b。一般地,每个数据库都可以被安排来存储计算设备122-1的各种类型的数据,且具体地,存储应用程序118a、118b的数据。例如,在一实施例中,配置数据库124a、124b可以存储应用程序118a、118b的配置数据。配置数据库124a可以存储应用程序118的第一版本(例如,应用程序118a)的配置数据,而配置数据库124b可以存储应用程序118的第二版本(例如,应用程序118b)的经转换的配置数据集。例如,在一实施例中,用户简档数据库126a、126b可以存储应用程序118a、118b的搜索和用户简档数据。用户简档数据库126a可以存储应用程序118的搜索和用户简档数据,而用户简档数据库126b可以存储应用程序118b的经转换的配置数据集。例如,在一实施例中,内容数据库128a、128b可以存储应用程序118a、118b的用户数据或内容数据。内容数据库128a可以存储应用程序118a的内容数据,而内容数据库128b可以存储应用程序118b的经转换的内容数据集。可以用计算设备122-1来实现其它类型的数据和数据库,且这些实施例不限于该上下文。
在各实施例中,应用程序118的每一版本都可以使用配置数据的、搜索和用户简档日期的、和/或内容数据的不同的数据模式。数据模式可以是定义诸如数据类型、数据结构、数据格式、内容、语义、句法等各种数据特征的模型。软件应用程序的不同版本可以使用不同的数据模式。因此,在任何升级操作期间,可能需要在不同的数据模式之间转换耦合到计算设备122-1的各数据库所存储的数据。例如,数据库124a、126a和128a可以存储根据适于与应用程序118一起使用的第一数据模式的数据,而数据库124b、126b和128b可以存储根据适于与应用程序118b一起使用的第二数据模式的、分别来自数据库124a、126a和128a的经转换的数据。各实施例不限于该上下文。
作为示例,内容数据库128a可以包括应用程序118a的数据集130。数据集130可以包括被称为数据段132-1-m的多个数据子集。数据段可以表示任何定义的或离散的数据集或子集。例如,数据段可以对应于WSS2.0版所主存的一给定门户网站或一组分层门户网站的数据子集。视给定实现的需要,数据段 132-1-m可以具有各不相同的大小或统一的大小。数据集130还可以根据适合应用程序118a的第一数据模式来存储。
在一般的操作中,网络100可被安排成执行计算阵列140的一个或多个计算设备122-1-n所存储或执行的一个或多个应用程序的逐步升级操作。假定计算设备122-1-n的每一个都实现一个或多个应用程序118,如基于服务器的web应用程序。基于服务器的web应用程序的一个示例可以包括微软()公司制造的 SERVICES(WSS)2.0版应用程序。WSS2.0版是向例如诸如客户机180-1-s等各客户机提供基本团队服务、门户网站和内联网功能的集成的应用程序套件。如数据集130所指示的,WSS2.0版的用户数据或内容数据可由内容数据库128a来存储。虽然作为示例参考WSS应用程序或应用程序套件描述了一些实施例,但可以理解,可以使用此处描述的逐步更新技术来升级由单个或多个计算设备执行的任何应用程序。各实施例不限于该上下文。
在某一时刻,假定WSS3.0版的开发完成了,且其已被公布以供一般使用。计算阵列140的管理员可能期望将计算阵列140的一个或多个计算设备122-1-n从WSS2.0版升级到WSS3.0版。为此,管理员可以选择计算设备122-1-n中的一个——如计算设备122-1——经由网络160来访问web服务器150以下载具有WSS3.0版、逐步更新引擎119、安装程序120、和附带数据和指令的安装包。另选地,计算设备122-1可以经由诸如CD-ROM设备等输入设备114来加载安装包。计算设备122-1可以执行安装包来将包括逐步更新引擎119的各安装组件复制的存储器104。
处理单元102可以执行安装程序120来安装应用程序118a的新版本(例如,应用程序118b)以供计算设备122-1使用。例如,应用程序118b可以包括WSS3.0版。安装程序120还可以将逐步更新引擎119作为应用程序118b的集成的或独立的部分来安装。逐步更新引擎119可被安排成管理应用程序118的升级操作。图形用户界面可以经由诸如监视器或其它类型的显示器等输出设备116向管理员提供多个升级选项。这些升级选项可以包括原地升级或逐步升级以及其它选项。原地升级可能是最容易的方式,因为所有的计算设备122-1-n都被离线、升级并随后一旦更新操作完成则放回到操作中。然而,原 地升级的代价是整个计算阵列140可能离线相当长的一段时间。例如,假定计算阵列140是主存10000个网站的web主存提供商的服务器场。假定升级时间为每个站点一分钟,则其将花大约10000分钟或大约一个星期来完成升级操作。作为对比,逐步升级可能在升级操作中引入额外的复杂性,但却允许计算阵列140的各部分在升级周期期间维持WSS操作,藉此向客户机设备180-1-j提供某些受限的功能。
为执行计算阵列140的逐步升级,逐步更新引擎119最初可以执行对计算设备122-1的逐步升级操作。一旦对计算设备122-1完成了升级操作,则可以将安装包传递给计算设备122-2以执行类似的升级操作。该过程在计算设备122-n之中继续,直到计算阵列140中的最后一个计算设备被最终升级。
作为计算设备122-1的应用程序118的升级操作的一部分,逐步更新引擎119可以开始转换来自各数据库的各种类型的信息或数据以供与应用程序118的第二版本(例如,应用程序118b)一起使用。例如,逐步更新引擎119可以开始从内容数据库128a中检索由数据集130所表示的内容数据,并将其从应用程序118a所使用的第一数据模式转换到应用程序118b所使用的第二数据模式。经转换的数据集130可被存储在数据库128b中以供应用程序118b使用。
逐步更新引擎119能以数据段132-1-m表示的离散的部分或组块为单位来转换数据集130。更具体地,逐步更新引擎可以一次一个数据段地转换数据集130。例如,管理员可以选择一个或多个数据段132-1-m以转换到第二数据模式。此外,管理员可以选择数据段132-1-m被转换的顺序。假定管理员选择首先转换数据段132-1,随后是数据段132-2、132-3,且最后是数据段132-m。逐步更新引擎119可以开始根据所期望的选择和转换顺序将数据段132-1转换到第二数据模式。
逐步更新引擎119和/或站点管理员可以基于多个因素选择给定一组数据段132-1-m。例如,可以选择某些数据段132-1-m以影响尽可能少的用户。为此,可以在按站点集合的基础上选择,该站点集合是由相同的一组用户和共享许可访问的分层的一组网站或门户网站。在另一示例中,可以基于一组网站的优先级来选择某些数据段132-1-m。可以首先升级较高优先级网站的数据段,随后升级较低优先级的网站,反之亦然。在又一示例中,可以基于通信量选择 某些数据段132-1-m。可以首先升级较高通信量网站的数据段,随后升级较低通信量的网站,反之亦然。而在又一示例中,可以基于转换操作所需要的时间量来选择某些数据段132-1-m。可以选择需要较长转换时间段的数据段在通信量通常较低的晚上或周末期间进行转换操作,而具有较短转换时间段的那些数据段可以选择在通信量通常较高的白天或工作时间进行转换操作。可以理解,这些仅仅是几个示例,且可以使用任何数量的选择准则来选择数据段132-1-m被转换到新的数据模式的顺序。各实施例不限于该上下文。
在转换特定的数据段时,逐步更新引擎119可以锁定该数据段以阻止对该数据段的任何改变或修改。例如,在转换数据段132-1时,逐步更新引擎119可以锁定数据段132-1以阻止对数据段132-1的任何改变。如果在转换操作期间对数据段132-1做出改变,则这些改变的数据可能未被转换到WSS3.0版数据模式或可能造成合并冲突。为防止可能的数据丢失或合并冲突,逐步更新引擎119可以允许对数据段132-1的读特权而没有写特权。另选地,在转换操作期间,逐步更新引擎119可以完全阻断对数据段132-1的访问。无论如何,只有经常访问正被转换的特定数据段的用户才被转换操作所影响。一旦给定数据段的转换操作完成,逐步更新引擎119则可以释放该锁定。
虽然在转换操作期间,逐步更新引擎119可以锁定给定数据段,然而,计算设备122-1可以允许一个或多个客户机180-1-s访问数据集130的其它数据段。例如,假定特定门户网站使用数据段132-2的数据。客户机180-1可以继续使用WSS2.0版应用程序来访问该门户网站,即使逐步更新引擎119正将数据段132-1转换到新的数据模式。这允许在转换操作期间继续使用WSS操作。类似地,一旦数据段132-1被转换到新的数据模式,则在其它数据段被转换时,计算设备122-1可以允许一个或多个客户机180-1-s使用WSS3.0版应用程序和经转换的数据段132-1来访问该门户网站。以此方式,基于数据集130的给定数据段132-1-m的当前转换状态,客户机可以访问WSS2.0版或WSS3.0版的特征。
为减轻客户机180-1-s的迁移问题,逐步更新引擎119可以基于给定数据段132-1-m的转换操作的状态临时地重新定向访问请求。为准备逐步升级操作,逐步更新引擎119可以创建新的统一资源定位符(URL)域以供在升级操作期 间使用。例如,假定WSS2.0版位于第一域名“"//domain”(域)。逐步更新引擎119可以创建第二域名“//domain_old”(旧域)以供WSS Version2.0使用。如果客户机180-1-s用URL“//domain/sites/WSS”(WSS站点域)发送对一网站的访问请求,则逐步更新引擎119可以自动地将该访问请求重新定向到“//domain_old/sites/WSS”(WSS站点旧域),直到升级操作完成为止。同时,逐步更新引擎119可以将WSS3.0版安装到先前WSS2.0版所使用的第一个域“//domain”。一旦对整个计算阵列140完成并确认了的升级操作,逐步更新引擎119可以停止重定向操作,藉此向客户机180-1-s提供到应用程序118的新版本的无缝转换。重定向用户请求以确保可以在升级操作之前和之后浏览原始URL域可能减少了对最终用户的影响,因为他们不必获知新的URL域。逐步更新引擎119与升级操作一致地更新重定向操作,以确保用户总是透明地浏览到正确的且当前的位置。
一旦完成升级操作且数据集130被转换到新的数据模式后,逐步更新引擎119和/或管理员则可以执行各种有效性和完整性检验以确定升级是否被正确地执行。在确认操作期间,应用程序118的先前版本可以保留在临时域名处。如果升级未被正确地执行,逐步更新引擎119则可以重新启动重定向操作以将访问请求重定向到临时域名处的应用程序118的先前版本。可以持续进行重定向操作直到升级操作完成且被确认满足计算阵列140的管理员为止。
逐步更新引擎119还可以与各种API一起操作以允许其它应用程序结合应用程序118执行升级操作。例如,逐步更新引擎119可以与各种API一起操作以允许第三方应用程序根据对应用程序118和数据集130的转换操作来转换相对应的数据集。API可以提供允许开发第三方应用程序以扩展WSS2.0版特征来构建在逐步更新引擎119所执行的升级操作上的可扩展性模型。以此方式,第三方应用程序可以将其升级动作协调和构建到主升级过程中。构建在WSS2.0版之上的第三方应用程序的一个示例可以包括SharePoint Portal Server(SPS)2003。SPS2003可以与WSS2.0版的升级操作相一致地执行其升级操作,藉此进一步减少对于客户机180-1-s的停机时间和管理性开销。例如,使用SPS2003的计算设备122-1可在WSS2.0版升级到WSS3.0版的同时升级到Office SharePoint Services(OSS)2006。
以上各实施例的操作可以参考以下附图和所附示例来进一步描述。一些附图可以包括逻辑流程。虽然此处呈现的这些附图可以包括特定的逻辑流程,但可以理解,逻辑流程仅仅提供如何实现此处描述的一般功能的示例。此外,除非另外指明,否则给出的逻辑流程不必要以所呈现的顺序执行。另外,给出的逻辑流程可由硬件元素、由处理器执行的软件元素、或其任意组合来实现。各实施例不限于该上下文。
图2示出逻辑流程的一个实施例。图2示出逻辑流程200。逻辑流程200可以表示此处描述的诸如网络100、计算设备112和/或逐步更新引擎119等一个或多个实施例所执行的操作。如逻辑流程200所示,可以在框202安装应用程序的新版本。可以在框204一次一个数据段地将应用程序的先前版本的数据集转换到新版本所使用的数据模式。各实施例不限于该上下文。
例如,在一实施例中,可以将先前版本的第一数据段转换到该数据模式。可以在转换第一数据段的同时提供对先前版本的第二数据段的访问。各实施例不限于该上下文。
例如,在一实施例中,可以将先前版本的第一数据段转换到该数据模式。在转换期间可以阻止对第一数据段的访问。各实施例不限于该上下文。
例如,在一实施例中,可以标识先前版本的域名。可以创建先前版本的临时域名。可以将域名重命名为该临时域名。可以将对该域名的访问请求重定向到该临时域名。各实施例不限于该上下文。
例如,在一实施例中,可以标识先前版本的域名。一旦数据集被转换后,则可以使用新版本的域名。各实施例不限于该上下文。
例如,在一实施例中,其它应用程序可以与使用API转换先前版本的数据集相一致地转换相对应的数据集。各实施例不限于该上下文。
例如,在一实施例中,可以选择具有来自一个或多个内容数据库的、web应用程序所使用的数据的数据段。另选地,可以选择具有来自一个或多个内容数据库的、一组分层的web应用程序所使用的数据的数据段。各实施例不限于该上下文。
逐步更新技术可以具有超过传统升级技术的各种优点。例如,逐步更新技术的一个优点是升级操作可以按适合例如定义的停机窗口(诸如在周末器件) 的片断为单位来完成。逐步更新技术还允许从给定应用程序118的当前版本的正在工作的环境无缝迁移到应用程序118的新的或经更新的版本的正在工作的环境。逐步更新技术还提供一些工具来减少对用户和管理员的工作负担的可能的影响。
所给出的逐步升级技术的性能和效率基于一组关键假设。例如,在一实施例中,逐步升级技术假定应用程序118的旧的和新的版本同时运行在同一服务器上。例如,WSS2.0版和WSS3.0版两者都可以由计算设备122-1执行,而对于WSS2.0版和WSS3.0版存在不同的数据库和虚拟服务器。在某些情况下,虚拟服务器可以运行不同版本的ASP.Net。还可以有由应用程序118的两个版本所服务的多个站点。在升级操作之后,用户可以被自动地定向到适当的域。管理员还将一次将一些站点集合升级到新的数据库和应用程序版本。最后,将保留旧版本数据,且可能将任何站点集合回退或回滚到升级前的应用程序版本和附带数据集。
可以使用各种设计参数和执行约束来构建逐步更新引擎119和/或应用程序118的性能要求集。例如,在一实施例中,要求集可以包括允许将WSS3.0版安装到当前正运行WSS2.0版的服务器场,而不中断WSS2.0版安装。在另一示例中,要求集可以包括从WSS2.0版数据创建中央管理数据库和配置数据库,并随后创建升级操作所需要的WSS3.0版内容虚拟服务器和内容数据库。而在又一示例中,要求集可以允许管理员更新一个或多个站点集合,而不是一次更新整个系统或数据库。可以将数据传送到执行完全升级的临时数据库,且结果被转移到实况WSS3.0版环境。在升级过程期间,站点集合将变得不可用或只可读,且被升级的站点将具有新的域名。而在又一示例中,要求集可以向管理员提供工具来审阅日志、结果和经升级的WSS3.0版站点,随后选择是否设置从WSS2.0版到WSS3.0版的重定向,使两者都临时可用(例如,WSS2.0版将是只读的)并在WSS3.0版上工作,或对所有更新重新激活WSS2.0版并在稍后的日期重新升级。在又一示例中,要求集可以包括继续升级操作直到环境中没有剩余WSS2.0版站点为止。本质上,所有的WSS2.0版站点不是被升级了就是被转移到另一服务器场。在某些情况下,管理员可能需要手动地指示完成升级,且卸载WSS2.0版以完成该过程。可以使用报告来显示什么站点处 于哪一状态中(例如,具有重定向的WSS3.0版、WSS3.0版和WSS2.0版、或仅WSS2.0版)。
对于升级诸如WSS应用程序等web应用程序,逐步升级操作可大致被分为4个阶段。第一阶段包括WSS2.0版升级准备和WSS3.0版场创建。安装应用程序118的新版本的代码,并将WSS2.0版的全局元素添加到计算阵列140中的计算设备122-1-n的每一个上的WSS3.0版环境。管理员应当执行任何预升级工作,并使用WSS2.0版站点和问题的预升级报告。
第二阶段包括管理员驱动的web应用程序准备。创建新的web应用程序虚拟服务器。创建新的内容数据库以在与WSS2.0版内容数据库相同的SQL服务器上存储新站点。管理员应当将部署到WSS2.0版虚拟服务器的储存斗的web部分添加到WSS3.0版虚拟服务器。
第三阶段包括管理员驱动的站点集合升级。管理员选择一个或多个站点以转移到WSS3.0版。WSS2.0版站点离线且不可用,且将所有数据复制到临时数据库。在临时数据库中运行原地升级,随后将结果转移到实况WSS3.0版环境,并使站点在WSS3.0版中可用。一旦升级操作完成,应当使WSS2.0版站点再次可用。
第四阶段包括审阅和重定向。管理员审阅站点。如果站点需要大量工作,或不可升级,则重置到WSS2.0版站点的重定向,且管理员可以任选地创建经升级的WSS3.0版站点的复件。使用网站创建和诸如微软公司制造的FRONTPAGE等管理工具,或使用类似的工具来使WSS3.0版复件继续工作,直到用户界面在WSS3.0版环境中正确为止。在该点处,可以重新升级WSS2.0版站点,且使用FrontPage或类似的工具手动地合并这些改变。
图3示出第二逻辑流程的示例性实施例。图3示出可以表示适于逐步升级的安装操作的逻辑流程300。如逻辑流程300所示,在启动逐步升级之前,可以运行预升级扫描工具来为升级操作做准备。预升级扫描工具可以报告供管理员解决的常见问题,提供使用的所有站点定义的列表,更新任何WSS列表以便其可被升级等。在执行预升级扫描工具期间,可以检测并在框302经由弹出消息,或经由到日志文件的入口向管理员传达升级机会。可以向管理员呈现升级选项的列表,如原地升级、逐步升级、内容迁移升级等。在框304可以选择 逐步升级。在框306,计算设备122-1可以检索并加载逐步更新引擎119来开始安装应用程序118的新版本。在框308,可以启动后安装配置操作。在该点处,如圈B所示,可以将控制传到逻辑流程400。
图4示出第三逻辑流程的示例性实施例。图4示出可以表示适于逐步升级的后安装配置操作的逻辑流程400。如逻辑流程400所示,在框402,执行检验以确定在安装操作期间是否使用了预升级扫描工具。如果未运行预升级扫描工具,则可以生成错误且终止升级操作或将控制传回逻辑流程300以重新执行安装操作。如果运行了预升级扫描工具,则在框404,可以创建具有新应用程序池但具有与WSS2.0版相同的凭证的配置数据库。在框406,可以执行本地迁移器。本地迁移器的一个示例可以包括执行数据和用于搜索操作的软件的本地升级。随后可以在框408启动中央管理主页。
在菱形框410,做出关于是否为计算阵列140中的所有计算设备122-1-n都执行了安装操作和后安装配置操作的判定。如果没有为计算阵列140中的所有计算设备122-1-n执行安装操作和后安装操作,则如圈A所示,将控制传到逻辑流程300。然而,在为所有计算设备122-1-n都执行了安装操作和后安装操作时,则如圈C所示,将控制传到逻辑流程500。
图5示出第四逻辑流程的示例性实施例。图5示出可以表示中央管理和应用程序升级操作的逻辑流程500。如逻辑流程500所示,在框502,可以选择web应用程序来升级。应用程序升级操作可以包括,例如,将WSS2.0版转移到新的URL域、在计算设备122-1上创建或实例化WSS3.0版web应用程序、创建或实例化WSS3.0版的各种数据库以对WSS2.0版所使用的现有数据库制作镜像、将所有的WSS2.0版站点添加到WSS3.0版配置数据库(例如,配置数据库126b)、为所有站点创建重定向、和/或给定实现所期望的其它升级操作。
继续逻辑流程500,在框504,可以定义、修改、更新、或设置各种升级设置。这些设置的示例可以包括Reghost(登记主存)和Partner(伙伴)设置。Reghost设置可以允许管理员在升级操作期间启用登记主存操作。例如,管理员可能期望启用登记主存操作以便在升级操作期间登记主存定制的网页。Partner设置可以使伙伴和第三方能够在WSS逐步升级之上构建升级元素。
一旦设定了升级设置,则在框506,可以选择和升级一组或多组SharePoint站点(SPSites)。在菱形框508,可以做出关于是否所有SPSites都已被升级到WSS3.0版或回退到WSS2.0版的判定。如果未升级或回退所有SPSites,则将控制传到框504。然而,如果已升级或回退了所有SPSites,则在菱形框510,可以作出关于对计算设备122-1是否已升级了所有应用程序的判定。如果未升级所有的应用程序,则将控制传回到框502。然而,如果已升级了所有的应用程序,则在框512结束升级操作。结束操作的示例可以包括通知管理员和/或用户升级是单向升级、提供确认弹出框、将WSS3.0版场从WSS2.0版场断开连接、清除升级工作数据、和/或给定实现所期望的其它结束操作。
此处阐明了许多具体细节以提供对这些实施例的全面理解。然而,本领域技术人员将理解,没有这些具体细节也可实践这些实施例。在其它实例中,没有详细地描述公知的操作、组件和电路以免得使这些实施例显得晦涩难懂。可以理解,此处公开的具体的结构和功能细节可以是代表性的且不必要限制这些实施例的范围。
还值得注意的是,任何对“一实施例”或“实施例”的引用都意味着结合该实施例所描述的特定的特征、结构、或特性被包括在至少一个实施例中。出现在说明书中各个地方的短语“在一实施例中”不必全都指的是同一实施例。
某些实施例可能使用表述“耦合的”和“连接的”及其派生词来描述。应当理解,这些术语不旨在互为同义词。例如,某些实施例可能使用术语“连接的”来描述以指示两个或更多元素互相有直接的物理的或电的接触。在另一示例中,某些实施例可能使用术语“耦合的”来描述以指示两个或更多元素有直接的物理的或电的接触。然而,术语“耦合的”还可以意味着两个或更多元素互相不直接接触,而仍互相合作或交互。各实施例不限于该上下文。
某些实施例可以例如使用可以存储如果被执行则使得机器执行根据这些实施例的方法和/或操作的指令或一组指令的机器可读介质或物品来实现。例如,这种机器可以包括任何合适的处理平台、计算平台、计算设备、计算系统、处理系统、计算机、处理器等,且可以使用硬件和/或软件的任意合适的组合来实现。例如,机器可读介质或物品可以包括任何合适类型的存储器单元、存储器设备、存储器物品、存储器介质、存储设备、存储物品、存储介质和或存储 单元,例如,存储器、可移动或不可移动介质、可擦除或不可擦除介质、可写或可重写介质、数字或模拟介质、硬盘、软盘、压缩盘只读存储器(CD-ROM)、可记录压缩盘(CD-R)、可重写压缩盘(CD-RW)、光盘、磁性介质、磁光盘、可移动存储器卡或盘、各种类型的数字多功能盘、磁带、磁盒等。
尽管用对结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。相反,上述具体特征和动作是作为实现权利要求的示例形式公开的。
Claims (12)
1.一种用于逐步升级的方法,包括:
安装应用程序的新版本;
一次一个数据段地将所述应用程序的先前版本的数据集转换到所述新版本所使用的数据模式;以及
在转换所述数据集的第一数据段的同时提供对所述数据集的第二数据段的访问。
2.如权利要求1所述的方法,其特征在于,还包括:
在所述转换期间阻止对所述第一数据段的访问。
3.如权利要求1所述的方法,其特征在于,还包括:
标识所述先前版本的域名;
创建所述先前版本的临时域名;
将所述域名重命名为所述临时域名;以及
将使用所述域名的访问请求重定向到所述临时域名。
4.如权利要求1所述的方法,其特征在于,还包括:
标识所述先前版本的域名;以及
一旦已经转换了所述数据集,则使用所述新版本的域名。
5.如权利要求1所述的方法,其特征在于,还包括通过与其它应用程序的接口来与转换所述先前版本的所述数据集相一致地转换与其它应用程序对应的数据集。
6.如权利要求1所述的方法,其特征在于,还包括选择具有来自一个或多个内容数据库的、web应用程序所使用的数据的数据段用于转换。
7.如权利要求1所述的方法,其特征在于,还包括选择具有来自一个或多个内容数据库的、一组分层web应用程序所使用的数据的数据段用于转换。
8.一种用于逐步升级的系统,包括:
用于安装应用程序的新版本的装置;
用于一次一个数据段地将所述应用程序的先前版本的数据集转换到所述新版本所使用的数据模式的装置;以及
用于在转换所述数据集的第一数据段的同时提供对所述数据集的第二数据段的访问的装置。
9.如权利要求8所述的系统,其特征在于,还包括用于在所述转换期间阻止对所述第一数据段的访问的装置。
10.如权利要求8所述的系统,其特征在于,还包括用于标识所述先前版本的域名、创建所述先前版本的临时域名、将所述域名重命名为所述临时域名、并将使用所述域名的访问请求重定向到所述临时域名的装置。
11.如权利要求8所述的系统,其特征在于,还包括用于标识所述先前版本的域名、并且一旦已经转换了所述数据集则使用所述新版本的域名的装置。
12.如权利要求8所述的系统,其特征在于,还包括用于选择具有来自一个或多个内容数据库的、web应用程序所使用的数据的数据段用于转换的装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/418,747 US7818740B2 (en) | 2006-05-05 | 2006-05-05 | Techniques to perform gradual upgrades |
US11/418,747 | 2006-05-05 | ||
PCT/US2007/010873 WO2007130594A2 (en) | 2006-05-05 | 2007-05-04 | Techniques to perform gradual upgrades |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101438261A CN101438261A (zh) | 2009-05-20 |
CN101438261B true CN101438261B (zh) | 2011-06-08 |
Family
ID=38662606
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007800159798A Active CN101438261B (zh) | 2006-05-05 | 2007-05-04 | 执行逐步升级的方法及系统 |
Country Status (6)
Country | Link |
---|---|
US (2) | US7818740B2 (zh) |
EP (1) | EP2021937B1 (zh) |
KR (1) | KR101376916B1 (zh) |
CN (1) | CN101438261B (zh) |
ES (1) | ES2647039T3 (zh) |
WO (1) | WO2007130594A2 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104239088A (zh) * | 2013-06-13 | 2014-12-24 | Sap欧洲公司 | 对分布式计算机网络的节点执行操作 |
Families Citing this family (65)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8065671B1 (en) * | 2007-08-20 | 2011-11-22 | United States Automobile Association (USAA) | Systems and methods for product updates with provisioning of data items |
US8495571B2 (en) * | 2007-09-21 | 2013-07-23 | Oculus Technologies Corporation | Computer method and apparatus for engineered product management including simultaneous indication of working copy status and repository status |
US20090083343A1 (en) * | 2007-09-21 | 2009-03-26 | Oculus Technologies Corporation | Computer method and apparatus for accessing assets in an engineering product management system repository |
US11347771B2 (en) * | 2007-11-28 | 2022-05-31 | International Business Machines Corporation | Content engine asynchronous upgrade framework |
US8539468B2 (en) * | 2008-02-18 | 2013-09-17 | International Business Machines Corporation | System and methods for replacing software application classes using transparent object adapters |
WO2010022100A2 (en) * | 2008-08-18 | 2010-02-25 | F5 Networks, Inc. | Upgrading network traffic management devices while maintaining availability |
US8032930B2 (en) * | 2008-10-17 | 2011-10-04 | Intuit Inc. | Segregating anonymous access to dynamic content on a web server, with cached logons |
US9104521B2 (en) * | 2009-03-16 | 2015-08-11 | Tyco Electronics Subsea Communications Llc | System and method for remote device application upgrades |
US8443084B2 (en) * | 2010-02-09 | 2013-05-14 | Accenture Global Services Limited | Enhanced upgrade path |
US20110302217A1 (en) * | 2010-06-08 | 2011-12-08 | Robert Heidasch | Semantic user interface data assembling |
US8689208B2 (en) | 2010-06-24 | 2014-04-01 | Microsoft Corporation | Upgrade management of application components |
US8244698B2 (en) | 2010-07-23 | 2012-08-14 | Google Inc. | Encoding a schema version in table names |
US9075661B2 (en) | 2010-10-20 | 2015-07-07 | Microsoft Technology Licensing, Llc | Placing objects on hosts using hard and soft constraints |
US8751656B2 (en) | 2010-10-20 | 2014-06-10 | Microsoft Corporation | Machine manager for deploying and managing machines |
US8296267B2 (en) | 2010-10-20 | 2012-10-23 | Microsoft Corporation | Upgrade of highly available farm server groups |
US8799453B2 (en) | 2010-10-20 | 2014-08-05 | Microsoft Corporation | Managing networks and machines for an online service |
US8386501B2 (en) | 2010-10-20 | 2013-02-26 | Microsoft Corporation | Dynamically splitting multi-tenant databases |
US8417737B2 (en) | 2010-10-20 | 2013-04-09 | Microsoft Corporation | Online database availability during upgrade |
US8850550B2 (en) | 2010-11-23 | 2014-09-30 | Microsoft Corporation | Using cached security tokens in an online service |
US20120137278A1 (en) | 2010-11-30 | 2012-05-31 | International Business Machines Corporation | Generating a customized set of tasks for migration of a deployed software solution |
US9721030B2 (en) | 2010-12-09 | 2017-08-01 | Microsoft Technology Licensing, Llc | Codeless sharing of spreadsheet objects |
US8452817B1 (en) * | 2011-04-21 | 2013-05-28 | Netapp, Inc. | Update of data structure configured to store metadata associated with a database system |
WO2012151286A1 (en) * | 2011-05-04 | 2012-11-08 | Apperian, Inc. | Processing, modification, distribution of installation packages |
US8732693B2 (en) | 2011-08-04 | 2014-05-20 | Microsoft Corporation | Managing continuous software deployment |
US8943220B2 (en) * | 2011-08-04 | 2015-01-27 | Microsoft Corporation | Continuous deployment of applications |
US9038055B2 (en) | 2011-08-05 | 2015-05-19 | Microsoft Technology Licensing, Llc | Using virtual machines to manage software builds |
CN103186400B (zh) * | 2011-12-31 | 2016-01-13 | 深圳市金蝶中间件有限公司 | Web应用程序升级方法及系统 |
US9720676B2 (en) * | 2012-02-09 | 2017-08-01 | International Business Machines Corporation | Implementing updates to source code executing on a plurality of compute nodes |
US9262149B2 (en) | 2012-04-12 | 2016-02-16 | International Business Machines Corporation | Managing incrementally applied system updates |
JP2013254303A (ja) * | 2012-06-06 | 2013-12-19 | Sony Corp | 情報処理装置、情報処理方法およびプログラム |
CN102779191B (zh) * | 2012-07-03 | 2015-09-02 | 互动在线(北京)科技有限公司 | 一种MySQL数据库平滑升级的实现系统及实现方法 |
US9244914B2 (en) | 2012-09-28 | 2016-01-26 | Apple Inc. | Schema versioning for cloud hosted databases |
US9483245B2 (en) * | 2013-01-23 | 2016-11-01 | Red Hat Israel, Ltd. | Matching database schema with application code using dependency management |
US9229701B2 (en) * | 2013-03-15 | 2016-01-05 | Microsoft Technology Licensing, Llc | Local store data versioning |
US9244960B2 (en) * | 2013-03-15 | 2016-01-26 | International Business Machines Corporation | Metadata-driven version management service in pervasive environment |
US20140289722A1 (en) * | 2013-03-22 | 2014-09-25 | International Business Machines Corporation | Parallel program installation and configuration |
US9588750B2 (en) * | 2013-03-22 | 2017-03-07 | International Business Machines Corporation | Pseudo program use during program installation |
US9626176B2 (en) | 2013-09-13 | 2017-04-18 | Microsoft Technology Licensing, Llc | Update installer with technical impact analysis |
US9665359B2 (en) | 2013-09-13 | 2017-05-30 | Microsoft Technology Licensing, Llc | Automatically resolving conflicts after installation of selected updates in a computer system |
US9830142B2 (en) | 2013-09-13 | 2017-11-28 | Microsoft Technology Licensing, Llc | Automatic installation of selected updates in multiple environments |
US10026064B2 (en) | 2013-09-13 | 2018-07-17 | Microsoft Technology Licensing, Llc | Automatically recommending updates based on stored lifecycle information |
CN104572685B (zh) * | 2013-10-17 | 2018-01-30 | 纬创资通股份有限公司 | 数据排序方法 |
US9804835B2 (en) | 2014-06-11 | 2017-10-31 | Microsoft Technology Licensing, Llc | Dynamic pacing for service upgrades |
CN106462421B (zh) * | 2014-06-16 | 2020-03-20 | 华为技术有限公司 | 电信设备以及用于更新电信设备中的软件的方法 |
JP2016071422A (ja) * | 2014-09-26 | 2016-05-09 | ブラザー工業株式会社 | ソフトウエア提供システム及びインストールプログラム |
US9501516B2 (en) * | 2014-12-19 | 2016-11-22 | Sap Se | Zero downtime upgrade of database applications using triggers and calculated fields |
US10320892B2 (en) | 2015-01-02 | 2019-06-11 | Microsoft Technology Licensing, Llc | Rolling capacity upgrade control |
US9898494B2 (en) | 2015-02-23 | 2018-02-20 | Sap Se | Zero downtime upgrade for database applications using tables with sequences |
KR102316868B1 (ko) * | 2015-04-27 | 2021-10-25 | 주식회사 케이티 | 상이한 버전의 웹 어플리케이션을 병용하여 운용하는 방법, 서버 및 시스템 |
US10235267B2 (en) * | 2015-08-13 | 2019-03-19 | Molbase (Shanghai) Biotechnology Co., Ltd. | Online testing system and method thereof |
CN105278962A (zh) * | 2015-11-04 | 2016-01-27 | 北京星网锐捷网络技术有限公司 | 应用程序及数据库的热部署方法及装置 |
US10262054B2 (en) | 2016-01-21 | 2019-04-16 | Microsoft Technology Licensing, Llc | Database and service upgrade without downtime |
CN105677430A (zh) * | 2016-02-18 | 2016-06-15 | 吴伟东 | 手机软件更新方法及系统 |
US9678685B1 (en) * | 2016-03-18 | 2017-06-13 | Storagecraft Technology Corporation | Live updating of a changed block tracking driver |
US10341465B2 (en) | 2016-04-03 | 2019-07-02 | Microsoft Technology Licensing, Llc | Policy driven flight management |
CN107341024B (zh) * | 2016-04-28 | 2020-02-14 | 华为技术有限公司 | 系统升级方法和系统升级装置 |
US10185549B2 (en) * | 2016-06-28 | 2019-01-22 | Microsoft Technology Licensing, Llc | Updating live system with static changes |
US10185626B2 (en) * | 2016-09-07 | 2019-01-22 | Microsoft Technology Licensing, Llc | Automatic application error detection and rollback |
US10146675B1 (en) * | 2016-12-29 | 2018-12-04 | EMC IP Holding Company LLC | Automated code upgrade testing utilizing a copy data manager |
CN107147712B (zh) * | 2017-05-05 | 2018-09-11 | 腾讯科技(深圳)有限公司 | 更新网络应用程序的方法及装置 |
US10796350B2 (en) * | 2017-09-25 | 2020-10-06 | Oracle International Corporation | Systems and methods for using facade API for phased upgrade of core API |
US11347701B2 (en) * | 2018-02-13 | 2022-05-31 | Citrix Systems, Inc. | Live zero downtime migration of databases with disparate schemata |
US11204750B2 (en) * | 2018-03-30 | 2021-12-21 | Intel Corporation | Systems, methods and apparatus for distributed software/firmware update and software versioning system for automated vehicles |
US10452375B1 (en) * | 2018-06-21 | 2019-10-22 | Microsoft Technology Licensing, Llc | Memory-efficient upgrade staging |
US20200104118A1 (en) * | 2018-09-28 | 2020-04-02 | Bose Corporation | Systems and methods for providing staged updates in embedded devices |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6996589B1 (en) * | 2002-01-16 | 2006-02-07 | Convergys Cmg Utah, Inc. | System and method for database conversion |
Family Cites Families (69)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4413317A (en) * | 1980-11-14 | 1983-11-01 | Sperry Corporation | Multiprocessor system with cache/disk subsystem with status routing for plural disk drives |
US4425615A (en) * | 1980-11-14 | 1984-01-10 | Sperry Corporation | Hierarchical memory system having cache/disk subsystem with command queues for plural disks |
US5261080A (en) * | 1987-08-21 | 1993-11-09 | Wang Laboratories, Inc. | Matchmaker for assisting and executing the providing and conversion of data between objects in a data processing system storing data in typed objects having different data formats |
US5206951A (en) * | 1987-08-21 | 1993-04-27 | Wang Laboratories, Inc. | Integration of data between typed objects by mutual, direct invocation between object managers corresponding to object types |
US4853843A (en) * | 1987-12-18 | 1989-08-01 | Tektronix, Inc. | System for merging virtual partitions of a distributed database |
US5369770A (en) * | 1992-11-02 | 1994-11-29 | Microsoft Corporation | Standardized protected-mode interrupt manager |
CA2128828C (en) * | 1993-08-24 | 2001-01-02 | David Michael Silver | Multilingual standard resources |
US5634114A (en) * | 1993-11-18 | 1997-05-27 | Intel Corporation | Dynamic link library version negotiation |
US5752035A (en) * | 1995-04-05 | 1998-05-12 | Xilinx, Inc. | Method for compiling and executing programs for reprogrammable instruction set accelerator |
US5745906A (en) * | 1995-11-14 | 1998-04-28 | Deltatech Research, Inc. | Method and apparatus for merging delta streams to reconstruct a computer file |
US6098078A (en) * | 1995-12-29 | 2000-08-01 | Lucent Technologies Inc. | Maintaining consistency of database replicas |
US5768519A (en) * | 1996-01-18 | 1998-06-16 | Microsoft Corporation | Method and apparatus for merging user accounts from a source security domain into a target security domain |
US5862325A (en) * | 1996-02-29 | 1999-01-19 | Intermind Corporation | Computer-based communication system and method using metadata defining a control structure |
US5838901A (en) * | 1996-08-05 | 1998-11-17 | Xilinx, Inc. | Overridable data protection mechanism for PLDs |
GB9623298D0 (en) * | 1996-11-08 | 1997-01-08 | Int Computers Ltd | Updating mechanism for software |
US5933139A (en) * | 1997-01-31 | 1999-08-03 | Microsoft Corporation | Method and apparatus for creating help functions |
AU6336798A (en) * | 1997-02-27 | 1998-09-29 | Siebel Systems, Inc. | Method of synchronizing independently distributed software and database schema |
US5920725A (en) * | 1997-07-02 | 1999-07-06 | Adaptivity Inc. | Run-time object-synthesis and transparent client/server updating of distributed objects using a meta server of all object descriptors |
DE19734413C1 (de) | 1997-08-08 | 1999-01-07 | Ericsson Telefon Ab L M | Verfahren zum Aufrüsten einer Datenbank |
DE19810784B4 (de) | 1998-03-12 | 2006-03-16 | Telefonaktiebolaget Lm Ericsson (Publ) | Rechnersystem |
US6052531A (en) * | 1998-03-25 | 2000-04-18 | Symantec Corporation | Multi-tiered incremental software updating |
US6397242B1 (en) * | 1998-05-15 | 2002-05-28 | Vmware, Inc. | Virtualization system including a virtual machine monitor for a computer with a segmented architecture |
US6154878A (en) * | 1998-07-21 | 2000-11-28 | Hewlett-Packard Company | System and method for on-line replacement of software |
WO2000014627A1 (fr) * | 1998-09-04 | 2000-03-16 | Fujitsu Limited | Gestion du passage a une version superieure, et systeme informatique a cet effet |
US6332158B1 (en) * | 1998-12-03 | 2001-12-18 | Chris Risley | Domain name system lookup allowing intelligent correction of searches and presentation of auxiliary information |
US8069407B1 (en) * | 1998-12-08 | 2011-11-29 | Yodlee.Com, Inc. | Method and apparatus for detecting changes in websites and reporting results to web developers for navigation template repair purposes |
WO2000042510A1 (fr) * | 1999-01-13 | 2000-07-20 | Fujitsu Limited | Procede et appareil de commande exclusive d'informations electroniques et supports d'enregistrement de programme de commande exclusive |
US6377960B1 (en) * | 1999-07-26 | 2002-04-23 | Microsoft Corporation | Transactional configuration store and runtime versus administration isolation with version snapshots and aging |
US6704873B1 (en) * | 1999-07-30 | 2004-03-09 | Accenture Llp | Secure gateway interconnection in an e-commerce based environment |
US6633878B1 (en) * | 1999-07-30 | 2003-10-14 | Accenture Llp | Initializing an ecommerce database framework |
US6976062B1 (en) * | 1999-09-22 | 2005-12-13 | Intermec Ip Corp. | Automated software upgrade utility |
US6640334B1 (en) * | 1999-09-27 | 2003-10-28 | Nortel Networks Limited | Method and apparatus of remotely updating firmware of a communication device |
US6779177B1 (en) * | 1999-10-28 | 2004-08-17 | International Business Machines Corporation | Mechanism for cross channel multi-server multi-protocol multi-data model thin clients |
US6681389B1 (en) * | 2000-02-28 | 2004-01-20 | Lucent Technologies Inc. | Method for providing scaleable restart and backout of software upgrades for clustered computing |
US6643669B1 (en) * | 2000-03-14 | 2003-11-04 | Telefonaktiebolaget Lm Ericsson (Publ) | Method for optimization of synchronization between a client's database and a server database |
US6775423B2 (en) * | 2000-05-03 | 2004-08-10 | Microsoft Corporation | Systems and methods for incrementally updating an image in flash memory |
US20020057018A1 (en) * | 2000-05-20 | 2002-05-16 | Equipe Communications Corporation | Network device power distribution scheme |
US6880086B2 (en) * | 2000-05-20 | 2005-04-12 | Ciena Corporation | Signatures for facilitating hot upgrades of modular software components |
US6751794B1 (en) * | 2000-05-25 | 2004-06-15 | Everdream Corporation | Intelligent patch checker |
US7693976B2 (en) * | 2000-07-11 | 2010-04-06 | Ciena Corporation | Granular management of network resources |
US7337217B2 (en) * | 2000-07-21 | 2008-02-26 | Samsung Electronics Co., Ltd. | Architecture for home network on world wide web |
US6832373B2 (en) * | 2000-11-17 | 2004-12-14 | Bitfone Corporation | System and method for updating and distributing information |
US20040088333A1 (en) * | 2002-01-25 | 2004-05-06 | David Sidman | Apparatus method and system for tracking information access |
US6754895B1 (en) * | 2001-04-26 | 2004-06-22 | Palm Source, Inc. | Method and system for automatic firmware updates in a portable hand-held device |
US7263698B2 (en) * | 2002-08-29 | 2007-08-28 | Sap Aktiengesellschaft | Phased upgrade of a computing environment |
US6996818B2 (en) | 2002-11-22 | 2006-02-07 | Bitfone Corporation | Update system for facilitating software update and data conversion in an electronic device |
US7770008B2 (en) * | 2002-12-02 | 2010-08-03 | Silverbrook Research Pty Ltd | Embedding data and information related to function with which data is associated into a payload |
US7523184B2 (en) * | 2002-12-31 | 2009-04-21 | Time Warner Cable, Inc. | System and method for synchronizing the configuration of distributed network management applications |
US7117482B2 (en) * | 2003-03-26 | 2006-10-03 | Sony Corporation | Migration of configuration data from one software installation through an upgrade |
US8209680B1 (en) * | 2003-04-11 | 2012-06-26 | Vmware, Inc. | System and method for disk imaging on diverse computers |
US7386617B2 (en) * | 2003-05-15 | 2008-06-10 | International Business Machines Corporation | Method, system and program product for managing multiple network application versions |
US7356577B2 (en) * | 2003-06-12 | 2008-04-08 | Samsung Electronics Co., Ltd. | System and method for providing an online software upgrade in load sharing servers |
US20050010913A1 (en) * | 2003-07-11 | 2005-01-13 | Chih-Wei Chen | Computer code upgrading method and system |
US7624393B2 (en) * | 2003-09-18 | 2009-11-24 | International Business Machines Corporation | Computer application and methods for autonomic upgrade maintenance of computer hardware, operating systems and application software |
US7778962B2 (en) * | 2004-04-30 | 2010-08-17 | Microsoft Corporation | Client store synchronization through intermediary store change packets |
EP1815347A4 (en) * | 2004-05-14 | 2010-01-20 | Mobilaps Llc | METHOD FOR EQUIPPING A WEBSITE WITH INSERTED CONTENT |
US20050262495A1 (en) * | 2004-05-18 | 2005-11-24 | Bea Systems, Inc. | Administration mode for server applications |
US7558843B2 (en) * | 2004-07-12 | 2009-07-07 | Netsuite, Inc. | Phased rollout of version upgrades in web-based business information systems |
US20060041881A1 (en) * | 2004-08-19 | 2006-02-23 | Adkasthala Bheema P | Universal upgrade architecture |
US7562358B2 (en) * | 2004-10-04 | 2009-07-14 | United Parcel Service Of America, Inc. | Controlled deployment of software in a web-based architecture |
US20060080656A1 (en) * | 2004-10-12 | 2006-04-13 | Microsoft Corporation | Methods and instructions for patch management |
US7774596B2 (en) * | 2005-02-02 | 2010-08-10 | Insyde Software Corporation | System and method for updating firmware in a secure manner |
JP2006224411A (ja) * | 2005-02-16 | 2006-08-31 | Sharp Corp | 交換部品および画像形成装置 |
US9270732B2 (en) * | 2005-03-14 | 2016-02-23 | Rhapsody International Inc. | System and method for automatically uploading updates |
US8429630B2 (en) * | 2005-09-15 | 2013-04-23 | Ca, Inc. | Globally distributed utility computing cloud |
US7933881B2 (en) * | 2006-03-17 | 2011-04-26 | Microsoft Corporation | Concurrency control within an enterprise resource planning system |
WO2007113533A1 (en) * | 2006-03-31 | 2007-10-11 | British Telecommunications Public Limited Company | Xml-based transfer and a local storage of java objects |
GB2445764A (en) * | 2007-01-22 | 2008-07-23 | Surfcontrol Plc | Resource access filtering system and database structure for use therewith |
US8418168B2 (en) * | 2008-05-29 | 2013-04-09 | Research In Motion Limited | Method and system for performing a software upgrade on an electronic device connected to a computer |
-
2006
- 2006-05-05 US US11/418,747 patent/US7818740B2/en active Active
-
2007
- 2007-05-04 EP EP07794562.4A patent/EP2021937B1/en active Active
- 2007-05-04 WO PCT/US2007/010873 patent/WO2007130594A2/en active Application Filing
- 2007-05-04 CN CN2007800159798A patent/CN101438261B/zh active Active
- 2007-05-04 KR KR1020087027153A patent/KR101376916B1/ko active IP Right Grant
- 2007-05-04 ES ES07794562.4T patent/ES2647039T3/es active Active
-
2010
- 2010-09-29 US US12/893,263 patent/US8370828B2/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6996589B1 (en) * | 2002-01-16 | 2006-02-07 | Convergys Cmg Utah, Inc. | System and method for database conversion |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104239088A (zh) * | 2013-06-13 | 2014-12-24 | Sap欧洲公司 | 对分布式计算机网络的节点执行操作 |
CN104239088B (zh) * | 2013-06-13 | 2019-06-28 | Sap欧洲公司 | 对分布式计算机网络的节点执行操作 |
Also Published As
Publication number | Publication date |
---|---|
US7818740B2 (en) | 2010-10-19 |
EP2021937A4 (en) | 2009-05-06 |
KR101376916B1 (ko) | 2014-03-27 |
CN101438261A (zh) | 2009-05-20 |
US8370828B2 (en) | 2013-02-05 |
WO2007130594A2 (en) | 2007-11-15 |
EP2021937A2 (en) | 2009-02-11 |
US20110016461A1 (en) | 2011-01-20 |
ES2647039T3 (es) | 2017-12-18 |
KR20090031669A (ko) | 2009-03-27 |
EP2021937B1 (en) | 2017-08-16 |
US20070261049A1 (en) | 2007-11-08 |
WO2007130594A3 (en) | 2008-01-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101438261B (zh) | 执行逐步升级的方法及系统 | |
CN101374146B (zh) | 对物理计算机系统的虚拟表示的按需访问 | |
US7177865B2 (en) | Data synchronization method and system | |
CN101378400B (zh) | 实现桌面应用和Web应用聚合的方法、服务器和系统 | |
AU2005229697B2 (en) | Method and apparatus for metadata driven business logic processing | |
CA2831381C (en) | Recovery of tenant data across tenant moves | |
CN101446971B (zh) | 构建内容管理系统的方法及装置 | |
CN103917972A (zh) | 用于在集群数据库环境中提供会话亲和性和改善的连通性的系统和方法 | |
US20070118572A1 (en) | Detecting changes in data | |
CN1968154A (zh) | 使用插件进行业务扩展的系统及其方法 | |
CN102664746A (zh) | 用于分布式数据中心各分量的在全局上健全且一致的配置管理 | |
US20120311375A1 (en) | Redirecting requests to secondary location during temporary outage | |
Dai et al. | A flexible extension of WSDL to describe non-functional attributes | |
CN112947992A (zh) | 代码版本管理的方法和装置 | |
CN1282923A (zh) | 将应用程序从系统固件传递到存储设备的方法和系统 | |
US20070174697A1 (en) | Generic, WSRF-compliant checkpointing for WS-Resources | |
CN103297494A (zh) | 用于与具有服务器响应预期的分布式应用交互的方法和系统 | |
CN103597452A (zh) | 灾难数据中心中的爬行新鲜度 | |
CN101639783A (zh) | 按订单配置型软件的部署和管理 | |
CN117193740A (zh) | 数据分配方法、装置、计算设备及存储介质 | |
JPH08166918A (ja) | サーバ・クライアント処理システムにおける業務情報管理方法 | |
CN108021474A (zh) | 一种基于Weblogic的应用一键式回滚和增量更新的方法 | |
CN103218234A (zh) | 一种基于配置自动改变应用软件分层部署架构的实现方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
ASS | Succession or assignment of patent right |
Owner name: MICROSOFT TECHNOLOGY LICENSING LLC Free format text: FORMER OWNER: MICROSOFT CORP. Effective date: 20150505 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20150505 Address after: Washington State Patentee after: Micro soft technique license Co., Ltd Address before: Washington State Patentee before: Microsoft Corp. |