CN102411511B - 用于服务升级的数据迁移 - Google Patents

用于服务升级的数据迁移 Download PDF

Info

Publication number
CN102411511B
CN102411511B CN201110221876.5A CN201110221876A CN102411511B CN 102411511 B CN102411511 B CN 102411511B CN 201110221876 A CN201110221876 A CN 201110221876A CN 102411511 B CN102411511 B CN 102411511B
Authority
CN
China
Prior art keywords
service
data
user
user data
action
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
Application number
CN201110221876.5A
Other languages
English (en)
Other versions
CN102411511A (zh
Inventor
M·阿皮亚
N·沙尔马
L·M·戴维
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN102411511A publication Critical patent/CN102411511A/zh
Application granted granted Critical
Publication of CN102411511B publication Critical patent/CN102411511B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/214Database migration support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9574Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching

Abstract

本发明涉及用于服务升级的数据迁移。在此所述的实施例针对高效地将数据从服务的一个版本迁移到另一版本并且将用户临时转移到不同的服务以进行评估。计算机系统在接收到表示用户将从第一服务转移到不同的第二服务的指示以前将用户数据从第一服务预先传输给第二服务。该用户数据包括标识第一服务的用户的标识信息。计算机系统接收表示第一服务用户将转移到第二服务的指示。计算机系统将由第一服务使用的服务数据传输给第二服务,并且同步用户数据的发生在用户数据预先传输与服务数据传输之间的任何改变,使得使用所传输的服务数据和经同步的用户数据来提供第二服务。

Description

用于服务升级的数据迁移
技术领域
本发明涉及用于服务升级的数据迁移。
背景技术
计算机已变成在劳动力、家、移动设备中以及许多其他地方高度集成。计算机可快速且高效地处理大量信息。被设计成在计算机系统上运行的软件应用程序允许用户执行包括商业应用程序、学校作业、娱乐和更多功能在内的各种各样的功能。软件应用程序通常被设计成执行特定任务,诸如用于草拟文档的文字处理器应用程序或者用于发送、接收和组织电子邮件的电子邮件程序。
在许多情况中,软件应用程序被设计成与其他软件应用程序或其他计算机系统交互。例如软件应用可以向各种计算机系统用户提供服务。在一些情况下,这些服务可以以订阅为基础提供给客户。客户通常将登陆到提供该服务的服务器或计算机系统,并且一旦经过认证,用户就将具有对该服务的访问。
服务提供者往往随着时间对其提供的服务作出改变。这些改变可以以新服务版本的形式来实现。在一些情况下,新版本可能显著不同于原来(或最新)的版本。在这种情况下,用户在还未试用较新版本的情况下可能对改变为较新版本感到犹豫。此外,实施这样的改变就用户而言可能需要花费大量时间和精力。
发明内容
在此所述的实施例针对高效地将数据从服务的一个版本迁移到另一版本以及将用户临时转移到不同的服务以进行评估。在一个实施例中,计算机系统在接收到表示用户将从第一服务转移到不同的第二服务的指示之前将用户数据从第一服务预先传输给第二服务。该用户数据包括标识第一服务的用户的标识信息。计算机系统接收表示第一服务用户将转移到第二服务的指示。计算机系统将由第一服务使用的服务数据传输给第二服务,并且同步用户数据的发生在用户数据预先传输与服务数据传输之间的任何改变,使得使用所传输的服务数据和经同步的用户数据来提供第二服务。
在另一实施例中,计算机系统在接收到表示用户打算评估第二服务之前将该用户的用户数据从第一服务传输给第二服务。计算机系统接收表示用户打算评估第二服务的指示并且将对应于第一服务的服务数据临时传输给第二服务,使得第二服务使用来自第一服务的该用户的用户数据和服务数据进行操作。用户数据和服务数据可以在服务操作期间被更新。计算机系统还确定用户的评估时间段已经结束,并且将经更新的用户数据和服务数据从第二服务传输给第一服务,使得第一服务使用经更新的用户数据和服务数据来操作。
提供本发明内容以便以简化形式介绍将在以下的具体实施方式中进一步描述的一些概念。本发明内容并不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
本发明的附加特征和优点将在以下描述中阐述,且其一部分根据本描述将是显而易见的,或可通过对此处的原理的实践来获悉。本发明的特征和优点可通过在所附权利要求书中特别指出的工具和组合来实现和获得。本发明的特征将通过以下描述和所附权利要求书变得更加显而易见,或可通过对下文中所述的本发明的实践来获悉。
附图说明
为了进一步阐明本发明的各实施例的以上和其他优点和特征,将参考附图来呈现本发明的各实施例的更具体的描述。可以理解,这些附图只描绘本发明的典型实施例,因此将不被认为是对其范围的限制。本发明将通过使用附图用附加特征和细节来描述和解释,附图中:
图1示出了可以运行本发明的各实施例的计算机体系结构,这些实施例包括高效地从服务的一个版本迁移到另一版本,并且将用户临时转移到不同服务以进行评估。
图2示出了用于高效地将数据从服务的一个版本迁移到另一版本的示例性方法的流程图。
图3示出了用于将用户临时转移到不同服务以进行评估的示例性方式的流程图。
图4示出了本发明的一实施例,其中将应用程序专用服务用于服务迁移。
具体实施方式
在此所述的实施例针对高效地将数据从服务的一个版本迁移到另一版本以及将用户临时转移到不同的服务以进行评估。在一个实施例中,计算机系统在接收到表示用户将从第一服务转移到不同的第二服务的指示以前将用户简档数据从第一服务预先传输给第二服务。该用户简档数据可以包括用户的名、姓、地址等等、以及用户标识和认证数据,包括用户ID、口令等等。该用户数据包括标识第一服务的用户的标识信息。计算机系统接收表示第一服务用户将转移到第二服务的指示。
计算机系统将由第一服务使用的服务数据传输给第二服务,并且同步用户数据的发生在用户数据预先传输与服务数据传输之间的任何改变,使得使用所传输的服务数据和经同步的用户数据来提供第二服务。在此所使用的服务数据可以是指与给定服务有关但是还与用户(该用户的电子邮件收件箱)或者公司(例如该公司的文字处理文档)相关的数据。此外,应当指出,至少在一些情况下,同步可以仅仅在用户从第一服务转移到第二服务期间才发生。在这种情况下,一旦服务转移完成并且被指示给用户,则同步停止,因为用户从第一服务到第二服务的移动完成了。
在另一实施例中,计算机系统在接收到表示用户打算评估第二服务的指示之前将该用户的用户数据从第一服务传输给第二服务。计算机系统接收表示用户打算评估第二服务的指示并且将对应于第一服务的服务数据临时传输给第二服务,使得第二服务使用该用户的来自第一服务的用户数据以及服务数据进行操作。用户数据和服务数据在服务操作期间被更新。计算机系统还确定用户的评估时间段已经结束,并且将经更新的用户数据和服务数据从第二服务传输给第一服务,使得第一服务使用经更新的用户数据和服务数据来进行操作。
下面的讨论现在引用了可执行的多个方法和方法动作。应当注意,虽然可以一定次序讨论或在流程图中按特定次序发生而示出方法动作,但是,没有特定次序是一定需要的,除非特别声明,或者是必需的,因为在一个动作被执行之前该动作取决于另一动作被完成。
本发明的各实施例可包括或利用包括诸如例如,一个或多个处理器和系统存储器之类的计算机硬件的专用或通用计算机,如以下更详细讨论的。本发明范围内的各实施例还包括用于承载或存储计算机可执行指令和/或数据结构的物理和其他计算机可读介质。这些计算机可读介质可以是可由通用或专用计算机系统访问的任何可用介质。存储计算机可执行指令的计算机可读介质是计算机存储介质。承载计算机可执行指令的计算机可读介质是传输介质。由此,作为示例而非限制,本发明的各实施例可包括至少两种完全不同的计算机可读介质:计算机存储介质和传输介质。
计算机存储介质包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储或其他磁存储设备、或可用于存储计算机可执行指令或数据结构形式的所需程序代码装置且可由通用或专用计算机访问的任何其他介质。
“网络”被定义为允许在计算机系统和/或模块和/或其他电子设备之间传输电子数据的一个或多个数据链路。当信息通过网络或另一个通信连接(硬连线、无线、或者硬连线或无线的组合)传输或提供给计算机时,该计算机将该连接适当地视为传输介质。传输介质可包括可用于承载计算机可执行指令或数据结构形式的所需程序代码装置且可由通用或专用计算机访问的网络和/或数据链路。上述的组合也应被包括在计算机可读介质的范围内。
此外,在到达各种计算机系统组件之后,计算机可执行指令或数据结构形式的程序代码装置可从传输介质自动转移到计算机存储介质(或者相反)。例如,通过网络或数据链路接收到的计算机可执行指令或数据结构可被缓存在网络接口模块(例如,“NIC”)内的RAM中,然后最终被传送到计算机系统RAM和/或计算机系统处的较不易失性的计算机存储介质。因而,应当理解,计算机存储介质可被包括在同样(或甚至主要)利用传输介质的计算机系统组件中。
计算机可执行指令包括例如,使通用计算机、专用计算机、或专用处理设备执行某一功能或某组功能的指令和数据。计算机可执行指令可以是例如二进制代码、诸如汇编语言之类的中间格式指令、或甚至源代码。尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述特征或动作。相反,上述特征和动作是作为实现权利要求的示例形式而公开的。
本领域的技术人员将理解,本发明可以在具有许多类型的计算机系统配置的网络计算环境中实践,这些计算机系统配置包括个人计算机、台式计算机、膝上型计算机、消息处理器、手持式设备、多处理器系统、基于微处理器的或可编程消费电子设备、网络PC、小型计算机、大型计算机、移动电话、PDA、寻呼机、路由器、交换机等等。本发明也可在其中通过网络链接(或者通过硬连线数据链路、无线数据链路,或者通过硬连线和无线数据链路的组合)的本地和远程计算机系统两者都执行任务的分布式系统环境中实践。在分布式系统环境中,程序模块可位于本地和远程存储器存储设备中。
图1示出了可在其中采用本发明的原理的计算机体系结构100。计算机体系结构100包括第一服务120和第二服务130。这些服务中的每个都包括用户数据126和服务数据127。服务可以是任何类型的软件服务、应用、函数、或者向用户提供一部分功能的其他硬件/软件组合。在一些情况下,第二服务130可以包括第一服务120的较新或经更新的版本。因此,如图1所示,用户135可以进行升级或者简单地在服务版本之间切换。迁移引擎105可以用于执行这样的服务迁移。
迁移引擎105可以被配置为在第一服务120与第二服务130之间转移数据。例如,迁移引擎105可以将用户数据126和/或服务数据127从第一服务传输给第二服务(或者发起该传输)。迁移引擎可以在用户已经指示他或她希望切换到较新版本之前传输用户135的用户数据和/或服务数据的至少一部分。在这种情况下,由于数据已经被传输给较新版本(即第二服务130),因此可以快速和高效地提供第二服务。应当指出,尽管图1中示出了两个服务,但是基本上可以实现任何数目的服务,并且因此迁移引擎105可以被配置为促进针对基本上任何数目的用户服务或服务版本之间的升级。
每个服务都可以被配置为将其功能提供给一个或多个不同用户(例如用户135)。服务使用存储在服务存储125中的用户数据126和服务数据127来提供功能。用户数据可以包括用于标识用户的任何类型的信息,包括用户名、认证信息、传记信息(姓名、地址等等)、电子邮件地址或者其他标识信息。此外,用户数据126可以将用户标识为一组用户的一部分或者标识为公司客户。服务数据127可以包括与所提的服务相关的任何类型的信息,包括向给定用户或用户组提供何种功能、用户设定、以及提供服务功能的实际数据。
因此,迁移引擎105可以确定何时开始将用户的用户数据126和/或服务数据127从较旧版本(例如第一服务120)发送给较新版本(例如第二服务130)。在一些情况下,迁移引擎可以在从用户接收到表示该用户希望升级或切换到较新(或者简单地为不同)的版本的指示之前开始发送用户数据和/或服务数据。在一些实施例中,迁移引擎105可以将第一服务的任何用户或所有用户的用户数据126预先传输给第二服务的数据存储或数据分区。然后,在从用户135接收到指示用户希望切换到第二版本的转移指示111以后,迁移引擎可以传输服务数据127以及通过同步模块110发起同步以同步用户数据的任何数据改变。这些和其他概念将在下面参考图2的方法200更详细地解释。
考虑到以上描述的系统和体系结构,参考图2和3的流程图将更好地理解可依照所公开的主题实现的方法。为了解释简明起见,这些方法被示出和描述为一系列框。然而,应该理解和了解,所要求保护的主题不受框的次序的限制,因为一些框可按不同的次序进行和/或与此处所描绘和描述的其他框同时进行。此外,并非全部所示出的框都是实现以下所描述的方法所必需的。
图2示出了用于高效地将数据从服务的一个版本迁移到另一版本的方法200的流程图。现在将频繁参考图1的环境100和图4的环境400的组件和数据来描述方法200。
方法200包括在接收到表示用户将从第一服务转移到不同的第二服务的指示之前将用户数据的至少一部分从第一服务预先传输到第二服务的动作,其中该用户数据包括标识第一服务的一个或多个用户的标识信息(动作210)。例如,迁移引擎105可以在从用户135接收到指示用户将从第一服务转移到第二服务的转移指示111之前将用户数据126的至少一部分从第一服务120预先传输到给第二服务130。用户数据126可以包括标识请求转移到不同版本或不同服务的用户(用户135)的信息。如上所示,用户数据可以进一步指示用户在组或其他组织单元中的成员资格。可以基于用户在组中的成员资格而来限制或赋予用户对服务的各种特性的访问等级。在一些实施例中,第二服务130(例如由第一服务120提供的服务的较新或经更新版本)可以包括多分区、多承租人服务。在这种情况下,每个用户或承租人都可以具有其自己的实际或虚拟分区,在该分区中存储其用户和服务。
方法200包括接收表示一个或多个第一服务用户将转移到第二服务的指示的动作(动作220)。例如,迁移引擎105可以从用户135接收指示用户将从第一服务120转移到第二服务130的迁移指示111。在一些情况下,迁移引擎105可以被配置为监控至少一个第一服务用户(例如用户135)的用户升级状态。用户升级状态可以指示用户适于升级或者至少适于临时评估较新版本。因此,在这些情况下,迁移引擎105可以在获悉给定用户适于升级到(或者评估)较新版本之后开始预先传输用户和/或服务数据。然后,当适合的用户实际上选择开始评估第二服务时,第二服务将已经具有为了开始向该用户提供第二服务而所需的许多(即使不是全部)信息。
在用户临时评估第二服务的情况下,该用户的用户数据126和服务数据127可以被临时传输给第二服务。因此,当第二服务向用户135提供第二服务时,其将使用该用户的用户数据和服务数据。该数据就可以在用户适于评估第二服务的时间内存储在第二服务的数据存储上。此外,如果用户在评估期间的某个时刻确定他或她希望继续使用第二服务,则该用户可以订阅第二服务并且如在评估期间所使用的那样继续使用该服务(可能具有在评估期间未提供的更多特性)。在用户选择不订阅第二服务的情况下,迁移引擎105可以确定用户的评估时间段已经期满,并且至少在一些情况下可以将经更新的用户数据和服务数据127传输给第一服务。然后,第一服务可以使用经更新的用户数据和服务数据来为给用户提供服务。
在一些实施例中,迁移引擎105可以被配置为执行各种不同的计算,包括预先计算为了将用户135从第一服务120升级到第二服务130而应采取的每个步骤。这些预先计算的步骤可以相组合以形成工作流。工作流的步骤可以作为典型工作流执行的一部分来执行。通过将每个预先计算的步骤作为工作流的一部分来执行,这保证了第一服务的用户数据和服务数据与第二服务的用户数据和服务数据之间的数据一致性。因此,用于提供第一服务的相同数据将被传输给第二服务并且用于提供第二服务。此外,如果评估第二服务的用户选择不继续使用第二服务,则该数据将作为工作流执行的一部分被传输回第一服务并且第一服务然后将向该用户提供服务。
回到图2,方法200包括将由第一服务使用的服务数据的至少一部分传输给第二服务的动作(动作230)。例如,迁移引擎105可以将由第一服务120所使用的服务数据127传输给第二服务130。该传输可以在接收到转移指示111后立即被发起,或者在之后的某个时刻被发起。在一些情况下,如图4所示,多个不同的应用程序专用服务可以被实例化,这些服务可以被配置为将数据从一个服务传输给另一服务。应用程序专用服务(或此处的“app专用服务(应用程序专用服务)”)可以用在其中服务(例如第一服务120)提供多个不同的应用作为其服务的一部分的情况下。例如,第一服务120可以提供诸如文字处理、电子表格、演示、电子邮件管理和其他应用之类的办公套件应用。还可以由服务来提供许多其他所有不同类型的应用。这些应用中的每个都可以具有单独的应用程序专用服务,该专用服务被配置为将数据从第一服务传输给不同的服务。
因此,包括用户数据426和服务数据427的第一服务420可以将用于文字处理应用(作为例子)的用户数据和服务数据发送给app专用服务431A以供传输给第二服务430。在一些实施例中,第二服务430可以被配置为提供至少由第一服务提供的那些应用、以及其他不同的应用。因此,在接收到用于专用应用(例如文字处理应用)的用户数据426和服务数据427以后,第二服务430然后可以开始使用由该app专用服务所传输的数据来提供该应用。尽管仅仅示出了三个app专用服务(431A、431B和431C),但是本领域的技术人员应当理解,可以由服务来提供基本上任何数目的应用,并且可以实例化相应数目的应用程序专用服务来在服务之间传输该应用的数据。
再次回到图2,方法200包括如下动作:同步用户数据的发生在用户数据预先传输与服务数据传输之间的任何改变,使得使用所传输的服务数据和经同步的用户数据来提供第二服务(动作240)。例如,迁移引擎405的用户数据同步模块410可以同步用户数据426的发生在用户数据的预先传输与服务数据的随后传输之间的任何改变。通过这种方式,第二服务430可以使用所传输的服务数据427和经同步(并且因此为最新)的用户数据426来提供。在同步期间对用户数据的任何改变都将在动作250中被最终化(finalize)。
在一些情况下,可以使用调度器来确定传输服务数据以及执行同步的最优时间。此外,调度器可以在所确定的最优时间内调度服务数据的传输并且然后建立同步。在一些实施例中,来自多个不同的用户和承租人的用户数据和服务数据被一起批处理,以供从第一服务传输给第二服务。此外,迁移引擎可以包括规定已经给用户给予了对哪些服务的访问的许可证413。例如,所述许可证可以指示给用户给予了对由第二服务所提供的两个不同应用的访问。如用户和服务数据那样,许可证可以在执行同步以后被协调。
现在转到图3,图3示出了用于将用户临时转移到不同服务以进行评估的方法300的流程图。现在将频繁参照环境100的组件和数据来描述方法300。
方法300包括在接收到表示用户打算评估第二服务的指示之前将该用户的用户数据从第一服务传输给第二服务的动作(动作310)。例如,迁移引擎105可以在接收到指示用户打算评估(并且由此转移到)第二服务的转移指示111之前将用户135的用户数据126从第一服务120传输给第二服务130。在一些情况下,评估时间段可以是可配置的,并且可以从其原始时间被延长或者缩短。在其他情况下,可能不存在针对评估的时间限制。该评估可以允许用户访问由第二服务提供的任何或所有应用。此外,对由第二服务提供的应用的访问可以根据许可证413中规定的策略来限制。
方法300包括接收表示用户打算评估第二服务的指示的动作(动作320)。例如,迁移引擎105可以接收指示用户135打算评估第二服务130的迁移指示111。该指示可以是用户与迁移引擎之间的任何类型的通信,该通信可以传递用户的意图以评估第二服务。可以使用其他指示来指示一组用户将转移到第二服务以进行评估。因此,迁移引擎可以针对一组用户而不是仅仅单个用户执行在此列出的步骤。
在一些实施例中,用户数据可以被聚集在一起以通过一个或多个不同的通道并行地传输。通过这种方式,数据传输吞吐量增加。附加地或可替代地,一组用户可以被一起批处理以供从一地服务传输给第二服务,使得该组用户的服务数据被一起传输。也可以任选地添加新服务以帮助传输数据。
方法300进一步包括如下动作:将对应于第一服务的服务数据临时传输给第二服务,使得第二服务使用来自第一服务的用户的用户数据和服务数据来操作,其中用户数据和服务数据在操作期间被更新(动作330)。例如,迁移引擎105可以将第一服务120的服务数据127临时传输给第二服务130。所传输的服务数据可以用于提供第二服务,包括第二服务的应用中的任一个。
方法300还包括确定用户的评估时间段已经结束的动作(动作340)。例如,迁移引擎105可以确定用户135的评估时间段已经结束。评估时间段可以包括基本上任何时间帧(timeframe),并且可以完全由系统管理员来配置。评估时间段可以持续几分钟、几天、几星期或几年。在一些情况下,评估时间段是对每个用户是特定的。因此,一个用户可以具有一星期的评估时间段,而另一用户具有一个月的评估时间段。这当然仅仅是可能的时间帧的例子。此外,这些时间帧可以延长到某个可定制的结束时间。更进一步而言,如上所述,如果用户在评估时间段期间或结束时订阅第二服务,则评估时间段可以实际上无限延长,或者至少延长到用户对第二服务的订阅期限。
方法300包括如下动作:将经更新的用户数据和服务数据从第二服务传输给第一服务,使得第一服务使用经更新的用户数据和服务数据来操作(动作350)。例如,在一些情况下,迁移引擎105可以将经更新的用户数据和服务数据从第二服务130传输给第一服务120。在从第二服务接收到经更新的用户数据和服务数据以后,第一服务然后可以使用经更新的用户数据和服务数据127来提供第一服务。通过这种方式,用户(或一组用户)可以在某个时间段内评估第二服务,在此之后所述用户转移回第一服务。
因此,提供了方法、系统和计算机程序产品,其既高效地将数据从服务的一个版本迁移到另一版本,又临时地将用户从第一服务转移到第二服务以进行评估。因此,用户可以迅速和高效地转移到不同的服务,以及临时评估其他服务以确定是否订阅那些服务。在确定不订阅所评估的服务以后,回到原始的第一服务的转移也是迅速和高效的。
本发明可被具体化为其他具体形式而不背离其精神或本质特征。所描述的实施例在所有方面都应被认为仅是说明性而非限制性的。因此,本发明的范围由所附权利要求书而非前述描述指示。落入权利要求书的等效方案的含义和范围内的所有改变被权利要求书的范围所涵盖。

Claims (20)

1.一种用于高效地将数据从服务的一个版本迁移到另一版本的计算机实现的方法,所述方法包括: 
在接收到表示用户将从第一服务转移到不同的第二服务的指示之前将用户数据的至少一部分从第一服务预先传输到第二服务的动作,其中所述第二服务是由所述第一服务所提供的服务的经更新版本,并且其中所述用户数据包括标识第一服务的一个或多个用户的标识信息; 
接收表示一个或多个第一服务用户将转移到第二服务的指示的动作; 
将由第一服务使用的服务数据的至少一部分传输给第二服务的动作;以及 
同步在用户数据预先传输与服务数据传输之间在所述第一服务处发生的所述用户数据的任何改变,使得使用所传输的服务数据和经同步的用户数据来提供第二服务的动作。 
2.如权利要求1所述的方法,其特征在于,进一步包括监控至少一个第一服务用户的用户升级状态的动作。 
3.如权利要求1所述的方法,其特征在于,进一步包括为每个服务实例化单独的不同传输服务的动作,所述传输服务被专门配置为传输服务的用户数据和服务数据。 
4.如权利要求1所述的方法,其特征在于,至少一个第一服务用户选择临时评估第二服务。 
5.如权利要求4所述的方法,其特征在于,所述用户的服务数据被临时传输给第二服务,使得第二服务使用所述用户的用户数据和服务数据来向所述用户提供第二服务。 
6.如权利要求5所述的方法,其特征在于,进一步包括最终化用户数据的经同步的服务改变的动作。
7.如权利要求1所述的方法,其特征在于,进一步包括预先计算为了将所述用户从第一服务升级到第二服务而应采取的每个步骤的动作。 
8.如权利要求7所述的方法,其特征在于,将预先计算的步骤相组合以形成工作流。 
9.如权利要求8所述的方法,其特征在于,执行工作流的预先计算的步骤 保证第一服务的用户数据和服务数据与第二服务的用户数据和服务数据之间的数据一致性。 
10.如权利要求1所述的方法,其特征在于,进一步包括批处理从第一服务到第二服务的多个数据迁移。 
11.如权利要求1所述的方法,其特征在于,第一和第二服务每个都包括许可证,所述许可证规定在使用第一和第二服务时应当遵循的使用策略。 
12.如权利要求11所述的方法,其特征在于,所述许可证在执行同步时被协调。 
13.如权利要求1所述的方法,其特征在于,第二服务是多分区多承租人服务。 
14.如权利要求1所述的方法,其特征在于,调度器确定传输服务数据和执行同步的最优时间,并且在所确定的最优时间调度服务数据传输和同步。 
15.一种用于将用户临时转移到不同服务以进行评估的方法,所述方法包括: 
在接收到表示所述用户打算评估第二服务的指示之前将所述用户的用户数据从第一服务传输给第二服务的动作,其中所述第二服务是由所述第一服务所提供的服务的经更新版本; 
接收表示所述用户打算评估第二服务的指示的动作; 
将对应于第一服务的服务数据临时传输给第二服务使得第二服务使用来自第一服务的所述用户的用户数据和服务数据来操作的动作,其中该用户数据和服务数据在操作期间被更新; 
确定用户的评估时间段已经结束的动作;以及 
将经更新的用户数据和服务数据从第二服务传输给第一服务使得第一服务使用来自所述第二服务的经更新的用户数据和服务数据来操作的动作。 
16.如权利要求15所述的方法,其特征在于,将一组用户转移到第二服务以进行评估。 
17.如权利要求16所述的方法,其特征在于,进一步包括编组用户数据的至少一部分以通过一个或多个不同的通道并行地传输。 
18.如权利要求16所述的方法,其特征在于,所述一组用户被一起批处 理以从第一服务传输给第二服务,使得所述一组用户的服务数据被一起传输。 
19.如权利要求16所述的方法,其特征在于,添加一个或多个新服务来传输数据。 
20.一种用于高效地将数据从服务的一个版本迁移到另一版本的系统,所述系统包括: 
用于在接收到表示用户将从第一服务转移到不同的第二服务的指示之前将用户数据的至少一部分从第一服务预先传输到第二服务的装置,其中所述第二服务是由所述第一服务所提供的服务的经更新版本,并且其中所述用户数据包括标识第一服务的一个或多个用户的标识信息; 
用于监控至少一个第一服务用户的用户升级状态的装置; 
用于接收表示一个或多个第一服务用户将转移到第二服务的指示的装置; 
用于预先计算为了将所述用户从第一服务升级到第二服务而应采取的每个步骤的装置,其中预先计算的步骤被组合以形成工作流,所述工作流被配置为保证第一服务的用户数据和服务数据与第二服务的用户数据和服务数据之间的数据一致性; 
用于将由第一服务使用的服务数据的至少一部分传输给第二服务的装置;以及 
用于同步在用户数据预先传输与服务数据传输之间在所述第一服务处发生的所述用户数据的任何改变,使得使用所传输的服务数据和经同步的用户数据来提供第二服务的装置。 
CN201110221876.5A 2010-07-30 2011-07-29 用于服务升级的数据迁移 Active CN102411511B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/847,485 US10417200B2 (en) 2010-07-30 2010-07-30 Data migration for service upgrades
US12/847,485 2010-07-30

Publications (2)

Publication Number Publication Date
CN102411511A CN102411511A (zh) 2012-04-11
CN102411511B true CN102411511B (zh) 2015-04-01

Family

ID=45527764

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110221876.5A Active CN102411511B (zh) 2010-07-30 2011-07-29 用于服务升级的数据迁移

Country Status (2)

Country Link
US (1) US10417200B2 (zh)
CN (1) CN102411511B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130297828A1 (en) * 2011-01-18 2013-11-07 Paul J. Broyles, III Flag to Synchronize a Service
US9031223B2 (en) 2011-05-25 2015-05-12 Echopass Corporation Systems and methods for managing multi-tenant callback services
FI20126010A (fi) 2012-09-28 2014-03-29 Tekla Corp Lähdekohteiden muuntaminen kohdekohteiksi
CN105359481B (zh) * 2013-07-01 2018-09-25 英派尔科技开发有限公司 用于数据传输的方法、计算机可读介质和数据存储系统
US10394768B2 (en) 2017-08-07 2019-08-27 Microsoft Technology Licensing, Llc Selective data migration on schema breaking changes
JP2022034321A (ja) * 2020-08-18 2022-03-03 富士フイルムビジネスイノベーション株式会社 情報処理装置及び情報処理プログラム

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6282542B1 (en) * 1997-08-06 2001-08-28 Tachyon, Inc. Distributed system and method for prefetching objects
WO2000014627A1 (fr) 1998-09-04 2000-03-16 Fujitsu Limited Gestion du passage a une version superieure, et systeme informatique a cet effet
US6714937B1 (en) * 2000-08-11 2004-03-30 Dell Products L.P. System and method for virtual setup and configuration for a build-to-order computer
US20040015950A1 (en) 2001-05-10 2004-01-22 International Business Machines Corporation Application service provider upgrades
TWI242725B (en) 2001-06-11 2005-11-01 Oce Tech Bv A method for executing a hot migrate operation through an incremental roll-over process that uses migration plug-in means for conversion during an upgrade transition, and a multiprocessing system and a system arranged for implementing such method
US7080221B1 (en) * 2003-04-23 2006-07-18 Emc Corporation Method and apparatus for managing migration of data in a clustered computer system environment
US7313792B2 (en) 2003-09-08 2007-12-25 Microsoft Corporation Method and system for servicing software
US7558843B2 (en) 2004-07-12 2009-07-07 Netsuite, Inc. Phased rollout of version upgrades in web-based business information systems
JP2006039814A (ja) * 2004-07-26 2006-02-09 Hitachi Ltd ネットワークストレージシステム及び複数ネットワークストレージ間の引継方法
US7484206B2 (en) * 2005-01-12 2009-01-27 International Business Machines Corporation Synchronization of password and user data during migration from a first operating system platform to a second operating system platform
US7770164B2 (en) * 2005-05-31 2010-08-03 Siemens Aktiengesellschaft Software upgrades with centralized preparation
JP4693540B2 (ja) 2005-08-04 2011-06-01 富士通株式会社 データベース再構成装置、およびデータベース再構成プログラム
US20070061355A1 (en) * 2005-09-13 2007-03-15 International Business Machines Corporation Computer- implemented method, system, and program product for managing data for an information technology (IT) migration
US9009265B2 (en) * 2005-09-28 2015-04-14 Photobucket Corporation System and method for automatic transfer of data from one device to another
US20070156849A1 (en) 2005-12-30 2007-07-05 Wolfgang Becker Systems and methods for delivering software upgrades in a provider-tenant environment
KR100779215B1 (ko) * 2006-09-29 2007-11-26 한국전자통신연구원 작업 데이터 자동 이동 방법 및 이를 위한 장치
US10817840B2 (en) * 2007-06-19 2020-10-27 Red Hat, Inc. Use of a virtual persona emulating activities of a person in a social network
US9218137B2 (en) * 2008-03-05 2015-12-22 International Business Machines Corporation System and method for providing data migration services
US9003059B2 (en) * 2008-03-31 2015-04-07 Microsoft Technology Licensing, Llc Running applications in an online or offline mode based on the availability of the connection to the remote web server
JP5247230B2 (ja) * 2008-05-14 2013-07-24 キヤノン株式会社 画像形成装置及びその制御方法、並びにプログラム

Also Published As

Publication number Publication date
US10417200B2 (en) 2019-09-17
US20120030167A1 (en) 2012-02-02
CN102411511A (zh) 2012-04-11

Similar Documents

Publication Publication Date Title
US10613788B2 (en) Data migration between cloud storage systems
CN102411511B (zh) 用于服务升级的数据迁移
CN110430087B (zh) 区块链热升级的架构设计与实现
US8166476B2 (en) On-demand access to a virtual representation of a physical computer system
US10079882B2 (en) Method and system for synchronizing information to contacts on cloud platform
EP3876496B1 (en) Mobile terminal and computer program product for widget sharing
CN102882944A (zh) 一种信息的处理方法、优先级信息的发送方法及装置
CN102510384A (zh) 一种个人数据的共享交互处理方法及服务器
CN111026430A (zh) 本地或分布式计算机系统上的柔性节点组成的方法和系统
CN102917012A (zh) 存储与通信去重复
CN103150201A (zh) 电子装置、以及用户与服务器启动的会话控制方法
CN102884508A (zh) 分层地分解消息
US20140038650A1 (en) Short message backup method, mobile terminal, and server
CN106155842B (zh) 一种数据迁移方法及装置
CN103257889A (zh) 用于混合式架构系统的应用程序管理装置及管理方法
CN112463169B (zh) 基于在线工作系统的文件处理方法、装置以及存储介质
CN102739761B (zh) 用于无连接传输协议的共享缓存器
CN111818179A (zh) 用户请求的处理方法、装置、计算设备和介质
CN110673970B (zh) 一种基于web应用的跨进程调用系统及方法
CN110233791B (zh) 数据去重方法和装置
CN103379015A (zh) 网站服务器与im客户端的数据传输方法及其装置和系统
CN116501469A (zh) 高性能计算集群的控制方法、电子设备以及存储介质
US20060085381A1 (en) Remote deployment access system and method
US10681509B2 (en) Service processing method and terminal
CN113626002A (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: 20150723

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150723

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.