CN102648448B - 供应并管理已复制数据 - Google Patents

供应并管理已复制数据 Download PDF

Info

Publication number
CN102648448B
CN102648448B CN201080049395.4A CN201080049395A CN102648448B CN 102648448 B CN102648448 B CN 102648448B CN 201080049395 A CN201080049395 A CN 201080049395A CN 102648448 B CN102648448 B CN 102648448B
Authority
CN
China
Prior art keywords
database
instance
replica
primary
environment
Prior art date
Application number
CN201080049395.4A
Other languages
English (en)
Other versions
CN102648448A (zh
Inventor
G·A·M·麦卡利斯特
S·西瓦苏布拉马尼亚
Original Assignee
亚马逊技术股份有限公司
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
Priority to US12/606,093 priority Critical patent/US8335765B2/en
Priority to US12/606,093 priority
Application filed by 亚马逊技术股份有限公司 filed Critical 亚马逊技术股份有限公司
Priority to PCT/US2010/054133 priority patent/WO2011053592A1/en
Publication of CN102648448A publication Critical patent/CN102648448A/zh
Application granted granted Critical
Publication of CN102648448B publication Critical patent/CN102648448B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2071Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using a plurality of controllers
    • G06F11/2076Synchronous techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/275Synchronous replication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/10Network-specific arrangements or communication protocols supporting networked applications in which an application is distributed across nodes in the network
    • H04L67/1095Network-specific arrangements or communication protocols supporting networked applications in which an application is distributed across nodes in the network for supporting replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes or user terminals or syncML
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2069Management of state, configuration or failover
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/80Database-specific techniques

Abstract

可供应已复制的数据库实例,其提供可在不同的数据区或地理位置中供应的主要副本和辅助副本。数据库可安装在主要副本上,且主要副本和辅助副本可安装允许任何I/O操作在主要副本和辅助副本之间复制的块级复制机制。可通过执行到辅助副本的故障切换操作来处理主要副本的任何故障或出故障。可使用DNS名称或其它这样的方法,使得该名称在故障切换期间可又被称为复制副本,使得在客户方不需要行动来利用“新的”主要副本。可使用对控制环境的Web服务调用来发起数据库的创建和已复制实例的供应。

Description

供应并管理已复制数据

[0001 ] 背景

[0002] 当越来越多数量的应用和服务通过网络例如互联网变得可用时,越来越多数量的 内容、应用和/或服务提供商求助于诸如云计算的技术。云计算通常是通过服务例如Web月艮 务来提供对电子资源的访问的方法,其中用于支持那些服务的硬件和/或软件动态地可升 级来在任何给定的时间满足服务的需要。用户或客户一般将租借、租用或以其它方式支付 通过云访问资源的费用,并因此不必购买和维持硬件和/或软件来提供对这些资源的访问。

[0003] 虽然各种应用和资源的方面可在云中被调节和管理,但这些应用和资源所依赖的 数据存储库并不类似地被客户或其它这样的用户调节或容易管理。一般,执行诸如供应并 按比例调整数据存储的任务是冗长乏味的手工程序,其中客户必须给数据库管理员(DBA) 或类似的专家用户提供配置信息和需要,使得DBA可确定配置是否是有效的。此外,不存在 使客户容易动态地和/或自动地调节数据库实例的参数或管理数据存储库的其它这样的方 面的方法。在很多情况下,数据实例将使备份和恢复机制在适当的地方,但这些机制常常在 单个位置或区域中,使得它们在该区域中容易受到失败或出故障。

[0004] 附图简述

[0005] 将参考附图描述根据本公开的各种实施方案,其中:

[0006] 图1示出各种实施方案可被实现的环境;

[0007] 图2示出可根据各种实施方案使用的控制面和数据面的示例性分离;

[0008] 图3示出用于在多个数据区中运行可根据一个实施方案使用的已复制数据实例的 示例性实现;

[0009] 图4示出用于创建可根据一个实施方案使用的已复制数据实例的示例性过程;

[0010] 图5示出用于创建可根据一个实施方案使用的主要副本的示例性过程;以及

[0011] 图6示出用于创建可根据一个实施方案使用的辅助副本的示例性过程。

[0012] 详细描述

[0013] 根据本公开的各种实施方案的系统和方法可克服在常规方法中经历的前述和其 它不足的一个或多个,以在电子环境中管理数据存储的方面。特别是,各种实施方案提供单 独的控制环境、或可用于使用户能够管理和/或改变数据环境的各种方面的控制面、或数据 面。可经由一组Web服务提供这种"自我服务"功能,使用户面和控制面能够一起充当虚拟数 据库管理员(DBA)。用户或客户可通过例如多个外部可见的应用编程接口(API)之一向控制 面提交请求。各种API可用于在数据环境中执行关于数据存储库例如关系数据库的特定功 能。被接收到API之一的请求可被分析以确定将在数据面中执行的期望行动,例如调节数据 存储器或数据存储实例的操作或配置参数的行动。部件例如工作流部件可确定对行动的适 当任务,并使任务以适当的顺序执行。这些任务中的至少一个一般将在数据环境中被执行, 例如以调节关系数据库的方面。

[0014] 根据某些实施方案,这样的系统可在数据环境中提供已复制数据实例的供应。供 应可利用主要-辅助复制方法,主要副本和辅助副本的每个在一个或多个分离的数据区、单 独的地理位置等中或跨越一个或多个分离的数据区、单独的地理位置等来供应。数据库副 本可在单独的数据实例上运行,每个数据实例连接到在副本中未被共享的专用块存储卷。

[0015] 在各种实施方案中,可使用块级复制机制例如来自奥地利Vienna的Linbit的分布 式复制块设备(DRBD®)或如华盛顿州西雅图的Amazon.com公司所提供的弹性块存储(EBS) 来执行复制,块级复制机制可反映在服务器之间的块设备的内容,并在冗余系统中同步地 复制数据。每个实例可运行安装成管理数据实例的所有输入和输出(I/O)操作的具有块级 复制机制内核模块的内核。可在主要副本处执行所有读和写,块级复制机制与辅助副本同 步地复制信息。

[0016] 主要副本和辅助副本都可具有外部面向的DNS名称。客户可使用DNS名称例如DNS_ primary来得到当前的主要副本。DNS_primary名称可又被称为或"cname"为(当前)主要副 本的外部DNS名称。当主要副本故障或否则不可用时,辅助副本可被提升或故障切换以变成 新的主要副本,由此DNS_primary的cname可更新到新的主要实例的DNS名称。所有写被发送 到在当前主要副本上的数据库。当主要实例接收到写时,信息被同步地写到辅助副本上。当 在两个地方成功地写时,写可被认为是成功的。在各种实施方案中在主要副本处只执行所 有读。

[0017]图1示出用于实现根据各种实施方案的方面的环境100的例子。如将被认识到的, 虽然基于Web的环境用于解释的目的,但是不同的环境可在适当时用于实现各种实施方案。 所示的环境1〇〇包括测试或发展部分(或侧)和生产部分。生产部分包括电子客户端设备 102,其可包括可操作来通过适当的网络104发送并接收请求、消息或信息并将信息传送回 设备的用户的任何适当的设备。这样的客户端设备的例子包括个人计算机、蜂窝电话、手持 式消息发送设备、膝上型计算机、机顶盒、个人数字助理、电子书阅读器等。网络可包括任何 适当的网络,包括内联网、互联网、蜂窝网络、局域网或任何其它这样的网络或其组合。用于 这样的系统的部件可至少部分地取决于网络的类型和/或所选择的环境。用于经由这样的 网络进行通信的协议和部件是公知的,且将不在本文详细地讨论。通过网络的通信可通过 有线或无线连接或其组合来实现。在本实例中,网络包括互联网,因为环境包括用于接收请 求并响应于该请求的Web服务器106,虽然对于其它网络,可使用服务于类似的目的的可选 设备,如对本领域的普通技术人员明显的。

[0018] 例证性环境包括至少一个应用服务器108和数据存储器110。应理解,可能有一些 应用服务器、层或其它元件、过程或部件,其可被链接或以其它方式配置,其可相互作用以 执行任务,例如从适当的数据存储器获得数据。如本文使用的,术语"数据存储器"指能够存 储、访问和检索数据的任何设备或设备的组合,其可包括在任何标准的、分布式或群集环境 中的任何组合和数量的数据服务器、数据库、数据存储设备和数据存储介质。应用服务器可 包括按需要与数据存储器合并以为客户端设备执行一个或多个应用的方面、为应用处理大 多数数据访问和商业逻辑的任何适当的硬件和软件。应用服务器与数据存储器协作来提供 访问控制服务,并能够产生内容例如文本、图形、音频和/或视频以传输到用户,该内容在本 实例中可通过Web服务器以HTMUXML或另一适当的结构语言的形式提供给用户。所有请求 和响应的处理以及在客户端设备102和应用服务器108之间的内容的传送可由Web服务器处 理。应理解,Web和应用服务器是不需要的,且仅仅是示例性部件,如本文讨论的结构代码可 在任何适当的设备或主机上执行,如在本文其它地方讨论的。此外,环境可被构造成使得测 试自动框架可被提供为用户或应用可订阅的服务。测试自动框架可被提供为在本文讨论的 各种测试模式中的任一个的实现,虽然也可使用各种其它实现,如本文讨论或建议的。

[0019] 环境还包括发展和/或测试侧,其包括允许用户例如开发者、数据管理员或测试者 访问系统的用户设备118。用户设备118可以是例如上面关于客户端设备102描述的任何适 当的设备或机器。环境还包括发展服务器120,其类似于应用服务器108起作用,但一般在代 码在生产侧上被部署并执行之前在发展和测试期间运行代码,并例如是外部用户是可访问 的。在一些实施方案中,应用服务器可起发展服务器的作用,且分离的生产和测试存储可以 不被使用。

[0020] 输出存储器110可包括一些分离的数据表、数据库或用于存储关于特定方面的数 据的其它数据存储机制和介质。例如,所示的数据存储器包括可用于为生产侧提供内容的、 用于存储生产数据112和用户信息116的机制。数据存储器也被示为包括用于存储测试数据 114的机制,测试数据114可与用户信息一起对测试侧使用。应理解,可能有很多其它方面, 其可能需要存储在数据存储器中,例如页面图像信息和访问权限信息,其可在适当时存储 在上面列出的机制的任一个中或在数据存储器110的额外机制中。数据存储器110通过与其 相关的逻辑可操作来接收来自应用服务器108或发展服务器120的指令,并响应于其而获 得、更新或以其它方式处理数据。在一个例子中,用户可提交对某种类型的项目的搜索请 求。在这种情况下,数据存储器可访问用户信息以验证用户的身份,并可访问目录细节信息 以获得关于该类型的项目的信息。该信息接着可例如在用户能够通过用户设备102上的浏 览器查看的网页上列出的结果中返回给用户。可在浏览器的专用页面或窗口中查看对所关 注的特定项目的信息。

[0021] 每个服务器一般将包括提供对该服务器的一般管理和操作的可执行程序指令的 操作系统,并一般将包括存储指令的计算机可读介质,当所述指令由服务器的处理器执行 时允许服务器执行其预期的功能。对服务器的操作系统和一般功能的适当实现是已知的或 在市场上可得到的,并容易由本领域普通技术人员特别根据本文的公开来实现。

[0022] 在一个实施方案中的环境是利用经由通信链路使用一个或多个计算机网络或直 接连接来互连的一些计算机系统和部件的分布式计算环境。然而,本领域的普通技术人员 将认识到,这样的系统可同样好地在具有比图1所示的更少或更多数量的部件的系统中操 作。因此,图1中的系统100的描绘应被理解为本质上是例证性的,且不限于本公开的范围。

[0023] 例如图1所示的环境可能对提供商例如电子市场是有用的,其中多个主机可用于 执行任务,例如服务内容、认证用户、执行支付交易、或执行很多其它这样的任务中的任一 个。这些主机中的一些可配置成提供相同的功能性,而其它服务器可配置成执行至少一些 不同的功能。在这样的情况下的电子环境可包括额外的部件和/或其它布置,例如在下面详 细讨论的在图2的配置200中示出的那些部件。

[0024] 根据一个实施方案的系统和方法提供使开发者、客户或其它经授权的用户能够容 易和成本有效地获得并配置关系数据库和其它这样的数据源的关系数据库服务("RDS"), 使得用户可执行任务,例如存储、处理和查询云中的关系数据集。虽然关于互联网、Web服务 和基于互联网的技术讨论了这个例子,应理解,各种实施方案的方面可与在电子环境中通 过网络可得到或提供的任何适当的服务一起使用。此外,虽然服务在本文被称为"关系数据 库服务",但应理解,这样的服务可在电子环境中与任何适当类型的数据存储库或数据存储 器一起使用。在本实例中的RDS包括至少一种Web服务,其使用户或客户能够容易管理关系 数据集,而不担心部署、升级、补丁管理、备份、复制、故障切换、容量管理、按比例调整和数 据管理的其它这样的方面的管理复杂性。开发者因此自由地开发复杂的云应用,而不担心 管理数据库基础设施的复杂性。

[0025]在一个实施方案中的RDS提供单独的"控制面",其包括对管理数据存储的方面有 用的部件(例如,硬件和软件)。在一个实施方案中,提供允许用户或客户在RDS内进行调用 以执行与数据存储有关的某些任务的一组数据管理应用编程接口(API)或其它这样的接 口。然而,用户仍然可使用直接接口或API来与数据存储库进行通信,并可仅当必要时使用 控制面的RDS特定的API,以管理数据存储或执行类似的任务。

[0026]图2示出可根据一个实施方案使用的RDS实现200的例子。在本实例中,最终用户的 计算设备202被示为能通过网络206在控制面208内进行调用,以执行任务,例如提供数据面 210的数据存储库。用户或应用204可直接通过数据面210的接口访问所供应的存储库。虽然 最终用户计算设备和应用用于解释的目的,但是应理解,任何适当的用户、应用、服务、设 备、部件或资源可在各种实施方案中在适当时访问控制面和/或数据面的接口。此外,虽然 部件分成控制面和数据面,但是应理解,这可指用于提供相应的功能性的至少一些资源(例 如,硬件和/或软件)的实际或虚拟分离。

[0027]在本实例中的控制面208本质上是处理控制和管理行动例如供应、按比例调整、复 制等的硬件和软件部件的虚拟层。在本实施方案中的控制面包括Web服务层212或层,其可 包括至少一个Web服务器,例如连同计算机可执行软件、应用服务器或其它这样的部件。Web 服务层还可包括用于从访问网络206接收Web服务调用或请求的一组API 232(或其它这样 的接口)。可提供每个API来接收对将关于数据环境执行的至少一个特定的行动的请求,例 如供应、按比例调整、克隆关系数据库的实例或使关系数据库的实例冬眠。当接收到对API 之一的请求时,Web服务层可解析或以其它方式分析该请求以确定作用于或处理调用所需 的步骤或行动。例如,可接收包括对创建数据存储库的请求的Web服务调用。在本实例中, Web服务层可解析该请求以确定待创建的数据存储库的类型、所请求的存储卷、所请求的硬 件(如果有)的类型、或其它这样的方面。对请求的信息可被写到管理("Admin")数据存储器 222或其它适当的存储位置或工作队列,用于随后的处理。

[0028]在一个实施方案中的Web服务层包括一组可升级的面向客户的服务器,其可提供 各种控制面API并基于API规范返回适当的响应。Web服务层还可包括至少一个API服务层, 其在一个实施方案中由处理面向外部的客户API的无国籍复制服务器组成。Web服务层可负 责Web服务前端特征,例如基于证书来认证客户、授权客户、抑制对API服务器的客户请求、 使用户输入生效、并将请求和响应编组或编出。API层也可负责响应于API调用而从管理数 据存储器读数据库配置数据/将数据库配置数据写到管理数据存储器。在很多实施方案中, Web服务层和/或API服务层将是唯一的外部可见的部件,或对控制服务的客户可见并可由 客户访问的唯一部件。Web服务层的服务器可以是无国籍的,并水平地按比例调整,如本领 域中已知的。API服务器以及持久数据存储器可例如在地理区域中或地理位置附近的多个 数据中心中扩展,使得服务器对单个数据中心故障是能复原的。

[0029]在本实施方案中的控制面包括在本文称为"清理器"部件214的部件。清理器部件 可以是可操作来轮询控制面的各种部件或以其它方式确定将响应于未完成的请求来执行 的任何任务的任何适当的部件。在本实例中,Web服务层可将"创建数据库"请求的指令或信 息放置在管理数据存储器222或类似的工作队列中,且清理器可周期性地检查用于未完成 的工作的管理数据库。可使用各种其它方法,如将对本领域的普通技术人员明显的,例如向 清理器发送工作存在的通知的Web服务。清理器部件可获得"创建数据库"请求,且使用该请 求的信息可将请求、调用或其它这样的命令发送到可操作来例示该请求的至少一个工作流 的工作流部件216。使用如在文本的其它地方讨论的工作流服务来产生和维持在一个实施 方案中的工作流。通常工作流是应被执行来执行特定的工作的一系列任务。工作流不是实 际工作,而是控制信息的流动和工作的执行的工作的抽象。工作流也可被认为是状态机,其 可在执行期间的任何时间管理并返回过程的状态。在一个实施方案中的工作流部件(或部 件的系统)可操作来为例如下列任务管理和/或执行工作流的托管和执行:存储库创建、修 改和探测;恢复和备份;安全组创建、探测和修改;用户证书管理;以及密钥旋转和证书管 理。这样的工作流可紧随着工作流服务实现,如在本文的其它地方讨论的。工作流部件也可 管理在用于不同的数据库引擎例如MySQL的工作流步骤之间的差异,因为下层工作流服务 不一定改变。

[0030] 在本实例中,可使用用于创建数据库并应用从原始请求提取的信息的工作流模板 来例示工作流。例如,如果请求是针对MySQL®关系数据库管理系统(RDBMS)实例,与Oracle ®RDBMS或其它这样的实例相反,则特定的任务将被添加到指向MySQL实例的工作流。工作 流部件也可选择与所请求的存储的量有关的特定任务、任何特定的硬件需要或其它这样的 任务。这些任务可按对总工作有用的执行顺序被添加到工作流。虽然一些任务可被并行地 执行,但其它任务依赖于将被首先完成的以前任务。工作流部件或服务可在工作流中包括 这个信息,且任务可按需要被执行以及信息被传递。

[0031] 客户的示例性"创建数据库"工作流可包括任务,例如供应数据存储实例,分配实 例外持久存储的卷,将持久存储卷连接到数据存储实例,接着分配并连接DNS地址或客户可 用于访问或以其它方式连接到数据实例的其它地址、端口、接口或标识符。在本实例中,给 用户提供用于访问实例的DNS地址和端口地址。工作流也可包括下载并安装任何二进制或 用于特定的数据存储技术(例如,MySQL)的其它信息的任务。工作流部件可管理这些和任何 相关任务的执行、或这样的任务的任何其它适当的组合,并可响应于实际上相应于数据面 210中的数据存储实例的"创建数据库"请求而产生对指示"数据库"的创建的请求的响应, 并提供用于访问实例的DNS地址。用户接着可直接使用DNS地址和端口访问数据存储实例, 而不必访问或经过控制面208。各种其它工作流模板可用于执行类似的工作,例如删除、创 建或修改一个或多个数据存储实例,例如增加存储。在一些实施方案中,工作流信息被写到 存储器,且至少一个单独的执行部件(未示出)拉或以其它方式访问或接收将基于工作流信 息执行的任务。例如,可能存在执行供应任务的专用供应部件,且该部件可能不被工作流部 件调用,但可监控任务队列或可接收用于以很多相关方式中的任一种供应任务的信息,如 应明显的。

[0032] 如所述,各种实施方案可利用可接收对过程或任务的当前状态例如供应存储库的 请求或调用的工作流服务,并可返回过程的当前状态。工作流部件和/或工作流服务不进行 实际调用或请求以执行每个任务,而相反管理使控制面的部件能够确定待执行的下一任务 的工作流的状态和配置信息以及该任务所需的信息,接着产生包括该状态信息的在数据面 内的适当调用,由此数据面的部件可进行调用以执行任务。工作流和任务可并行地被调度, 以便增加吞吐量并最大化处理资源。如所讨论的,任务的实际执行将出现在数据面中,但任 务将起源于控制面。例如,工作流部件可与可在数据存储器中进行调用的主机管理器通信。 因此,对于给定的任务,可对穿过某些参数的工作流服务进行调用,由此工作流服务产生工 作流的任务的序列,并提供当前状态,使得当前状态的任务可被执行。在任务被执行(或以 其它方式被解决或终结)之后,部件例如主机管理器可答复服务,其可接着提供关于工作流 中的下一状态的信息,使得下一任务可被执行。每当工作流的任务之一被执行时,服务可提 供待执行的新任务,直到工作流完成。此外,可对不同的工作流并行地运行多个线程,以加 速工作流的处理。

[0033] 在本实施方案中的控制面208还包括至少一个监控部件218。当在数据面中创建数 据实例时,可将该实例的信息写到控制面中的数据存储器例如监控数据存储器220中。应理 解,监控数据存储器可以是单独的数据存储器,或可以是另一数据存储器的一部分,例如在 管理数据存储器222中的一组不同的表、或另一适当的存储库。监控部件可访问在监控数据 存储器中的信息,以确定在数据平面210中的有效实例234。监控部件也可执行其它任务,例 如从控制面和/或数据面的多个部件例如Web服务层、工作流部件、清理器部件和各种主机 管理器收集日志和/或事件信息。使用这样的事件信息,监控部件可暴露客户可见的事件, 用于例如实现面向客户的API的目的。监控部件可不断地监控控制面的所有运行的存储库 和/或实例的健康状态,探测这些实例中的任一个的故障,并发起适当的恢复过程。

[0034] 对于提供对数据存储器的访问的机器,在数据面中的每个实例234可包括至少一 个数据存储器226和主机管理器部件228。在一个实施方案中主机管理器是在实例和/或应 用服务器例如Tomcat或Java应用服务器上执行的应用或软件代理,其被编程为管理任务例 如软件部署和数据存储操作以及监控数据存储器和/或相应的实例的状态。在一个实施方 案中主机管理器侦听只可从内部系统部件到达且客户或其它外部实体不可采用的端口。在 一些实施方案中,主机管理器不能在控制面层内发起任何调用。主机管理器可负责管理和/ 或执行任务,例如建立对新的存储库的实例,包括建立逻辑卷和文件系统,安装数据库二进 制和种子,并开始和停止存储库。主机管理器可监控数据存储器的健康状态以及针对错误 条件例如I/O错误或数据存储器错误监控数据存储器,并且如果必要可重新启动数据存储 器。主机管理器还执行和/或管理数据存储器和/或操作系统的软件补丁和升级的安装。主 机管理器还可收集相关的度量,例如可与CPU、存储器和I/O使用有关。

[0035] 监控部件可对所监控的实例234例如通过发送特定的请求或通过监控来自主机管 理器的心跳来周期性地与每个主机管理器228进行通信,以确定每个主机的状态。在一个实 施方案中,监控部件包括配置成向每个主机管理器发出命令的一组事件处理器(或监控服 务器),例如以获得特定的主机和/或实例的状态。如果响应在特定数量的重试之后没有被 接收到,则监控部件可确定存在问题,并可将信息存储在管理数据库222或另一这样的工作 队列中以执行对实例的行动,例如验证该问题且如果必要则重新供应实例。清理器可访问 该信息并切断实例的恢复工作流以试图自动从故障恢复。主机管理器228可充当对控制面 的监控和其它部件的代理,代表控制面部件执行实例的任务。有时候,实例之一例如相应的 主机、实例或卷毁损、再引导、重新启动等将出现不能被自动解决的问题。在一个实施方案 中,存在可记录这些和其它客户可见性事件的记录部件(未示出)。记录部件可包括API或其 它这样的接口,使得如果实例在一段时间内是可用的,客户可调用适当的"事件"或类似的 API来获得关于事件的信息。在一些情况下,当实例出故障时请求可保持未决。因为在这个 实施方案中控制面与数据面分离,控制面从不接收数据请求,因此不能排队等候对随后提 交的请求(虽然在一些实施方案中该信息可被转发到控制面)。因此,在本实施方案中的控 制面向用户提供关于故障的信息,所以用户可在必要时处理请求。

[0036]如所讨论的,一旦供应了实例且给用户提供了DNS地址或其它地址或位置,用户就 可通过网络使用Java数据库连接(JDBC)或其它这样的客户端将请求"直接"发送到数据面 210以直接与该实例234交互作用。在一个实施方案中,数据面采取计算云环境(或至少包括 计算机云环境或是计算云环境的部分)或一组Web服务和资源的形式,这组Web服务和资源 在硬件和/或软件部件的"云"或动态网络中提供数据存储和访问。DNS地址在这样的动态云 环境中是有益的,因为实例或可用性故障例如可通过将DNS地址编程地重新映射到用于使 用的任何适当的置换实例而被掩蔽。从用户202或应用204接收的请求例如可指向网络地址 转换(NAT)路由器224或其它适当的部件,其可将请求引导到实际实例234或相应于请求的 DNS的主机。如所讨论的,这样的方法允许实例被动态地移动、更新、复制等,而不需要用户 或应用改变用于访问实例的DNS或其它地址。如所讨论的,每个实例234可包括主机管理器 228和数据存储器226,并可在持久存储器230中具有至少一个备份实例或副本。使用这样的 方法,一旦实例通过控制面被配置,用户、应用、服务或部件就可直接通过对数据面的请求 与实例交互作用,而不必访问控制面232。例如,用户可通过DNS地址直接发出结构查询语言 (SQL)或与实例中的数据有关的其它这样的命令。用户将仅仅必须访问控制面,如果用户想 执行任务例如扩展实例的存储容量。在至少一个实施方案中,控制面208的功能可作为至少 一种服务由提供商提供,提供商可以或可以不与数据面210的提供商有关,而可仅仅是可用 于提供和管理数据面中的数据实例且也可监控和确保在分离的数据面210中的那些实例的 可用性的第三方服务。

[0037] 如所讨论的,提供控制面的功能作为Web服务或其它这样的服务的一个优点是控 制面起虚拟数据库管理员(DBA)的作用并避免人DBA执行任务例如供应数据。供应数据目前 是冗长的手工程序,需要DBA来接收必要的配置信息,确定配置是否是有效的,优化和调节 实例,并执行其它这样的任务,其花费相当大量的时间和努力。此外,这样的方法提供很多 错误机会,其可能不被发现,直到数据被丢失之后。使用如本文描述的控制面或服务,用户 或客户可替代地提交包括信息例如硬件的类型和数据库产品的版本的调用。控制面或服务 可接着执行必要的任务来创建、删除、修改、扩展或以其它方式修改数据存储器或数据存储 实例。控制面也可用一致的方式支持一些不同的数据库引擎,而不需要DBA在每个引擎中是 专家。一旦被供应,用户就可本地访问数据实例,并可简单地将现有的应用(例如MySQL应 用)指向DNS地址或特定实例的其它位置信息。没有查询模型或其它这样的功能的限制或修 改,因为用户可继续使用建立在MySQL、0racle或其它数据库技术上的应用。

[0038] 根据各种实施方案的系统和方法使客户能够利用Web服务或类似的这样的方法, 以在云计算或类似的环境中创建一个或多个已复制的数据库实例,提供高度持久和高度可 靠的数据解决方案。当客户在各种实施方案中创建已复制的数据库实例时,客户数据使用 主要-辅助复制模型被同步复制。在一些实施方案中,副本可位于不同的物理位置上,例如 在不同的数据区中。每个数据"区"可以指例如位于特定的地理区域内的一个或多个数据中 心或数据服务器的组,不同的区位于不同的地理位置处或周围。RDS实例接着可容忍数据区 之一的故障,因为在不同的地理位置处的另一数据区可能避免故障,除了在大的灾难性事 件的情况下。在一些情况下,数据中心可跨越多个数据区,但在给定数据中心内的数据副本 可在不同的区中被例示。很多其它变形是可能的,例如重叠区、在多个地理位置处的区等。 如果主要副本故障或以其它方式变得不可用,则RDS系统可快速并自动故障切换到辅助副 本,导致非常少的停机时间或数据不可用性。

[0039]在一个实施方案中,客户能够通过调用控制面的Web服务层的指定接口来创建已 复制的数据库实例,例如关于图2讨论的。例如,客户可调用指定诸如实例类、所分配的存储 器、数据库引擎等方面的"CreateDBIn StanCe"API,因为客户将创建未复制的数据实例。当 创建已复制实例时,客户可包括至少一个额外的参数,例如"已复制"或类似的参数,一个值 被设置为"真"或任何其它适当的值指示所创建的实例应被复制。在一些实施方案中,值默 认被设置为"假",使得未复制的实例被创建,除非另外由客户指定。在一些实施方案中,只 有某些客户具有创建已复制实例的能力,例如负担某些水平的服务的费用的客户等。

[0040]在一些实施方案中,客户也可选择辅助副本是否在与主要副本不同的数据区中创 建。在一些实施方案中客户也可被允许选择对实例的一个或多个特定的数据区、或例如有 序列表,而在其它实施方案中客户不能选择对至少辅助副本的数据区。如果客户指定两个 数据区且例如数据区之一例如在延长的时间段内变得不可用,在一些实施方案中持久性需 求将使另一副本在第三数据区中产生,依此类推。这可能需要多个客户的数据区列表的顺 序的管理和更新,这可复杂化用户体验,而不提供任何明显的益处。此外,应用遍及数据区 扩展相关的应用舰队可能更容易,使得可能有位于与辅助副本相同的数据区中的一些应用 舰队。

[0041 ] 在一些实施方案中,客户可为已复制的数据实例调用"DescribeDBInstance"或类 似的API,由此RDS可列出信息,例如主要副本的端点DNS名称和主要副本当前所位于的数据 区。客户仍可使用将用于单个数据区的常规方法与RDS实例进行通信,因为例如RDS实例的 状态一旦是"可用的",客户就可接收数据存储器的端点DNS名称,并使用端点DNS名称连接 到实例。在复制失败的情况下,RDS可使数据库故障切换到相应的辅助副本,且端点DNS名称 又可被称为新的主要副本。数据库端点DNS名称在很多实施方案中保持不变,在已复制实例 的寿命期间不变。

[0042]在一些实施方案中,可例如通过调用已复制参数被设置为"真"的 "ModifyDBInstance"或类似的API来给客户提供将未复制的实例转换成已复制实例的能 力。这可使数据库能够在适当的时间例如在下一维护窗期间或紧接在请求之后转换到已复 制实例,因为可依赖于API调用参数等。

[0043]各种实施方案利用块极复制机制,例如实现什么也不共享的内核模块、反映服务 器之间的块设备的内容的已复制存储解决方案。块级复制机制("BLRM")可紧接着块设备 (即,硬盘或逻辑卷)工作。它使用主要_从属复制结构,其中主要副本将所有更新指向下层 块设备。对块设备的所有输入和输出(I/O)请求由BLRM内核模块拦截,所有写操作被自动和 同步地复制。BLRM提供对等设备的内在故障探测,并在对等节点不可到达时调用适当的恢 复处理程序。BLRM也可在背景中将暂时不可用的节点自动重新同步化到数据的最近版本, 而不干扰在主要副本处的数据访问。BLRM使用生成标识符("GI")来识别已复制数据的生 成,由此BLRM可确定方面,例如两个节点是否是同一副本对的成员、背景重新再同步(如果 必要)的方向、以及部分或完全的重新同步是否需要。BLRM驱动器可在任何适当的时间例如 在副本对的初始化期间、当断开的备用副本切换到主要副本时、或起主要作用的资源与辅 助副本断开时开始新的生成。虽然为了解释的目的,块级复制机制在本文用作例子,但是应 理解,可在各种实施方案的范围内使用任何其它适当的块级技术或机制。

[0044]如所讨论的,在各种实施方案中的RDS数据实例可建立在一个或多个系统或平台 上。例如,实例可建立在虚拟计算环境上,虚拟计算环境使客户能够利用Web服务或另一适 当的方法来使用各种操作系统发起实例并管理那些实例。提供这样的虚拟计算环境的Web 服务的例子是由Amazon.com公司提供的弹性计算云(EC2)服务。数据实例也可建立在块级 存储机制上,块级存储机制可提供独立于实例的寿命持久的实例外存储器。块存储机制可 提供存储卷,其可连接到实例并被暴露为实例内的设备。块存储平台的例子在2008年8月8 日提交的题目为"Managing Access of Multiple Executing Programs to a Non-Local B1 ock Data Storage"的共同未决的美国专利申请号12/188,949被提供,该专利由此通过 引用被并入本文。逻辑卷(例如LVM层)可建立在块存储卷和适当的文件系统的顶部上,使得 客户数据库可在LVM/文件系统层的顶部上运行。在一个实施方案中对于已复制数据库, BLRM可在LVM层的顶部上运行。在这样的实施方案中BLRM将拦截所有I/O请求并将那些请求 发送到逻辑卷,其又可在多个块存储卷中分离请求。逻辑卷的使用可提供处理多个块存储E 卷的能力以及容易扩展存储的能力等。在LVM的顶部上的分层BLRM也可允许白操作在副本 中被复制。

[0045]图3示出用于实现主要-辅助复制模型以提供已复制RDS实例的机制300的例子。在 本实例中,主要副本310和辅助副本312位于数据平面308或数据库环境的不同的数据区(1 和2)中。每个副本建立在块存储机制的顶部上,块存储机制在这里被示为BLRM层318、322, 用于管理对每个副本的块存储器320、322的1/0。控制面306的部件例如可类似于关于图2讨 论的那些部件,能够通过将配置命令发到例如可执行必要的建立操作的本地主机管理器 314、316来创建已复制RDS实例。如在附图中看到的,块级机制例如BLRM 318、322定位成拦 截在块设备级处的所有1/0请求,并将对请求的信息写到本地磁盘和远程磁盘320、324。在 本实例中,数据库318(例如SQL)只在主要副本310上运行,且所有客户端302在主要副本310 上运行其数据库事务(经由适当的网络304)。数据库318不在辅助副本312上运行,且文件系 统也可不安装在辅助副本上,因为数据库将通常不知道在下层设备中的更新。

[0046]每个数据库客户端302可使用又可称为主要副本310的主机名称的RDS数据库DNS 端点名称来自动发现当前的主要副本。通过使用DNS来发现当前的主要副本,可例如维持与 现有的数据库客户端例如本地MySQL客户端、JDBC、PHP、C#和Haskell的兼容性。虽然DNS缓 存可潜在地使客户端试图连接到旧的主要副本,客户端将不能通过连接到辅助副本来与数 据库交谈,因为没有数据库在辅助副本中运行。客户于是可知道获得适当的DNS信息。

[0047]图4示出了根据一个实施方案的用于为客户创建已复制RDS实例的过程400的例 子。虽然术语"客户"在本文用于指数据的"所有者"或由RDS系统托管的数据库或实例,但是 应理解,术语客户仅仅是例子,且任何适当的用户或开发者可被允许在各种环境中访问控 制面和数据面。此外,虽然描述了与数据环境的控制有关的实施方案,但是应理解,类似的 方法可用于在与控制环境不同的环境中控制和/或管理各种其它部件、设备、应用、服务或 其它这样的资源。这个过程的步骤呈现为特定实施方案的例子,但应理解,在各种实施方案 的范围内,额外的、更少和/或可选的步骤可按不同的顺序和/或并行或同时执行。

[0048] 在本实例中,客户调用CreateDBInstance或类似的API 402,其中Web服务层的部 件可分析该调用并使客户所提供的数据库创建参数存储到管理数据库404。数据库的生命 周期可被标记有值例如"CREATING",当成功地将记录提交到管理数据存储器时,被标记有 "PENDING"的改变状态,使得创建数据库的任务或工作将由清理器部件接收到。Web服务层 不直接调用工作流系统来切断在本实施方案中的活动以避免发起行动接着验证工作流开 始该任务的两阶段任务的活动。通过简单地保存用于由清理器取回的请求,没有工作流活 动将丢失。

[0049] 如前所述,清理器对新的工作周期性地轮询管理数据库。具有CREATING和PENDING 的生命周期和改变状态的数据库记录例如可使清理器发起"CreateDatabase"或类似的工 作流406。作为工作流的初始任务,数据库的改变状态可被更新到值例如"APPLYING",由此 其它清理器知道改变在进行中。工作流的其它主要任务包括创建将充当主要副本的实例 (408),从主要副本创建辅助副本(410),以及连接辅助副本与主要副本(412)。一旦副本被 连接且是可用的,RDS实例就可暴露于客户并使用DNS名称可被访问(414)。在各种实施方案 中,对辅助副本的标度计算"在场景后面"被执行,由此辅助副本可在连接副本之前按比例 调整,用于复制和/或故障切换。

[0050] 图5示出可用于根据一个实施方案创建主要副本的这样的过程的部分500的例子。 如所讨论的,工作流可采取初始步骤以供应构成RDS实例的所有资源。例如,数据实例例如 通过使用RDS指定的机器图像对主要主机创建(502)。可为主要主机分配并连接块存储卷 (504)。至少部分地基于配置信息来请求卷,配置信息指定方面例如单独卷的最大尺寸和容 器的期望最小数量。当保留的I0PS被保证时,可使用单个卷。一旦核心资源的每个变得可 用,工作流就将块存储卷连接到为主要副本分配的数据实例。

[0051] 在一些实施方案中,创建执行类似于客户数据库的防火墙的功能的安全组。安全 组可使客户能够定义例如可与数据库通信的一系列地址例如互联网协议(IP)地址或定义 可与数据库通信的数据实例。

[0052] 工作流可使主机管理器例如通过下载主机管理器、验证校验和或以其它方式使下 载生效并调用适当的安装实例例如Tomcat安装应用API来被安装并启动(506)。一旦主机管 理器在安装之后成功地启动,数据实例就可具有安装数据库引擎和建立客户数据库所需的 功能。

[0053] 一旦主要副本运行,工作流就可为主要副本请求由主机管理器执行的各种行动。 例如,主机管理器可请求块存储卷被安装和文件系统被准备(508)。在某些实施方案中,对 两种角色的每个执行块存储卷的安装和文件系统的建立:二进制角色和数据角色。在一个 实施方案中,控制面发送存储配置文件(例如XML文件),其向主机管理器提供关于对每个角 色使用的安装点和卷的信息。使用该信息,主机管理器可为对给定角色供应的所有卷创建 物理设备,并可创建对每个角色在这些设备中条理化数据的逻辑卷。一旦逻辑卷被创建 (510),主机管理器就可通过安装本身作为唯一的副本的BLRM配置文件并启动BLRM内核模 块来创建BLRM配置信息。一旦BLRM使用配置信息被启动(512),BLRM就可自动处理对数据卷 的所有I/O访问。

[0054]工作流可接着将分组管理器(例如RPM)公共签名密钥或其它安全机制安装到主要 副本的主机管理器。主要副本的主机管理器可接着例如通过在数据实例上下载并验证签名 的信息的主机管理器来下载并安装数据库引擎(514),后面是包裹的解开、安装和投放。随 后,主要副本的主机管理器可安装将作为客户数据库的基础使用的空白数据库。通过以RDS 特定的空白数据库开始,可容易应用用于管理的许可和表格。主机管理器可创建客户数据 库、改变对数据库的根口令、并创建数据库用户(516 ),如在客户请求中指定的。工作流接着 可开始数据库(例如My SQL)(518)。

[0055]由于数据库开始,BLRM资源可被断开,且位图被清除。工作流可使快照对主要主机 的块存储卷而捕获,且主要数据库的主机管理器可被指示来创建新的一般接口。主机管理 器接着可被指示来安装具有辅助主机名的新的BLRM配置文件,并可再次装入配置信息。 [0056] 一旦示例性工作流的上面任务中的至少一些完成,工作流就可继续前进到目的在 于构建辅助副本的任务。图6示出用于创建可根据各种实施方案使用的至少一个辅助或备 用副本的示例性过程600的步骤。作为第一任务,可从主要副本的数据卷的块存储快照创建 块存储卷(602),且可对二进制创建卷。工作流可接着使数据实例被发起,且所分配的卷被 连接(604)。如所讨论的,可在与主要副本连接之前对辅助副本执行标度计算。可接着对辅 助副本发起主机管理器(606)。一旦主机管理器对辅助副本运行,工作流就可调用主机管理 器以建立辅助实例。在建立过程期间,主机管理器可建立卷(608),安装具有适当的主要副 本和辅助副本配置的BLRM配置文件(610),确定BLRM是否被安装并启动内核模块,接着建立 BLRM处理程序(612)。此时,主要副本和辅助副本应被连接并从清除位图调用被发出的时刻 起同步。工作流接着可在管理数据存储器中将数据库标记为"可用的",并使实例对客户是 可利用的(614)。

[0057] 一旦实例的主要副本和辅助副本运行且对客户是可利用的,客户就可执行关于实 例的一些行动的任一个。例如,客户可将请求发送到Web服务层的API或命令行工具,以描述 一个或多个数据库。Web服务可立即通过查询管理数据存储器以得到在请求中指定的客户 数据库的当前状态来实现请求。在未决修改的情况下,当前值和修改值可被显示给客户。 [0058] 在一些情况下,客户可调用API例如"RebootDBInstance"API,以便重新引导客户 数据库。在一个实施方案中,这个API仅仅使客户能够重新引导数据库引擎而不是RDS实例。 Web服务层可将信息存储到管理数据存储器(或另一这样的工作队列),由此清理器可接收 到信息以开始工作流。工作流可调用主要副本的主机管理器以重新开始数据库。在各种实 施方案中这个API的实现在已复制和未复制的实例中没有不同。

[0059]客户可发送请求以使用例如API或命令行工具删除客户数据库,由此控制面的部 件可被指示准备删除。在证书和请求参数的验证之后,例如Web服务层的部件可例如证实客 户数据库可在当前的时间例如生命周期没有在CREATING或DELETING状态中时被删除。部件 也可将管理数据存储器中的客户数据库的适当的记录更新到DELETING的生命周期状态或 PENDING的改变状态。周期性地轮询待完成的任务的工作流清理器可识别出数据库由于 PENDING的改变状态而应被删除,并可发起工作流实例以完成删除。工作流的第一行动或任 务可以是将数据库的改变状态更新到APPLYING,使得其它清理器知道变化在进行中。

[0060]工作流实例可以抽出任何剩余的事件日志并释放为主要副本和辅助副本分配的 资源。例如,工作流可指示RDS事件处理器从RDS实例抽出事件,接着关闭数据库并卸下主要 副本中的文件系统。如果最终的快照被客户请求或如果策略以其它方式规定,则工作流可 指示数据库的快照被获得。实例通过调用RDS事件处理器API来被重新注册以确保事件处理 器系统不再监控实例。DNS名称可被删除,且块存储卷和数据实例被释放。工作流可通过将 管理数据存储器中的这个客户数据的记录更新到DELETED的状态来完成删除,由此该记录 可移动到记录档案库中且该记录被删除。

[0061] 使客户按比例调整为实例分配的存储和/或计算容量有时也可能是必要或合乎需 要的。当按比例调整存储时,例如卷可添加到主要副本和辅助副本,LVM被扩展。在主要副本 上,BLRM处理程序可被调用以扩展块设备来包括在块设备的控制下的新卷,且文件系统可 被调整大小。

[0062] 特别是,可根据当前的卷配置参数为主要副本和辅助副本提供新的块存储卷。可 对两个实例上的主机管理器调用"ScaleStorage"或类似的API,这可使物理设备被创建且 新的卷添加到现有的卷组。主机管理器可例如通过将LVM物理区域从一个物理卷(例如块存 储卷)移动到另一物理卷来使卷组中的空间重新平衡。逻辑卷也可扩展成包括新的空间。一 旦ScaleStorage功能完成,工作流就可为在主要接口上的主机管理器接口调用例如接口例 如"primaryScaleStorage"API,这可使BLRM块设备层扩展以使用新的空间。一旦BLRM调整 大小完成,文件系统就可被调整大小。如果没有剩余的更新,则管理数据存储器中的客户数 据库的记录可被设置为"AVAILABLE"的生命周期状态,且改变状态被更新为"NONE"。调整大 小的实例可接着由客户利用。如果主要副本或辅助副本在按比例调整过程期间是不可达到 的,则工作流可中止并离开在例如"MODIFYING"中的状态,并在以后的时间重试。

[0063] 当按比例调整计算容量时,各种实施方案使客户能够调节实例的"计算类",每个 类具有所分配的指定计算容量。在某些实施方案中,辅助副本首先例如通过使用故障切换 过程被按比例调整,系统接着切换到辅助副本,由此辅助副本变成新的主要副本。旧的主要 副本的计算轨道数据编辑程序汇编可在必要时按比例调整,且旧的主要副本可起新的辅助 副本的作用。通过首先按比例调整辅助副本并进行例如故障切换,已复制实例可经历较短 的停机时间,停机时间否则可能在单个数据区中按比例调整实例类时出现。

[0064] 下面介绍了用于按比例调整数据库实例的过程的特定实例,在该过程中,已复制 实例具有主要副本P和辅助副本S。可使用新的实例类并使用与现有实例相同的安全组为主 要副本和辅助副本提供新的实例(例如可分别在与P和S相同的数据区中创 建?_1^«和3_116«。在管理数据库中的RDS实例的状态可被更新到值例如"IN_ MODIFICATION"。实例标识符可从事件处理器被取消注册,使得当工作流拆卸数据库用于按 比例调整时,主要和/或辅助副本的恢复没有被触发。辅助实例的状态可被更新为值例如 "IN_MIDIFICATI0N"。在辅助副本上,可请求主机管理器通过例如停止数据库、与主要实例 断开(例如,通过发出BLRM断开命令)、卸下所有文件系统并使所有的卷组无效来停止使用 现有的块存储机制。块存储卷可从S分离并连接到S_new。主机管理器接着可安装在S_new 上,并可被请求来启动卷组。主要副本可接着例如通过关闭数据库并卸下卷来终止,且所有 块存储卷可被分离。到S_new的故障切换可通过将数据库端点指向S_new来发起,因而使5_ new成为新的主要副本。S_new上的主机管理器可接着被请求安装文件系统,且证书(例如 RPM公钥)可被发送到新实例上的主机管理器jjew上的主机管理器可接着被请求开始数 据库,且数据库可被标记为AVAILABLE。在此阶段,数据库准备使用,即使辅助副本仍然在创 建之下。在下一步骤,P_new实例可开始,且以前连接到P的块存储卷可连接到P_new。主机管 理器可安装在P_new上,且BLRM配置文件被安装。在这个实施方案中,此时没有文件系统安 装在P_new上。接着向S_new上的的主机管理器发出命令,以连接5_116¥与?_116¥,以及验证连 接状态。接着可提供按比例调整的副本用于由客户访问。

[0065] 实施方案还可允许用户例如通过创建快照或其它时间点备份来在其实例中备份 信息。例如,RDS可使客户能够创建其实例的快照并从这些快照创建新的实例。快照也可用 于执行已复制数据库的时间点恢复。为了创建未复制的实例的快照,工作流有效地将I/O挂 起到数据库卷,获得连接到实例的卷的块存储级快照,并解挂卷。当创建已复制实例的快照 时,可在辅助副本处获得快照。为此,可暂时断开辅助副本,并从所有块存储卷获得快照。在 获得快照之后,辅助副本可被重新连接。通过实现备份,客户有将实例恢复到给定的时间点 的能力,只要时间在过去的X天内,其中X是客户的保留期。

[0066] 当客户实现在未复制的实例中的备份时,可按有规律的间隔例如每天在备份窗期 间获得快照,且日志可按其它间隔例如每五分钟备份。当客户想将实例恢复到特定的时间 点例如^时,实例可从具有最接近于期望时间点的时间但在期望时间点之前从快照创建, 且日志可用于向前滚动状态以反映该时间点。在已复制实例中,可在辅助副本上获得快照, 同时从主要副本备份日志。

[0067] 在一个实施方案中,到主机管理器的所有通信信道使用超文本传输协议在安全套 接层(SSL)上来固定。在实例启动时使用脚本可启动托管主机管理器应用的每个应用服务 器。在启动应用服务器引擎之前,可执行产生自签名的证书并安装证书以实现SSL通信信道 的脚本。SSL通信在一个实施方案中用于加密通信信道而不是用于客户认证。客户认证替代 地使用嵌入每个请求中的公钥/私钥签名来实现,使得在一个实施方案中所有客户端将使 用私钥来签署查询字符串参数。这个签名可由定制拦截器生效,定制拦截器可部署有主机 管理器的应用服务器。此外,可对数据面中的每个所监控的实例建立安全组(即,防火墙规 则),使得只有位于给定网络或安全组中的主机可使用主机管理器端口来进行通信。安全信 息和证书(例如私钥)可存储在适当的keystore中,keystore可提供诸如密钥管理和旋转的 功能。

[0068] 如所讨论的,可用类似的方式备份日志文件。日志可用于执行任务,例如重新播放 各种交易,假如数据文件必须被恢复。引擎日志可被复制到适当的存储位置,使得以前备份 的日志文件可使用简单的列表命令来获得。主机管理器将使用这个结果来确定是否有需要 被复制的日志。例如,主机管理器可请求存储桶列表以获得写下的日志文件的列表,使得最 后的序列可被备份。如果新的日志被创建,则它可首先确定日志没有有效地被数据库引擎 写,且接着日志可被复制且所验证的复制被成功地执行。

[0069] 如上所讨论的,可在各种操作环境中实现各种实施方案,操作环境在一些情况下 可包括一个或多个用户计算机、计算设备或可用于操作多个应用中的任一个的处理设备。 用户或客户端设备可包括多个通用个人计算机例如运行标准操作系统的桌上型或膝上型 计算机以及蜂窝无线和手持设备中的任一个,手持设备运行移动软件并能够支持很多联网 和消息发送协议。这样的系统也可包括运行各种市场上可买到的操作系统和其它已知应用 的任一个的多个工作站,用于诸如发展和数据库管理的目的。这些设备还可包括其它电子 设备,例如哑终端、瘦客户端、游戏系统和能够经由网络通信的其它设备。

[0070] 各种方面也可被实现为至少一种服务或Web服务的部分,例如可以是面对服务的 结构的部分。服务例如Web服务可使用任何适当类型的消息发送,例如通过使用以可扩展标 记语言(XML)格式并使用适当的协议例如SOAP(从"简单对象访问协议"得到)交换的消息来 进行通信。由这样的服务提供或执行的过程可用任何适当的语言例如Web服务描述语言 (WSDL)来编写。使用语言例如WSDL允许功能,例如在各种SOAP框架中的客户端侧代码的自 动产生。

[0071]大多数实施方案利用本领域技术人员熟悉的用于使用多种市场上可买到的协议 例如TCP/IP、OSI、FTP、UpnP、CIFS和AppleTalk中的任一个支持通信的至少一个网络。网络 可以是例如局域网、广域网、虚拟专用网络、互联网、内联网、外联网、公共交换电话网络、红 外网络、无线网络和其任何组合。

[0072]在利用Web服务器的实施方案中,Web服务器可运行多种服务器或中间层应用中的 任一个,包括HTTP服务器、FTP服务器、CGI服务器、数据服务器、Java服务器和商业应用服务 器。服务器也可以能够例如通过执行一个或多个Web应用来执行在来自用户设备的响应请 求中的程序或脚本,这些Web应用可被实现为以任何编程语言例如Java®、C、C#或C++或任 何脚本语言例如Perl、Python或TCL以及其组合编写的一个或多个脚本或程序。服务器也可 包括数据库服务器,没有限制地包括可从Oracle®、Microsoft®、Sybase®:和IBM.®商业地 得到的那些服务器。

[0073] 环境可包括如上所述的各种数据存储器和其它存储器或存储介质。这些可存在于 多种位置上,例如在(和/或存在于)一个或多个计算机本地的或远离在网络中的任何或所 有计算机的存储介质上。在特定的一组实施方案中,信息可存在于本领域技术人员熟悉的 存储区域网络("SAN")中。类似地,用于执行属于计算机、服务器或其它网络设备的功能的 任何必要的文件可在适当时在本地和/或远程地存储。在系统包括计算机化设备的场合,每 个这样的设备可包括可经由总线电耦合的硬件元件,元件包括例如至少一个中央处理单元 (CPU)、至少一个输入设备(例如,鼠标、键盘、控制器、触摸屏或小键盘)和至少一个输出设 备(例如显示设备、打印机或扬声器)。这样的系统也可包括一个或多个存储设备,例如磁盘 驱动器、光学存储设备和固态存储设备例如随机存取存储器("RAM")或只读存储器("ROM") 以及可移动介质设备、存储卡、闪存卡等。

[0074] 这样的设备也可包括如上所述的计算机可读存储介质阅读器、通信设备(例如调 制解调器、网卡(无线或有线)、红外通信设备等)和工作存储器。计算机可读存储介质阅读 器可连接于或配置成接收计算机可读存储介质,其代表远程、本地、固定和/或可移动存储 设备以及用于暂时和/或更永久地包含、存储、传输并检索计算机可读信息的存储介质。系 统和各种设备一般还包括很多软件应用、模块、服务或位于至少一个工作存储设备内的其 它元件,包括操作系统和应用程序例如客户端应用或Web浏览器。应认识到,从上面的描述 中,可选的实施方案可具有很多变化。例如,定制的硬件也可被使用和/或特定的元件可在 硬件、软件(包括便携式软件例如小应用程序)或两者中实现。此外,到其它计算设备例如网 络输入/输出设备的连接可被使用。

[0075] 用于包含代码或代码的部分的存储介质和计算机可读介质可包括在本领域中已 知或使用的任何适当的介质,包括存储介质和通信介质,例如但不限于在用于存储和/或传 输信息例如计算机可读指令、数据结构、程序模块或其它数据的任何方法或技术中实现的 易失性和非易失性、移动和不可移动介质,包括狀1、1?(通、££?如11、闪存或其它存储技术、〇0- ROM、数字通用盘(DVD)或其它光学存储器、盒式磁带、磁带、磁盘存储器或其它磁性存储设 备或可用于存储期望信息并可由系统设备访问的任何其它介质。基于本文提供的公开和教 导,本领域普通技术人员将认识到实现各种实施方案的其它方式和/或方法。

[0076]说明书和附图因此在例证性而不是描述性的意义上看待。然而,将明显,可对其进 行各种修改和改变,而不偏离如权利要求中阐述的发明的较宽的精神和范围。

[0077]条款1. 一种使用控制环境的一个或多个自助式Web服务来在数据库环境中供应已 复制的关系数据库实例的计算机实现的方法,包括:

[0078]在配置有可执行指令的一个或多个计算机系统的控制下,

[0079]提供多个应用编程接口(API),每个API使用户能够将Web服务请求提交到控制环 境,每个API相应于在单独的数据库环境中关于关系数据库对所述用户执行的期望行动;

[0080] 响应于通过所述多个API的第一个API从所述用户接收到对所述控制环境的Web月艮 务请求,例示包括用于下列操作的任务的工作流:

[0081] 在所述数据库环境中在第一数据区中供应主要实例副本;

[0082] 将数据库引擎安装在所述主要副本实例中;

[0083] 使用所述主要实例副本的一个或多个快照在所述数据库环境中在第二数据区中 供应辅助实例副本;以及

[0084] 将块级复制机制连接到主要实例副本和辅助实例副本中的每个,所述块极复制机 制配置成拦截对所述主要实例副本的任何读或写,并使对所述主要实例副本更新的任何数 据同步更新到所述辅助实例副本;以及

[0085] 给所述用户提供使所述用户能够与在所述主要副本实例中安装的数据库引擎交 互作用的别名,别名可更新以使所述用户能够在主要实例副本故障时与所述复制实例副本 交互作用。

[0086] 条款2.条款1的计算机实现的方法,其中所述第一实例副本和第二实例副本中的 每个在所述数据库环境中在单独的数据实例上运行,每个数据实例连接到一个或多个专用 块存储卷。

[0087] 条款3.条款2的计算机实现的方法,其中块级复制机制可操作来在所述第一实例 副本和第二实例副本的一个或多个专用块存储卷之间同步地复制数据。

[0088] 条款4. 一种使用户能够使用单独的控制环境在数据库环境中创建已复制的数据 库实例的计算机实现的方法,包括:

[0089] 在配置有可执行指令的一个或多个计算机系统的控制下,

[0090] 提供多个应用编程接口(API),每个API使用户能够将Web服务请求提交到所述控 制环境,每个API相应于在所述数据库环境中关于数据库对所述用户执行的期望行动; [0091]响应于通过所述多个API之一从所述用户接收到对所述控制环境的Web服务请求, 使数据库的第一实例副本和第二实例副本在所述数据库环境中被供应,块极复制机制配置 成拦截在所述主要实例副本处对所述数据库的任何写操作,并将对所述写操作的变化同步 地复制到所述辅助实例副本;以及

[0092] 使所述用户能够经由所述主要实例副本访问所述数据库。

[0093] 条款5.条款4的计算机实现的方法,其中在单个数据区中、在分开的地理位置处的 分开的数据区中、在越过多个地理位置的单个数据区中或越过在单个地理区域中的多个数 据区供应所述第一实例副本和第二实例副本。

[0094] 条款6.条款4的计算机实现的方法,其中所述控制环境配置成如果所述主要实例 副本变得不可用则自动执行到所述辅助实例副本的故障切换操作。

[0095] 条款7.条款4的计算机实现的方法,还包括:

[0096]使主机管理器对第一实例副本和第二实例副本中的每个来安装,每个主机管理器 可操作来与所述控制环境通信并在所述数据库环境中执行一个或多个任务。

[0097]条款8.条款4的计算机实现的方法,其中使用主要实例副本的主要块存储卷的快 照来创建辅助实例副本的辅助块存储卷。

[0098]条款9.条款4的计算机实现的方法,其中当从所述用户接收的Web服务请求包括指 示已复制实例将被创建的复制参数值时,所述第一实例副本和第二实例副本在所述数据库 环境中被供应。

[0099]条款10.条款4的计算机实现的方法,其中给所述用户提供使所述用户能够与当前 主要实例副本通信的别名,包括当故障切换操作使所述复制副本变成新的当前主要实例副 本时。

[0100] 条款11.条款4的计算机实现的方法,还包括:

[0101] 使所述用户能够使用通过多个API之一提交到所述控制环境的Web服务请求将未 复制的实例转换成已复制实例。

[0102] 条款12.条款4的计算机实现的方法,还包括:

[0103] 响应于通过多个API之一接收到Web服务请求来捕获所述数据库的一个或多个快 照。

[0104] 条款13.条款12的计算机实现的方法,其中所述快照在辅助实例副本上获得。

[0105] 条款14.条款4的计算机实现的方法,还包括:

[0106] 响应于Web服务请求,在所述控制环境中执行工作流,包括用于在所述数据库环境 中供应、配置和连接所述第一实例副本和第二实例副本的任务。

[0107] 条款15.条款4的计算机实现的方法,还包括:

[0108] 使用所述控制环境的至少一个监控部件来监控所述第一实例副本和第二实例副 本的健康信息。

[0109]条款16.条款4的计算机实现的方法,还包括:

[0110] 在所述控制环境中将所述第一实例副本和第二实例副本的配置信息存储到数据 存储器中。

[0111] 条款17.条款4的计算机实现的方法,其中所述复制技术是与数据库引擎无关的。

[0112] 条款18. -种使用户能够使用单独的控制环境在数据库环境中创建已复制的数据 库实例的系统,包括:

[0113] 处理器;以及

[0114]包括指令的存储设备,当所述指令被处理器执行时使所述处理器:

[0115]提供多个应用编程接口(API),每个API使用户能够将Web服务请求提交到所述控 制环境,每个API相应于在所述数据库环境中关于数据库对所述用户执行的期望行动;

[0116]响应于通过所述多个API之一从所述用户接收到对所述控制环境的Web服务请求, 使数据库的第一实例副本和第二实例副本在所述数据库环境中被供应,块极复制机制配置 成拦截在所述主要实例副本处对所述数据库的任何写操作,并将对所述写操作的变化同步 地复制到所述辅助实例副本;以及

[0117] 使所述用户能够经由所述主要实例副本访问所述数据库。

[0118] 条款19.条款18的系统,其中在单个数据区中、在分开的地理位置处的分开的数据 区中、在越过多个地理位置的单个数据区中或越过在单个地理区域中的多个数据区供应所 述第一实例副本和第二实例副本。

[0119]条款20.条款18的系统,其中所述指令在被执行时还使所述处理器:

[0120] 响应于所述Web服务请求,在所述控制环境中执行工作流,包括用于在所述数据库 环境中供应、配置和连接所述第一实例副本和第二实例副本的任务。

[0121] 条款21.条款18的系统,其中所述指令在被执行时还使所述处理器:

[0122] 使主机管理器对所述第一实例副本和第二实例副本中的每个来安装,每个主机管 理器可操作来与所述控制环境通信并在所述数据库环境中执行一个或多个任务。

[0123] 条款22. -种存储指令的计算机可读存储介质,所述指令使用户能够使用单独的 控制环境在数据库环境中创建已复制的数据库实例的系统,所述指令在被执行时使所述处 理器:

[0124] 提供多个应用编程接口(API),每个API使用户能够将Web服务请求提交到所述控 制环境,每个API相应于在所述数据库环境中关于数据库对所述用户执行的期望行动;

[0125] 响应于通过所述多个API之一从所述用户接收到对所述控制环境的Web服务请求, 使数据库的第一实例副本和第二实例副本在所述数据库环境中被供应,块极复制机制配置 成拦截在所述主要实例副本处对所述数据库的任何写操作,并将对所述写操作的变化同步 地复制到所述辅助实例副本;以及

[0126] 使所述用户能够经由所述主要实例副本访问所述数据库。

[0127] 条款23.条款22的计算机可读存储介质,其中在单个数据区中、在分开的地理位置 处的分开的数据区中、在越过多个地理位置的单个数据区中或越过在单个地理区域中的多 个数据区供应所述第一实例副本和第二实例副本。

[0128] 条款24.条款22的计算机可读存储介质,其中所述指令在被执行时还使所述处理 器:

[0129] 响应所述于Web服务请求,在所述控制环境中执行工作流,包括用于在所述数据库 环境中供应、配置和连接所述第一实例副本和第二实例副本的任务。

[0130] 条款25.条款22的计算机可读存储介质,其中所述指令在被执行时还使所述处理 器:

[0131] 使主机管理器对所述第一实例副本和第二实例副本中的每个来安装,每个主机管 理器可操作来与所述控制环境通信并在所述数据库环境中执行一个或多个任务。

Claims (15)

1. 一种使用户能够使用单独的控制环境在数据库环境中创建已复制的数据库实例的 计算机实现的方法,包括: 在配置有可执行指令的一个或多个计算机系统的控制下, 提供多个应用编程接口(API),每个API使用户能够请求在所述数据库环境中由所述控 制环境为所述用户执行关于由所述请求所标识的数据库的期望行动; 经由所述API之一从所述用户接收web服务请求来在所述数据库环境中为所述用户创 建复制的数据库; 响应于接收到创建所述复制的数据库的Web服务请求,使所述复制的数据库的主要实 例副本和辅助实例副本在所述数据库环境中被供应,使得所述主要实例副本的块级复制机 制拦截在所述主要实例副本处对所述已复制的数据库的任何写操作,并将对所述写操作的 变化同步地复制到所述辅助实例副本;以及 使用所述主要实例副本为一端点确定别名,所述端点使所述用户能够经由所述主要实 例副本访问所述已复制的数据库,在所述主要实例副本故障的情况下所述端点被更新以与 所述辅助实例副本相关联。
2. 如权利要求1所述的计算机实现的方法,其中在单个数据区中、在分开的地理位置处 的分开的数据区中、在跨多个地理位置的单个数据区中或跨单个地理区域中的多个数据区 来供应所述主要实例副本和辅助实例副本。
3. 如权利要求1所述的计算机实现的方法,其中所述控制环境配置成如果所述主要实 例副本变得不可用则自动执行到所述辅助实例副本的故障切换操作。
4. 如权利要求1所述的计算机实现的方法,还包括: 使主机管理器对所述主要实例副本和辅助实例副本中的每个来安装,每个主机管理器 可操作来与所述控制环境通信并在所述数据库环境中执行一个或多个任务。
5. 如权利要求1所述的计算机实现的方法,其中使用所述主要实例副本的主要块存储 卷的一个或多个快照来创建所述辅助实例副本的辅助块存储卷。
6. 如权利要求1所述的计算机实现的方法,其中当从所述用户接收的所述Web服务请求 包括指示已复制数据库将被创建的复制参数值时,所述主要实例副本和所述辅助实例副本 在所述数据库环境中被供应。
7. 如权利要求1所述的计算机实现的方法,还包括: 使所述用户能够使用通过所述多个API之一提交到所述控制环境的适用的Web服务请 求将未复制的数据库转换成已复制数据库。
8. 如权利要求1所述的计算机实现的方法,还包括: 响应于通过所述多个API之一接收到Web服务请求来捕获所述已复制的数据库的一个 或多个快照。
9. 如权利要求1所述的计算机实现的方法,其特征在于: 使所述复制的数据库的主要实例副本和辅助实例副本在所述数据库环境中被供应包 括:在所述控制环境中执行工作流,包括用于在所述数据库环境中供应、配置和连接所述主 要实例副本和辅助实例副本的任务。
10. 如权利要求1所述的计算机实现的方法,还包括: 使用所述控制环境的至少一个监控部件来监控所述主要实例副本和辅助实例副本的 健康信息。
11. 如权利要求1所述的计算机实现的方法,还包括: 在所述控制环境中将所述主要实例副本和辅助实例副本的配置信息存储到数据存储 器中。
12. -种使用户能够使用单独的控制环境在数据库环境中创建已复制的数据库实例的 系统,包括: 处理器;以及 包括指令的存储设备,当所述指令被所述处理器执行时使所述处理器: 提供多个应用编程接口(API),每个API使用户能够请求在所述数据库环境中由所述控 制环境为所述用户执行关于由所述请求所标识的数据库的期望行动; 经由所述API之一从所述用户接收web服务请求来在所述数据库环境中为所述用户创 建复制的数据库; 响应于接收到创建所述复制的数据库的Web服务请求,使所述已复制的数据库的主要 实例副本和辅助实例副本在所述数据库环境中被供应,使得所述主要实例副本的块级复制 机制拦截在所述主要实例副本处对所述已复制的数据库的任何写操作,并将对所述写操作 的变化同步地复制到所述辅助实例副本;以及 使用所述主要实例副本为一端点确定别名,所述端点使所述用户能够经由所述主要实 例副本访问所述已复制的数据库,在所述主要实例副本故障的情况下所述端点被更新以与 所述辅助实例副本相关联。
13. 如权利要求12所述的系统,其中在单个数据区中、在分开的地理位置处的分开的数 据区中、在跨多个地理位置的单个数据区中或跨单个地理区域中的多个数据区来供应所述 主要实例副本和辅助实例副本。
14. 如权利要求12所述的系统,使所述复制的数据库的主要实例副本和辅助实例副本 在所述数据库环境中被供应的所述指令在被执行时还使所述处理器: 在所述控制环境中执行工作流,包括用于在所述数据库环境中供应、配置和连接所述 主要实例副本和辅助实例副本的任务。
15. 如权利要求12所述的系统,其中所述指令在被执行时还使所述处理器: 使主机管理器对所述主要实例副本和辅助实例副本中的每个来安装,每个主机管理器 可操作来与所述控制环境通信并在所述数据库环境中执行一个或多个任务。
CN201080049395.4A 2009-10-26 2010-10-26 供应并管理已复制数据 CN102648448B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US12/606,093 US8335765B2 (en) 2009-10-26 2009-10-26 Provisioning and managing replicated data instances
US12/606,093 2009-10-26
PCT/US2010/054133 WO2011053592A1 (en) 2009-10-26 2010-10-26 Provisioning and managing replicated data instances

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610843899.2A CN106407410A (zh) 2009-10-26 2010-10-26 供应并管理已复制数据

Publications (2)

Publication Number Publication Date
CN102648448A CN102648448A (zh) 2012-08-22
CN102648448B true CN102648448B (zh) 2016-10-26

Family

ID=43899240

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201610843899.2A CN106407410A (zh) 2009-10-26 2010-10-26 供应并管理已复制数据
CN201080049395.4A CN102648448B (zh) 2009-10-26 2010-10-26 供应并管理已复制数据

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201610843899.2A CN106407410A (zh) 2009-10-26 2010-10-26 供应并管理已复制数据

Country Status (6)

Country Link
US (3) US8335765B2 (zh)
EP (1) EP2494438A4 (zh)
JP (3) JP5443613B2 (zh)
CN (2) CN106407410A (zh)
CA (1) CA2778110C (zh)
WO (1) WO2011053592A1 (zh)

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9705888B2 (en) * 2009-03-31 2017-07-11 Amazon Technologies, Inc. Managing security groups for data instances
US8060792B2 (en) 2009-03-31 2011-11-15 Amazon Technologies, Inc. Monitoring and automated recovery of data instances
US9207984B2 (en) 2009-03-31 2015-12-08 Amazon Technologies, Inc. Monitoring and automatic scaling of data volumes
US8307003B1 (en) 2009-03-31 2012-11-06 Amazon Technologies, Inc. Self-service control environment
US8713060B2 (en) * 2009-03-31 2014-04-29 Amazon Technologies, Inc. Control service for relational data management
US8332365B2 (en) 2009-03-31 2012-12-11 Amazon Technologies, Inc. Cloning and recovery of data volumes
US9239840B1 (en) 2009-04-24 2016-01-19 Swish Data Corporation Backup media conversion via intelligent virtual appliance adapter
US9087066B2 (en) * 2009-04-24 2015-07-21 Swish Data Corporation Virtual disk from network shares and file servers
US9135283B2 (en) 2009-10-07 2015-09-15 Amazon Technologies, Inc. Self-service configuration for data environment
US8676753B2 (en) 2009-10-26 2014-03-18 Amazon Technologies, Inc. Monitoring of replicated data instances
US8335765B2 (en) 2009-10-26 2012-12-18 Amazon Technologies, Inc. Provisioning and managing replicated data instances
US8074107B2 (en) 2009-10-26 2011-12-06 Amazon Technologies, Inc. Failover and recovery for replicated data instances
US8473970B2 (en) * 2010-02-25 2013-06-25 Oracle International Corporation Framework for integrating applications
US8850261B2 (en) 2011-06-01 2014-09-30 Microsoft Corporation Replaying jobs at a secondary location of a service
US20120310887A1 (en) * 2011-06-06 2012-12-06 Microsoft Corporation Automatic configuration of a recovery service
US8738624B1 (en) * 2011-09-27 2014-05-27 Amazon Technologies, Inc. Increasing distributed database capacity
US8914497B1 (en) 2011-12-15 2014-12-16 Amazon Technologies, Inc. System and method for throttling service requests having non-uniform workloads
US9635132B1 (en) 2011-12-15 2017-04-25 Amazon Technologies, Inc. Service and APIs for remote volume-based block storage
US8838799B2 (en) 2012-02-13 2014-09-16 International Business Machines Corporation Command management in a networked computing environment
US9210098B2 (en) 2012-02-13 2015-12-08 International Business Machines Corporation Enhanced command selection in a networked computing environment
US9992155B2 (en) * 2012-03-29 2018-06-05 Hitachi Vantara Corporation DNS alias synchronization in replication topology
WO2013147784A1 (en) * 2012-03-29 2013-10-03 Hitachi Data Systems Corporation Dns alias synchronization in replication topology
US9313252B2 (en) 2012-04-20 2016-04-12 Microsoft Technology Licensing, Llc Binding crud-type protocols in distributed agreement protocols
US8964990B1 (en) * 2012-05-17 2015-02-24 Amazon Technologies, Inc. Automating key rotation in a distributed system
US8908868B1 (en) 2012-05-17 2014-12-09 Amazon Technologies, Inc. Key rotation with external workflows
US20140059012A1 (en) * 2012-08-21 2014-02-27 Bank Of America Management of Database Deployment
US8438654B1 (en) 2012-09-14 2013-05-07 Rightscale, Inc. Systems and methods for associating a virtual machine with an access control right
US8874508B1 (en) * 2012-10-02 2014-10-28 Symantec Corporation Systems and methods for enabling database disaster recovery using replicated volumes
US20140149590A1 (en) * 2012-11-26 2014-05-29 Amazon Technologies, Inc. Scaling computing clusters in a distributed computing system
CN103870202B (zh) * 2012-12-10 2018-08-21 上海优刻得信息科技有限公司 种块设备的分布式存储方法和系统
US8935207B2 (en) 2013-02-14 2015-01-13 Sap Se Inspecting replicated data
US20140279905A1 (en) 2013-03-13 2014-09-18 Amazon Technologies, Inc. Token-based admission control for replicated writes
EP2800013B1 (en) * 2013-04-30 2015-09-09 Systemite AB Integration database framework
US9407615B2 (en) 2013-11-11 2016-08-02 Amazon Technologies, Inc. Single set of credentials for accessing multiple computing resource services
US20150160956A1 (en) * 2013-11-11 2015-06-11 Amazon Technologies, Inc. Automatic directory join for virtual machine instances
US9736159B2 (en) 2013-11-11 2017-08-15 Amazon Technologies, Inc. Identity pool bridging for managed directory services
US20150134826A1 (en) * 2013-11-11 2015-05-14 Amazon Technologeis, Inc. Managed Directory Service Connection
US9626262B1 (en) * 2013-12-09 2017-04-18 Amazon Technologies, Inc. Primary role reporting service for resource groups
EP3191958A1 (en) 2014-09-08 2017-07-19 Microsoft Technology Licensing, LLC Application transparent continuous availability using synchronous replication across data stores in a failover cluster
US20160092540A1 (en) * 2014-09-25 2016-03-31 Oracle International Corporation System and method for supporting data grid snapshot and federation
US10257184B1 (en) 2014-09-29 2019-04-09 Amazon Technologies, Inc. Assigning policies for accessing multiple computing resource services
US10152211B2 (en) * 2014-11-11 2018-12-11 Amazon Technologies, Inc. Application delivery agents on virtual desktop instances
US9600393B2 (en) * 2015-03-23 2017-03-21 Facebook, Inc. Testing of application service versions on live data
US9860317B1 (en) 2015-04-30 2018-01-02 Amazon Technologies, Inc. Throughput throttling for distributed file storage services with varying connection characteristics
US9766927B1 (en) * 2015-10-06 2017-09-19 Amazon Technologies, Inc. Data flow management in processing workflows
US10237118B2 (en) * 2016-11-18 2019-03-19 Sap Se Efficient application build/deployment for distributed container cloud platform

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101539841A (zh) * 2008-03-21 2009-09-23 株式会社日立制作所 高可用性以及低容量的动态存储区域分配

Family Cites Families (150)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5555404A (en) 1992-03-17 1996-09-10 Telenor As Continuously available database server having multiple groups of nodes with minimum intersecting sets of database fragment replicas
US5845067A (en) * 1996-09-09 1998-12-01 Porter; Jack Edward Method and apparatus for document management utilizing a messaging system
JPH10312327A (ja) 1997-05-13 1998-11-24 Oki Electric Ind Co Ltd ミラーリング監視方式
US6018746A (en) * 1997-12-23 2000-01-25 Unisys Corporation System and method for managing recovery information in a transaction processing system
US6560639B1 (en) * 1998-02-13 2003-05-06 3565 Acquisition Corporation System for web content management based on server-side application
US6205465B1 (en) 1998-07-22 2001-03-20 Cisco Technology, Inc. Component extensible parallel execution of multiple threads assembled from program components specified with partial inter-component sequence information
US6295558B1 (en) 1998-08-21 2001-09-25 Hewlett-Packard Company Automatic status polling failover or devices in a distributed network management hierarchy
US20070162420A1 (en) * 2004-01-21 2007-07-12 Oracle International Corporation Techniques for automatically discovering a database device on a network
US7315826B1 (en) 1999-05-27 2008-01-01 Accenture, Llp Comparatively analyzing vendors of components required for a web-based architecture
US6611867B1 (en) 1999-08-31 2003-08-26 Accenture Llp System, method and article of manufacture for implementing a hybrid network
JP2001109638A (ja) 1999-10-06 2001-04-20 Nec Corp 推定伸長率に基づくトランザクション負荷分散方法及び方式並びにコンピュータ可読記録媒体
US6442707B1 (en) 1999-10-29 2002-08-27 Advanced Micro Devices, Inc. Alternate fault handler
US6671821B1 (en) 1999-11-22 2003-12-30 Massachusetts Institute Of Technology Byzantine fault tolerance
US6694362B1 (en) 2000-01-03 2004-02-17 Micromuse Inc. Method and system for network event impact analysis and correlation with network administrators, management policies and procedures
US6542907B1 (en) * 2000-03-31 2003-04-01 International Business Machines Corporation Method and apparatus for decentralized, invertible generation of bounded-length globally unique replica identifiers
US6842769B1 (en) * 2000-05-05 2005-01-11 Interland, Inc. Automatically configured network server
US6950871B1 (en) 2000-06-29 2005-09-27 Hitachi, Ltd. Computer system having a storage area network and method of handling data in the computer system
US20020019844A1 (en) * 2000-07-06 2002-02-14 Kurowski Scott J. Method and system for network-distributed computing
US7739308B2 (en) * 2000-09-08 2010-06-15 Oracle International Corporation Techniques for automatically provisioning a database over a wide area network
US7124289B1 (en) * 2000-10-31 2006-10-17 Opsware Inc. Automated provisioning framework for internet site servers
US7584278B2 (en) * 2000-12-11 2009-09-01 Microsoft Corporation Method and system for task based management of multiple network resources
US6985955B2 (en) 2001-01-29 2006-01-10 International Business Machines Corporation System and method for provisioning resources to users based on roles, organizational information, attributes and third-party information or authorizations
US7197561B1 (en) 2001-03-28 2007-03-27 Shoregroup, Inc. Method and apparatus for maintaining the status of objects in computer networks using virtual state machines
EP1410217A4 (en) 2001-04-02 2006-09-20 Akamai Tech Inc Scalable, high performance and highly available distributed storage system for internet content
US20030005091A1 (en) 2001-06-29 2003-01-02 International Business Machines Corporation Method and apparatus for improved monitoring in a distributed computing system
US7024517B1 (en) 2001-09-27 2006-04-04 Emc Corporation System and method for configuring data storage in accordance with workload requirements
JP3879471B2 (ja) * 2001-10-10 2007-02-14 株式会社日立製作所 計算機資源割当方法
US7133907B2 (en) * 2001-10-18 2006-11-07 Sun Microsystems, Inc. Method, system, and program for configuring system resources
US7418484B2 (en) 2001-11-30 2008-08-26 Oracle International Corporation System and method for actively managing an enterprise of configurable components
US7360121B2 (en) 2002-02-22 2008-04-15 Bea Systems, Inc. System for monitoring a subsystem health
US6947981B2 (en) 2002-03-26 2005-09-20 Hewlett-Packard Development Company, L.P. Flexible data replication mechanism
US7103884B2 (en) 2002-03-27 2006-09-05 Lucent Technologies Inc. Method for maintaining consistency and performing recovery in a replicated data storage system
US6988139B1 (en) * 2002-04-26 2006-01-17 Microsoft Corporation Distributed computing of a job corresponding to a plurality of predefined tasks
US20030212898A1 (en) 2002-05-09 2003-11-13 Doug Steele System and method for remotely monitoring and deploying virtual support services across multiple virtual lans (VLANS) within a data center
US7373399B2 (en) 2002-05-09 2008-05-13 Hewlett-Packard Development Company, L.P. System and method for an enterprise-to-enterprise compare within a utility data center (UDC)
JP2003330781A (ja) * 2002-05-17 2003-11-21 Hitachi Ltd データ多重保障方法
US7844577B2 (en) * 2002-07-15 2010-11-30 Symantec Corporation System and method for maintaining a backup storage system for a computer system
US6981135B1 (en) 2002-08-02 2005-12-27 Hewlett-Packard Development Company, L.P. System and method of configuring system components
CA2405673C (en) * 2002-09-30 2009-10-06 Ibm Canada Limited-Ibm Canada Limitee Provisioning web services
AU2003282361A1 (en) 2002-11-20 2004-06-15 Filesx Ltd. Fast backup storage and fast recovery of data (fbsrd)
US7370025B1 (en) * 2002-12-17 2008-05-06 Symantec Operating Corporation System and method for providing access to replicated data
JP4322511B2 (ja) 2003-01-27 2009-09-02 株式会社日立製作所 情報処理システムの制御方法、及び情報処理システム
US7502329B2 (en) 2003-01-27 2009-03-10 Alcatel-Lucent Usa Inc. Distributed network monitoring with bounded link utilization in IP networks
US20040163008A1 (en) 2003-02-19 2004-08-19 Kim Roy Moon Remote system management and operation services in a computer network
US7583607B2 (en) 2003-03-06 2009-09-01 Hewlett-Packard Development Company, L.P. Method and apparatus for designating and implementing support level agreements
US20040225659A1 (en) 2003-05-09 2004-11-11 O'brien John Storage foundry
US7415484B1 (en) 2003-05-09 2008-08-19 Vignette Corporation Method and system for modeling of system content for businesses
US7389333B2 (en) 2003-07-02 2008-06-17 Fujitsu Limited Provisioning a network element using custom defaults
US7701858B2 (en) 2003-07-17 2010-04-20 Sensicast Systems Method and apparatus for wireless communication in a mesh network
US7873684B2 (en) * 2003-08-14 2011-01-18 Oracle International Corporation Automatic and dynamic provisioning of databases
US7383463B2 (en) 2004-02-04 2008-06-03 Emc Corporation Internet protocol based disaster recovery of a server
US7631076B2 (en) 2004-03-16 2009-12-08 International Business Machines Corporation Apparatus, system, and method for adaptive polling of monitored systems
JP2005267056A (ja) * 2004-03-17 2005-09-29 Nec Corp ソフトウェアミラーリングディスク障害監視・復旧システム、その障害監視・復旧方法及びプログラム
US7383291B2 (en) 2004-05-24 2008-06-03 Apple Inc. Method for sharing groups of objects
US7478263B1 (en) 2004-06-01 2009-01-13 Network Appliance, Inc. System and method for establishing bi-directional failover in a two node cluster
US7624133B1 (en) 2004-06-09 2009-11-24 Symantec Operating Corporation Automatic detection of backup recovery sets
US7313721B2 (en) 2004-06-21 2007-12-25 Dot Hill Systems Corporation Apparatus and method for performing a preemptive reconstruct of a fault-tolerant RAID array
JP4488807B2 (ja) * 2004-06-25 2010-06-23 株式会社日立製作所 ボリューム提供システム及び方法
US7747760B2 (en) * 2004-07-29 2010-06-29 International Business Machines Corporation Near real-time data center switching for client requests
US7058731B2 (en) * 2004-08-03 2006-06-06 Hitachi, Ltd. Failover and data migration using data replication
US8046440B2 (en) 2004-08-19 2011-10-25 International Business Machines Corporation Managing resources through user-facing web services aggregated in portals
GB0419599D0 (en) 2004-09-03 2004-10-06 Ibm Controlling preemptive work balancing in data storage
US7567974B2 (en) * 2004-09-09 2009-07-28 Microsoft Corporation Method, system, and apparatus for configuring a data protection system
US8010337B2 (en) 2004-09-22 2011-08-30 Microsoft Corporation Predicting database system performance
JP4507249B2 (ja) 2004-10-19 2010-07-21 株式会社日立製作所 記憶デバイスの更新を制御するシステム及び方法
US7945469B2 (en) * 2004-11-16 2011-05-17 Amazon Technologies, Inc. Providing an electronic marketplace to facilitate human performance of programmatically submitted tasks
US20060106774A1 (en) * 2004-11-16 2006-05-18 Cohen Peter D Using qualifications of users to facilitate user performance of tasks
US7933247B2 (en) 2004-11-18 2011-04-26 Sanjay M. Gidwani Real-time scalable wireless switching network
US7680771B2 (en) * 2004-12-20 2010-03-16 International Business Machines Corporation Apparatus, system, and method for database provisioning
US20100005531A1 (en) 2004-12-23 2010-01-07 Kenneth Largman Isolated multiplexed multi-dimensional processing in a virtual processing space having virus, spyware, and hacker protection features
US8347088B2 (en) 2005-02-01 2013-01-01 Newsilike Media Group, Inc Security systems and methods for use with structured and unstructured data
US8200700B2 (en) 2005-02-01 2012-06-12 Newsilike Media Group, Inc Systems and methods for use of structured and unstructured distributed data
US7657780B2 (en) 2005-02-07 2010-02-02 Mimosa Systems, Inc. Enterprise service availability through identity preservation
CA2620134A1 (en) 2005-08-23 2007-03-01 Mimosa Systems, Inc. Enterprise service availability through identity preservation
DE602006019875D1 (de) * 2005-06-24 2011-03-10 Syncsort Inc System und verfahren zum virtualisieren von backup-bildern
US20070022129A1 (en) 2005-07-25 2007-01-25 Parascale, Inc. Rule driven automation of file placement, replication, and migration
US8825599B2 (en) * 2005-08-16 2014-09-02 Swiss Reinsurance Company Ltd. Computer-based data processing system and method of processing data objects
US20070234028A1 (en) 2005-09-15 2007-10-04 Rothman Michael A Method and apparatus for quickly changing the power state of a data processing system
US8863137B2 (en) 2005-09-23 2014-10-14 International Business Machines Corporation Systems and methods for automated provisioning of managed computing resources
US7933987B2 (en) * 2005-09-30 2011-04-26 Lockheed Martin Corporation Application of virtual servers to high availability and disaster recovery solutions
US7801932B2 (en) * 2005-10-11 2010-09-21 Oracle International Corporation Undo hints to speed up segment extension and tuning of undo retention
US7716180B2 (en) 2005-12-29 2010-05-11 Amazon Technologies, Inc. Distributed storage system with web services client interface
US20070156872A1 (en) 2005-12-30 2007-07-05 Stoyanova Dimitrina G Method and system for Web services deployment
US20070174429A1 (en) 2006-01-24 2007-07-26 Citrix Systems, Inc. Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment
JP4839091B2 (ja) 2006-01-27 2011-12-14 株式会社日立製作所 データベース回復方法及び計算機システム
JP2007279890A (ja) 2006-04-04 2007-10-25 Hitachi Ltd バックアップシステム及びバックアップ方法
US20070244996A1 (en) 2006-04-14 2007-10-18 Sonasoft Corp., A California Corporation Web enabled exchange server standby solution using mailbox level replication
JP4939102B2 (ja) 2006-04-21 2012-05-23 株式会社日立製作所 ネットワークブート計算機システムの高信頼化方法
US7613742B2 (en) 2006-05-02 2009-11-03 Mypoints.Com Inc. System and method for providing three-way failover for a transactional database
US20070260693A1 (en) 2006-05-05 2007-11-08 International Business Machines Corporation Method and apparatus for utilizing portable e-mail addresses
US20070271275A1 (en) 2006-05-05 2007-11-22 Fassette Anthony M Database management function provider systems
US8381306B2 (en) 2006-05-30 2013-02-19 Microsoft Corporation Translating role-based access control policy to resource authorization policy
US20070299828A1 (en) 2006-06-05 2007-12-27 Digital Mountain, Inc. Method and Apparatus for Processing Heterogeneous Data
US20070288526A1 (en) 2006-06-08 2007-12-13 Emc Corporation Method and apparatus for processing a database replica
US7822594B2 (en) 2006-08-07 2010-10-26 Voltaire Ltd. Service-oriented infrastructure management
US8156082B2 (en) * 2006-10-06 2012-04-10 Sybase, Inc. System and methods for temporary data management in shared disk cluster
US8949826B2 (en) 2006-10-17 2015-02-03 Managelq, Inc. Control and management of virtual systems
US9015703B2 (en) 2006-10-17 2015-04-21 Manageiq, Inc. Enforcement of compliance policies in managed virtual systems
DE112007002682T5 (de) * 2006-11-06 2009-10-15 Dell Marketing USA L.P., Round Rock Ein System und Verfahren zum Verwalten von Daten über mehrere Umgebungen
US7917469B2 (en) * 2006-11-08 2011-03-29 Hitachi Data Systems Corporation Fast primary cluster recovery
US7949847B2 (en) 2006-11-29 2011-05-24 Hitachi, Ltd. Storage extent allocation method for thin provisioning storage
US7844851B2 (en) 2006-12-13 2010-11-30 Oracle International Corporation System and method for protecting against failure through geo-redundancy in a SIP server
US8312323B2 (en) 2006-12-22 2012-11-13 Commvault Systems, Inc. Systems and methods for remote monitoring in a computer network and reporting a failed migration operation without accessing the data being moved
US8880480B2 (en) 2007-01-03 2014-11-04 Oracle International Corporation Method and apparatus for data rollback
US20080189769A1 (en) 2007-02-01 2008-08-07 Martin Casado Secure network switching infrastructure
US20080195622A1 (en) * 2007-02-12 2008-08-14 Personeta Ltd. Service provisioning system
US8150904B2 (en) 2007-02-28 2012-04-03 Sap Ag Distribution of data and task instances in grid environments
JP5082516B2 (ja) * 2007-03-09 2012-11-28 富士通株式会社 複製作成装置および複製作成方法
US8171485B2 (en) * 2007-03-26 2012-05-01 Credit Suisse Securities (Europe) Limited Method and system for managing virtual and real machines
US8219848B2 (en) 2007-04-10 2012-07-10 International Business Machines Corporation Mechanism for recovery from site failure in a stream processing system
US20080263388A1 (en) 2007-04-18 2008-10-23 James Robert Allen Method and apparatus for managing customer topologies
US8099727B2 (en) * 2007-06-01 2012-01-17 Netapp, Inc. System and method for providing uninterrupted operation of a replication system during a software upgrade
US20090019535A1 (en) * 2007-07-10 2009-01-15 Ragingwire Enterprise Solutions, Inc. Method and remote system for creating a customized server infrastructure in real time
DE102007035584B4 (de) 2007-07-30 2009-12-17 Texas Instruments Deutschland Gmbh Watchdog-Vorrichtung zur Überwachung eines elektronischen Systems
US7739243B2 (en) 2007-08-01 2010-06-15 International Business Machines Corporation System and method for dynamically configuring a multiplatform computing environment
US20090063807A1 (en) * 2007-08-29 2009-03-05 International Business Machines Corporation Data redistribution in shared nothing architecture
US8892719B2 (en) 2007-08-30 2014-11-18 Alpha Technical Corporation Method and apparatus for monitoring network servers
US8549144B2 (en) * 2007-08-31 2013-10-01 International Business Machines Corporation Common configuration framework for applications to configure database objects and resources
JP2009070143A (ja) * 2007-09-13 2009-04-02 Hitachi Ltd Nas装置の差分リモートバックアップにおけるデータ復旧方法及び計算機システム
CN104113433B (zh) 2007-09-26 2018-04-10 Nicira股份有限公司 管理和保护网络的网络操作系统
US20090089417A1 (en) 2007-09-28 2009-04-02 David Lee Giffin Dialogue analyzer configured to identify predatory behavior
US8423739B2 (en) 2008-02-06 2013-04-16 International Business Machines Corporation Apparatus, system, and method for relocating logical array hot spots
US8175863B1 (en) 2008-02-13 2012-05-08 Quest Software, Inc. Systems and methods for analyzing performance of virtual environments
JP5075727B2 (ja) 2008-04-25 2012-11-21 株式会社日立製作所 ストリーム配信システム及び障害検知方法
US8041679B1 (en) * 2008-06-04 2011-10-18 Symantec Operating Corporation Synthetic differential backups creation for a database using binary log conversion
US8121981B2 (en) 2008-06-19 2012-02-21 Microsoft Corporation Database snapshot management
US8904003B2 (en) 2008-06-30 2014-12-02 Oracle America, Inc. Method and system for delegated job control across a network
US8019732B2 (en) * 2008-08-08 2011-09-13 Amazon Technologies, Inc. Managing access of multiple executing programs to non-local block data storage
US8364802B1 (en) 2008-09-23 2013-01-29 Gogrid, LLC System and method for monitoring a grid of hosting resources in order to facilitate management of the hosting resources
US8020037B1 (en) * 2008-09-23 2011-09-13 Netapp, Inc. Creation of a test bed for testing failover and failback operations
WO2010042733A1 (en) 2008-10-08 2010-04-15 Citrix Systems, Inc. Systems and methods for connection management for asynchronous messaging over http
US8117156B2 (en) * 2008-10-26 2012-02-14 Microsoft Corporation Replication for common availability substrate
US8392915B2 (en) 2008-11-19 2013-03-05 Oracle International Corporation Efficient volume manager hot swapping
US8601534B2 (en) 2009-07-02 2013-12-03 Samsung Electronics Co., Ltd. Securely using service providers in elastic computing systems and environments
US7941697B2 (en) 2008-12-30 2011-05-10 Symantec Operating Corporation Failure handling using overlay objects on a file system using object based storage devices
US8170997B2 (en) 2009-01-29 2012-05-01 Microsoft Corporation Unbundled storage transaction services
US8775544B2 (en) 2009-02-04 2014-07-08 Citrix Systems, Inc. Methods and systems for dynamically switching between communications protocols
US9208188B2 (en) 2009-02-17 2015-12-08 Microsoft Technology Licensing, Llc Tenant management of a hosted multi-tenant application
US9207984B2 (en) 2009-03-31 2015-12-08 Amazon Technologies, Inc. Monitoring and automatic scaling of data volumes
US8307003B1 (en) * 2009-03-31 2012-11-06 Amazon Technologies, Inc. Self-service control environment
US8060792B2 (en) 2009-03-31 2011-11-15 Amazon Technologies, Inc. Monitoring and automated recovery of data instances
US9705888B2 (en) 2009-03-31 2017-07-11 Amazon Technologies, Inc. Managing security groups for data instances
US8713060B2 (en) 2009-03-31 2014-04-29 Amazon Technologies, Inc. Control service for relational data management
US8332365B2 (en) 2009-03-31 2012-12-11 Amazon Technologies, Inc. Cloning and recovery of data volumes
US9774818B2 (en) * 2009-04-24 2017-09-26 Level 3 Communications, Llc Media resource storage and management
US9135283B2 (en) 2009-10-07 2015-09-15 Amazon Technologies, Inc. Self-service configuration for data environment
US8150808B2 (en) * 2009-10-21 2012-04-03 Delphix Corp. Virtual database system
US8074107B2 (en) 2009-10-26 2011-12-06 Amazon Technologies, Inc. Failover and recovery for replicated data instances
US8335765B2 (en) 2009-10-26 2012-12-18 Amazon Technologies, Inc. Provisioning and managing replicated data instances
US8676753B2 (en) 2009-10-26 2014-03-18 Amazon Technologies, Inc. Monitoring of replicated data instances

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101539841A (zh) * 2008-03-21 2009-09-23 株式会社日立制作所 高可用性以及低容量的动态存储区域分配

Also Published As

Publication number Publication date
JP5945031B2 (ja) 2016-07-05
US20130066834A1 (en) 2013-03-14
JP2015164067A (ja) 2015-09-10
US8335765B2 (en) 2012-12-18
EP2494438A4 (en) 2013-10-23
US9336292B2 (en) 2016-05-10
JP5443613B2 (ja) 2014-03-19
US20160253400A1 (en) 2016-09-01
JP5746312B2 (ja) 2015-07-08
EP2494438A1 (en) 2012-09-05
WO2011053592A1 (en) 2011-05-05
CA2778110C (en) 2016-11-22
CN102648448A (zh) 2012-08-22
JP2014053050A (ja) 2014-03-20
CN106407410A (zh) 2017-02-15
CA2778110A1 (en) 2011-05-05
US20110099147A1 (en) 2011-04-28
JP2013508882A (ja) 2013-03-07

Similar Documents

Publication Publication Date Title
US10051032B2 (en) Method, server and system for converging desktop application and web application
AU2012225301B2 (en) Outside live migration
US9501541B2 (en) Separation of pod provisioning and service provisioning
CA2840573C (en) Methods and apparatus for remotely updating executing processes
US7434220B2 (en) Distributed computing infrastructure including autonomous intelligent management system
US9275124B2 (en) Methods and apparatus for controlling snapshot exports
US20070226359A1 (en) System and method for providing java based high availability clustering framework
US10282231B1 (en) Monitoring and automatic scaling of data volumes
JP6005706B2 (ja) 異種移動環境用の仮想マシンモーフィング
EP2302509B1 (en) Synchronization of server-side cookies with client-side cookies
US8166476B2 (en) On-demand access to a virtual representation of a physical computer system
US8909767B2 (en) Cloud federation in a cloud computing environment
US8990368B2 (en) Discovery of network software relationships
US8676753B2 (en) Monitoring of replicated data instances
JP6139718B2 (ja) シャドーイングストレージゲートウェイ
US8667096B2 (en) Automatically generating system restoration order for network recovery
US20060053216A1 (en) Clustered computer system with centralized administration
US9817727B2 (en) Failover and recovery for replicated data instances
US9270781B2 (en) Associating virtual machines on a server computer with particular users on an exclusive basis
US9940208B2 (en) Generating reverse installation file for network restoration
US9218245B1 (en) Cloning and recovery of data volumes
US20100228819A1 (en) System and method for performance acceleration, data protection, disaster recovery and on-demand scaling of computer applications
US7000235B2 (en) Method and apparatus for managing data services in a distributed computer system
US10127149B2 (en) Control service for data management
CN102571906B (zh) 打补丁期间机器的高可用性

Legal Events

Date Code Title Description
C06 Publication
C10 Entry into substantive examination
C14 Grant of patent or utility model