CN105359109A - 基于次计算机中的存储器错误移动主计算机中的对象 - Google Patents

基于次计算机中的存储器错误移动主计算机中的对象 Download PDF

Info

Publication number
CN105359109A
CN105359109A CN201480038708.4A CN201480038708A CN105359109A CN 105359109 A CN105359109 A CN 105359109A CN 201480038708 A CN201480038708 A CN 201480038708A CN 105359109 A CN105359109 A CN 105359109A
Authority
CN
China
Prior art keywords
server
master server
memory
correspond
place
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.)
Granted
Application number
CN201480038708.4A
Other languages
English (en)
Other versions
CN105359109B (zh
Inventor
S·Z·雅各布斯
D·A·拉森
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN105359109A publication Critical patent/CN105359109A/zh
Application granted granted Critical
Publication of CN105359109B publication Critical patent/CN105359109B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/2094Redundant storage or storage space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/1666Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/202Error 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 processing functionality is redundant
    • G06F11/2035Error 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 processing functionality is redundant without idle spare hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/202Error 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 processing functionality is redundant
    • G06F11/2048Error 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 processing functionality is redundant where the redundant components share neither address space nor persistent storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/2082Data synchronisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)
  • Retry When Errors Occur (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

在一个实施例中,在主服务器处执行分区,其中分区访问在主服务器的第一存储器块地址处的第一存储器位置。如果在次服务器的第一对应存储器位置具有错误,其中在次服务器处的第一对应存储器位置对应于在主服务器处的第一存储器位置,则从在主服务器处的第一存储器位置向在主服务器处的第二存储器位置移动对象。

Description

基于次计算机中的存储器错误移动主计算机中的对象
技术领域
本发明的实施例主要地涉及计算机系统而更具体地涉及使用镜像的计算机系统。
背景技术
计算机系统通常地包括硬件(比如半导体、晶体管、芯片和电路板)和计算机程序的组合。随着计算机和它们使用的数据已经变得更重要,用户已经变得日益无法容忍对计算机的可用性的任何中断。为了满足用户的高可用性要求,计算机可以提供冗余部件,从而在一个部件出故障或者变得不可用的情况下,计算机自动地切换成使用另一部件。
一种高可用性技术称为镜像或者检查点设置,其中主计算机向次计算机周期地复制它的存储器的内容和处理器状态。镜像包括跟踪对由分区访问的存储器的改变和对分区在主计算机在其上执行的处理器的状态的改变、周期地暂停分区在主计算机的执行、通过网络向次计算机发送跟踪的改变、等待次计算机确认接收跟踪的改变以及恢复对暂停的分区的执行。在主计算机的故障的情况下,次计算机开始以对在分区中执行的应用透明的方式使用跟踪的改变和处理器状态来执行由主计算机执行的分区。
发明内容
提供一种方法、计算机可读存储介质和计算机。在一个实施例中,在主服务器处执行分区,其中分区访问在主服务器处的第一存储器块地址处的第一存储器位置。如果在次服务器处的第一对应存储器位置具有错误,其中在次服务器处的第一对应存储器位置对应于在主服务器处的第一存储器位置,则从在主服务器处的第一存储器位置向在主服务器处的第二存储器位置移动对象。
附图说明
图1描绘用于实现本发明的一个实施例的例子系统的高级框图。
图2描绘根据本发明的一个实施例的经由网络和次存储设备连接的例子服务器计算机的高级框图。
图3描绘根据本发明的一个实施例的用于存储器表的例子数据结构的框图。
图4描绘根据本发明的一个实施例的用于检查点的例子处理的流程图。
图5描绘根据本发明的一个实施例的用于处置存储器错误的例子处理的流程图。
图6描绘根据本发明的一个实施例的用于处置主服务器的故障的例子处理的流程图。
图7描绘根据本发明的一个实施例的用于处置次服务器的故障的例子处理的流程图。
然而将注意所附附图仅图示本发明的例子实施例、因此未视为限制本发明的其它实施例的范围。
具体实施方式
参照附图,其中相似标号表示贯穿若干视图的相似部分,图1描绘根据本发明的一个实施例的连接到网络130的服务器计算机系统100的高级框图表示。本发明的实施例的机制和装置同样地适用于任何适当计算系统。服务器计算机系统100的主要部件包括一个或者多个处理器101、存储器102、终端接口单元111、存储接口单元112、I/O(输入/输出)设备接口单元113和网络接口单元114,所有这些部件被直接地或者间接地通信地耦合用于经由存储器总线103、I/O总线104和I/O总线接口单元105的部件间通信。
服务器计算机系统100包含这里通称为处理器101的一个或者多个通用可编程中央处理单元(CPU)101A、101B、101C和101D。在一个实施例中,服务器计算机系统100包含通常为相对大的系统的多个处理器;然而,在另一实施例中,计算系统100可以备选地是单个CPU系统。每个处理器101执行存储器102中存储的指令并且可以包括一级或者多级板上高速缓存。
在一个实施例中,存储器102可以包括用于存储或者编码数据和程序的随机存取半导体存储器、存储设备或者存储介质(易失性或者非易失性)。在另一实施例中,存储器102代表服务器计算机系统100的整个虚拟存储器并且也可以包括耦合到服务器计算机系统100的或者经由网络130连接的其它计算机系统的虚拟存储器。存储器102在概念上是单个单片实体,但是在其它实施例中,存储器102是更复杂的布置、比如高速缓存和其它存储器设备的分级。例如存储器可以存在于多级高速缓存中,并且这些高速缓存可以按功能来进一步划分,从而一个高速缓存保持指令而另一高速缓存保持由一个或者多个处理器使用的非指令数据。如在各种所谓非统一存储器存取(NUMA)计算机架构中的任何NUMA计算机架构中已知的那样,存储器可以被进一步分布并且与不同CPU或者CPU集合关联。
图示存储器102为包括多个分区134、管理程序136和存储器表140。虽然图示分区134、管理程序136和存储器表140为存储于计算机系统100中的存储器102中,但是在其它实施例中,它们中的一些或者全部可以在不同计算系统上并且可以例如经由网络130来远程地访问。另外,服务器计算机系统100可以使用虚拟寻址机制,这些虚拟寻址机制允许服务器计算机系统100的程序表现如同它们仅具有对大的单个存储实体的访问而不是对多个更小存储实体的访问。因此,尽管图示分区134、管理程序136和存储器表140为驻留在存储器102中,但是这些单元未必都被同时完全地包含在相同存储设备中。
分区134中的每个分区包括应用(app)144、操作系统(OS)146和分区数据148。可以支持任何数目的分区134,并且在任何时间在计算机100中驻留的分区134的数目可以随着向计算机100添加或者从计算机100去除分区134而动态地改变。分区134中的每个分区包括在分离或者独立存储器空间中在处理器101上执行的指令。在各种实施例中,实现应用144为用户应用、第三方应用或者其任何部分、多个或者组合。应用144和操作系统146包括在处理器101上执行的指令或者由在处理器101上执行的指令解释的语句。应用144中的每个应用可以相互相同或者互不相同,操作系统146中的每个操作系统可以相互相同或者互不相同,而数据148中的每个数据可以相互相同或者互不相同。
虽然图示管理程序136为存储于存储器102内,但是在其它实施例中,可以在固件或者硬件中实现管理程序136的全部或者部分。管理程序136可以执行低级管理功能、比如页面表管理并且也可以执行更高级管理功能、比如创建和删除分区134、并行I/O维护和向/从各种分区134分配/取消分配处理器,存储器和其它硬件或者程序资源。管理程序136控制向分区134分配、锁定和解锁共享的资源以及分区134对共享资源的访问从而保证这些分区134在服务器计算机系统100内的安全和隔离。管理程序开始、停止和中止分区134在处理器101上的执行。
管理程序136静态地和/或动态地向每个分区134分配计算机100中的可用资源的部分。例如可以向每个分区134分配处理器101中的一个或者多个处理器和/或在其上执行的一个或者多个硬件线程以及待访问的可用存储器空间的部分。分区134可以共享具体程序和/或硬件资源、比如处理器101,从而给定的资源可以由多于一个分区134利用。备选地,可以一次向仅一个分区134分配程序和硬件资源。通常地向分区134中的一个或者多个分区分配附加资源、例如海量存储装置、备用存储装置、用户输入、网络连接和/或其I/O适配器。可以用多种方式分配资源、例如在逐个总线基础上或者在逐个资源基础上而多个分区134在相同总线上共享资源。可以一次向多个分区134分配一些资源。这里标识的资源仅为例子,并且可以使用能够分配的任何适当资源。
在一个实施例中,如以下参照图2、3、4、5、6和7进一步描述的那样,分区134和/或管理程序136包括在处理器101上执行的指令或者由在处理器101上执行的指令解释的语句以执行功能。在另一实施例中,可以在微代码或者固件中实现分区134和/或管理程序136。在另一实施例中,可以经由逻辑门、半导体器件、芯片、电路、电路卡和/或其它物理硬件器件在硬件中实现管理程序136。
存储器总线103提供用于在处理器101、存储器102和I/O总线接口单元105之中传送数据的数据通信路径或者通信结构。I/O总线接口单元105进一步耦合到I/O总线104用于向和从各种I/O单元传送数据。I/O总线接口单元105通过I/O总线104与也称为I/O处理器(IOP)或者I/O适配器(IOA)的多个I/O接口单元111、112、113和114通信。
I/O接口单元支持与多种存储和I/O设备的通信。例如终端接口单元111支持附着一个或者多个用户I/O设备,该一个或者多个用户I/O设备可以包括用户输出设备(比如视频显示设备、投影仪、扬声器和/或电视机)和用户输入设备(比如相机、键盘、鼠标、小键盘、触板、跟踪球、按钮、射频标识符标签、光笔、手指、触笔或者其它定点设备)。用户可以使用用户接口来操纵用户输入设备以便向用户I/O设备121和服务器计算机系统100提供输入数据和命令并且可以经由用户输出设备接收输出数据。例如可以经由用户I/O设备121呈现、比如在显示设备上显示用户接口。用户I/O设备121可以是任何大小并且可以适应多个用户同时地或者协作地查看和触摸显示设备,并且在一个实施例中,任何用户可以在显示设备上的任何位置触摸。
存储接口单元112支持附着一个或者多个盘驱动或者直接存取存储设备125(它们通常是旋转磁盘驱动存储设备,尽管它们可以备选地是其它存储设备、包括配置为向主机计算机表现为单个大的存储设备的盘驱动阵列)。在另一实施例中,可以经由任何类型的次存储设备实现存储设备125。可以如需要的那样向存储设备125存储和从存储设备125取回存储器102的内容或者其任何部分。I/O设备接口单元113提供与各种其它输入/输出设备或者其它类型的设备、比如打印机或者传真机中的任何设备的接口。网络接口单元114提供从服务器计算机系统100到其它数字设备和计算机系统的一个或者多个通信路径,这样的路径可以例如包括一个或者多个网络130。
虽然在图1中示出存储器总线103为提供在处理器101、存储器102和I/O总线接口单元105之中的直接通信路径的相对地简单、单个总线结构,但是事实上,通信总线103可以包括可以在各种形式、比如在分级、星型或者web配置中的点到点链路、多个分级总线、并行和冗余路径或者任何其它适当类型的配置的任何形式中布置的多个不同总线或者通信路径。另外,尽管示出I/O总线接口单元105和I/O总线14为单个相应单元,但是服务器计算机系统100可以事实上包含多个I/O总线接口单元105和/或多个I/O总线104。尽管示出将I/O总线104从伸向各种I/O设备的各种通信路径分离的多个I/O接口单元,但是在其它实施例中,I/O设备中的一些或者所有I/O设备直接地连接到一个或者多个系统I/O总线。
在各种实施例中,服务器计算机系统100是具有很少或者无直接用户接口、但是从其它计算机系统(客户端)接收请求的多用户大型机计算机系统、单用户系统或者服务器计算机或者相似设备。在其它实施例中,实现服务器计算机系统100为桌面型计算机、便携计算机、膝上型或者笔记本计算机、平板计算机、口袋计算机、电话、智能电话、寻呼机、汽车、远程会议系统、电器或者任何其它适当类型的电子设备。
网络130可以是任何适当总线、网络或者其任何多个或者组合并且可以支持适合用于数据和/或代码向/从服务器计算机系统100的通信的任何适当协议。在各种实施例中,网络130可以代表直接地或者间接地连接到服务器计算机系统100的存储设备或者存储设备组合。在另一实施例中,网络130可以支持无线通信。在另一实施例中,网络130可以支持硬接线通信、比如电话线或者线缆。在另一实施例中,网络130可以是因特网并且可以支持IP(网际协议)。在另一实施例中,实现网络130为局域网(LAN)或者广域网(WAN)。在另一实施例中,实现网络130为热点服务提供商网络。在另一实施例中,实现网络130为内部网。在另一实施例中,实现网络130为任何适当蜂窝数据网络、基于蜂窝的无线电网络技术或者无线网络。在另一实施例中,实现网络130为任何适当总线、网络或者其任何多个或者组合。
图1旨在于描绘计算机系统100和网络130的有代表性的主要部件。但是个别部件可以具有比图1中代表的复杂性更大的复杂性,取代图1中所示部件的部件或者除了图1中所示部件之外的其它部件可以存在,并且这样的部件的数目、类型和配置可以变化。这里公开这样的附加复杂性或者附加变化的若干具体例子;这些仅通过例子而未必是仅有的这样的变化。可以用多种方式、包括使用各种计算机应用、例程、部件、程序、对象、模块、数据结构等的多种方式实现图1中所示的和实现本发明的各种实施例的各种程序部件,并且下文称之为“计算机程序”或者简称为“程序”。
计算机程序包括在各种时间在服务器计算机系统100中的各种存储器和存储设备中常驻的以及在由服务器计算机系统100中的一个或者多个处理器读取和执行时或者在由一个或者多个处理器执行的指令解释时使服务器计算机程序100执行动作的一个或者多个指令或者语句,这些动作是执行包括本发明的实施例的各种方面的步骤或者单元而必需的。可以体现本发明的实施例的方面为系统、方法或者计算机程序产品。因而,本发明的实施例的方面可以采用全硬件实施例、全软件实施例(包括存储在存储设备中的固件、常驻程序、微代码等)或者组合程序和硬件方面的形式,这些程序和硬件方面都可以一般地称为“电路”、“模块”或者系统。另外,本发明的实施例可以采用在一个或者多个计算机可读介质中体现的计算机程序产品的形式,该一个或者多个计算机可读介质具有在其上体现的计算机可读程序代码。
可以利用一个或者多个计算机可读介质的任何组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质可以例如是但不限于电子、磁、光、电磁、红外线或者半导体系统、装置或者设备或者前述例子的任何适当组合。计算机可读存储介质的更多具体示例(非穷尽列表)可以包括以下各项:具有一个或者多个接线的电连接、便携计算机盘、硬盘(例如存储设备125)、随机存取存储器(RAM)(例如存储器102)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)或者闪存、光纤、便携高密度盘只读存储器(CD-ROM)、光存储设备、磁存储设备或者前述例子的任何适当组合。在本文的上下文中,计算机可读存储介质可以是任何可以包含或者存储用于由或者结合指令执行系统、装置或者设备使用的程序的介质。
计算机可读信号介质可以包括例如在基带中或者作为载波的部分的、传播的数据信号,该数据信号具有在其上体现的计算机可读程序代码。这样的传播的信号可以采用包括但不限于电磁、光或者其任何适当组合的多种形式中的任何形式。计算机可读信号介质可以是任何计算机可读介质,该计算机可读介质不是计算机可读存储介质并且传达、传播或者传送用于由或者结合指令执行系统、装置或者设备使用的程序。可以使用包括但不限于无线、有线、光纤线缆、射频或者前述例子的任何适当组合来传输在计算机可读介质上体现的程序代码。
可以用包括面向对象的编程语言和常规过程编程语言的一个或者多个编程语言的任何组合编写用于实现用于本发明的实施例的方面的操作的计算机程序代码。程序代码可以完全地在用户的计算机上、部分地在远程计算机上或者完全地在远程计算机或者服务器上执行。在后一种场景中,远程计算机可以通过包括局域网(LAN)或者广域网(WAN)的任何类型的网络连接到用户的计算机,或者可以与外部计算机产生连接(例如使用因特网服务提供商通过因特网)。
以下参照方法、装置(系统)和计算机程序产品的流程图图示和/或框图描述本发明的实施例的方面。流程图图示和/或框图的每个块以及流程图图示和/或框图中的块组合可以由在计算机可读介质中体现的计算机程序指令实现。可以向通用计算机、专用计算机或者其它可编程数据处理装置的处理器提供这些计算机程序指令以产生机器,从而经由计算机或者其它可编程数据处理装置的处理器执行的指令产生用于实现由流程图和/或框图的一个或者多个块指定的功能/动作的部件。这些计算机程序指令也可以被存储在计算机可读介质中,该计算机可读介质指引计算机、其它可编程数据处理装置或者其它设备以特定方式工作,从而在计算机可读介质中存储的指令产生包括指令的制造品,这些指令实现由流程图和/或框图的一个或者多个块指定的功能/动作。
可以经由可以操作地或者通信地连接(直接地或者间接地)到一个或者多个处理器的多种有形计算机可读存储介质向计算机系统递送定义本发明的各种实施例的功能的计算机程序。计算机程序指令也可以被加载到计算机、其它可编程数据处理装置或者其它设备上以使系列操作步骤在计算机、其它可编程装置或者其它设备上被执行以产生计算机实现的过程,从而在计算机或者其它可编程装置上执行的指令提供用于实现在流程图和/或框图的一个或者多个块中指定的功能/动作的过程。
图中的流程图和框图图示根据本发明的各种实施例的系统、方法和计算机程序产品的可能实现方式的架构、功能和操作。就这一点而言,流程图或者框图中的每个块可以代表模块、段或者代码部分,该模块、段或者代码部分包括用于实现指定的逻辑功能的一个或者多个可执行指令。在一些实施例中,在块中指出的功能可以未按图中指出的顺序出现。例如接连示出的两个块事实上可以根据涉及到的功能而被基本上并行地执行或者块可以有时按照相反顺序来执行。框图和/或流程图图示的每个块以及框图和/或流程图图示中的块组合可以由结合专用硬件和计算机指令执行指定的功能或者动作的基于专用硬件的系统实现。
可以交付本发明的实施例为与客户公司、非盈利组织、政府实体或者内部组织结构的服务约定的部分。这些实施例的方面可以包括配置计算机系统以执行这里描述的方法中的一些或者所有方法以及部署实施这些方法中的一些或者所有方法的计算机服务(例如计算机可读代码、硬件和web服务)。这些实施例的方面也可以包括分析客户公司、响应于分析来产生推荐、生成用于实这现些推荐的部分的计算机可读代码、将计算机可读代码集成到现有过程、计算机系统和计算机基础结构中、计量对这里描述的方法和系统的使用、向用户分配开支以及对于用户对这些方法和系统的使用而向他们开账单。此外,可以基于下文描述的各种程序在本发明的一个具体实施例中被实现用于的应用来标识这些程序。但是,仅为了方便而使用下文的任何特定程序术语,因此本发明的实施例不限于仅在由这样的术语标识和/或暗示的任何具体应用中使用。图1中所示示例环境未旨在于限制本发明。实际上,可以使用其它备选硬件和/或程序环境而未脱离本发明的实施例的范围。
图2描绘根据本发明的一个实施例的经由网络130和存储设备125连接的例子服务器计算机系统A100-1、例子服务器计算机系统B100-2、例子服务器计算机系统C100-3和例子服务器计算机系统D100-4的高级框图。服务器计算机系统100-1、100-2、100-3和100-4是服务器计算机系统100的例子并且通常为服务器计算机系统100。服务器计算机A100-1包括分区134-1、分区134-2、管理程序136和存储器表140-1。分区134-1包括这里称为对象的应用144-1、操作系统146-1和数据148-1。分区134-2可以包括与分区134-1、134-3、134-4、134-5、134-6、134-7和134-8相同或者不同的应用、操作系统和数据。
服务器计算机B100-2包括分区134-3、分区134-4、管理程序136和存储器表140-2。分区134-3包括这里称为对象的应用144-2、操作系统146-2和数据148-2。分区134-3可以包括与分区134-1、134-2、134-4、134-5、134-6、134-7和134-8相同或者不同的应用、操作系统和数据。服务器计算机C100-3包括分区134-5、分区134-6、管理程序136和存储器表140-3。分区134-5包括这里称为对象的应用144-3、操作系统146-3和数据148-3。分区134-6可以包括与分区134-1、134-2、134-3、134-4、134-5、134-7和134-8相同或者不同的应用、操作系统和数据。服务器计算机D100-4包括分区134-7、分区134-8、管理程序136和存储器表140-4。分区134-7包括这里称为对象的应用144-4、操作系统146-4和数据148-4。分区134-8可以包括与分区134-1、134-2、134-3、134-4、134-5、134-6和134-7相同或者不同的应用、操作系统和数据。
分区134-1、134-2、134-3、134-4、134-5、134-6、134-7和134-8是分区134(图1)的例子并且通称为分区134。存储器表140-1、140-2、140-3和140-4是存储器表140(图1)的例子并且通称为存储器表140。应用144-1、144-2、144-3和144-4是应用144(图1)的例子并且通称为应用144。应用144-1、144-2、144-3和144-4可以相互相同或者不同。操作系统146-1、146-2、146-3和146-4是操作系统146(图1)的例子并且通称为操作系统146。操作系统146-1、146-2、146-3和146-4可以相互相同或者不同。数据148-1、148-2、148-3和148-4是数据148(图1)的例子并且通称为数据148。数据148-1、148-2、148-3和148-4可以相互相同或者不同。
相应数据148-1、148-2、148-3和148-4可以包括描述相应分区134-1、134-3、134-5和134-7的当前执行状态的状态信息,这些相应分区包括相应数据148-1、148-2、148-3和148-4,并且相应数据148-1、148-2、148-3和148-4也可以包括相应分区尚未向网络130或者向存储设备125写入的缓冲的数据。
分区134在其上执行的服务器计算机是用于该分区134的主服务器。分区134不在它的次服务器上执行。取而代之,分区134被镜像在次服务器上,这意味着分区134的应用和操作系统146被安装和存在于次服务器的存储器中,并且主服务器从在主服务器的分区134向在次服务器的分区134周期地复制数据,从而响应于主服务器的故障,次服务器可以变成新主服务器并且在新主服务器的分区134可以用对分区134的用户基本上透明的方式开始在出故障的主服务器的分区134停止的点执行而中断最少。因此,服务器可以在故障保护操作之前是用于分区134的次服务器、然后在故障保护操作之后变成用于该相同分区134的新主服务器。另外服务器在相同时间可以是用于一个分区134的主服务器并且也可以是用于另一分区134的次服务器。分区134如以下进一步描述的那样使用位于分区134在其上执行的主服务器的存储器表140。服务器100-1、100-2、100-3或者100-4中的任何服务器可以在是用于分区的次服务器之时是用于一个或者多个分区的主服务器。另外,服务器可以在一个时间是用于分区的主服务器而在另一时间是用于相同分区的次服务器。
图3描绘根据本发明的一个实施例的用于在主服务器A的存储器表140-1的例子数据结构的框图。存储器表140-1包括任何数目的条目,一个条目用于在通过在主服务器A执行分区134而访问的在主服务器A的存储器102中的每个存储器块地址。条目中的每个条目包括存储器块地址字段302。条目中的每个条目也包括在主服务器A的错误字段304、在次服务器B的错误字段306、在次服务器C的错误字段308和在次服务器D的错误字段310,但是在其它实施例中,与连接到网络130的主和次服务器的数目对应的更多或者更少字段可以存在。
每个条目中的存储器块地址字段302指定在服务器的存储器102内的存储器位置或者存储器块的地址。在各种服务器的相同存储器块地址302视为对应,这意味着它们具有相同存储器块地址、但是在不同服务器中的不同存储器中。在各种实施例中,由存储器块地址字段302指定的地址可以是逻辑地址、物理地址、虚拟地址、绝对地址或者相对地址。在主服务器A的错误字段304、在次服务器B的错误字段306、在次服务器C的错误字段308和在次服务器D的错误字段310指定在相应服务器的由每个条目中的相同存储器块地址302指定的相应存储器位置的相应错误状态。在各种实施例中,错误状态可以指示在相应服务器的在存储器块地址302的存储器位置无错误,在相应服务器的在存储器块地址302的存储器位置具有纠正的错误,或者在存储器块地址的存储器位置具有不可纠正的错误、即不能纠正的错误。
在各种实施例中,纠正的错误是服务器经由重试遇到错误的操作(并且该重试未遇到问题)或者通过使用ECC(纠错码)来纠正的瞬态、软性或者间歇错误,该ECC确定存储器中的单位或者双位错误并且向遇到错误的存储器位重写纠正的数据,并且该重写未遇到进一步错误,从而服务器可以在纠正错误之后继续访问遇到纠正的错误的存储器块地址。在各种实施例中,纠正的错误可能已经由电子磁体噪声、宇宙射线或者由存储器单元的退化所引起,该退化将随着退化持续进行而最终地导致存储器中的不可纠正的错误。在各种实施例中,不可纠正的错误是硬错误、非瞬态错误、由存储器电流中的缺陷引起的错误,服务器不能纠正,修复或者恢复该错误,从而服务器在检测到不可纠正的错误之后或者在试图纠正错误而失败之后停止访问该存储器位置。
存储器表140-1还包括在次服务器B的有错误的存储器块的数目字段312、在次服务器C的有错误的存储器块的数目字段314和在次服务器D的有错误的存储器块的数目字段316。在次服务器B的有错误的存储器块的数目字段312、在次服务器C的有错误的存储器块的数目字段314和在次服务器D的有错误的存储器块的数目字段316对在相应服务器的具有纠正和/或不可纠正的错误的存储器块的数目进行计数。
图4描绘根据本发明的一个实施例的用于校验点的例子处理的流程图。可以任何次数和在任何主服务器、比如服务器100-1、100-2、100-3和100-4执行图4的逻辑。可以在与图5、6和7相同或者不同的服务器的相同或者不同处理器上同时地、并行地或者交织执行图4的逻辑。控制在块400开始。控制然后继续块405,其中对于在主服务器执行的分区134到达校验点。校验点由时间段的到期或者由另一校验点边界确定事件代表。在一个实施例中,管理程序136可以通过检测到定时器的激发来确定已经到达校验点。控制然后继续块410,其中响应于到达校验点,在主服务器的管理程序136向次服务器发送分区数据148,该次服务器接收和在它们的相应存储器中存储分区数据148。以这一方式,主服务器向次服务器周期地发送分区数据148。控制然后继续块415,其中在主服务器的管理程序146等待(一段时间直至到达下一校验点)。控制然后返回到如以上先前描述的块405。
图5描绘根据本发明的一个实施例的用于处置存储器错误的例子处理的流程图。可以任何次数和在任何主服务器、比如服务器100-1、100-2、100-3和100-4执行图5的逻辑。控制在块500开始。控制然后继续块505,其中分区134在主服务器执行从而访问(读取和/或写入)在主服务器的存储器102中的存储器块地址的存储器位置的对象。
控制然后继续块510,其中在主服务器的操作系统146确定在主服务器由执行分区134访问(读取或者写入)的第一存储器位置是否具有纠正的错误或者在次服务器的对应存储器位置(对应于在主服务器的第一存储器位置)具有或者有过错误(已纠正或者不可纠正)。如果在块510的确定为真,则在主服务器由执行分区134访问(读取或者写入)的第一存储器位置具有纠正的错误或者在次服务器的对应存储器位置(对应于在主服务器的第一存储器位置)具有纠正的错误或者具有不可纠正的错误,因此控制继续块515,其中执行分区134中的操作系统146从在主服务器的第一存储器位置向在主服务器的第二存储器位置移动读取或者写入的对象。第二存储器位置没有不可纠正的错误或者没有纠正的错误,以及(可选地)其中与第二存储器位置对应的存储器位置(对应存储器位置在次服务器)没有不可纠正的错误或者没有纠正的错误。分区在确定第一存储器位置具有错误时、在确定在次服务器的对应存储器位置具有错误时和在从在主服务器的第一存储器位置向第二存储器位置移动对象时不在次服务器执行。操作系统146避免向在存储器服务器的第二存储器位置移动对象,即使在主服务器的第二存储器位置没有错误,该第二存储器位置具有在次服务器的有错误(已纠正或者不可纠正)的对应存储器位置。
控制然后继续块520,其中在主服务器的管理程序136向连接到主服务器的所有其它服务器发送在主服务器的存储器中的具有纠正或者不可纠正的错误的位置和在主服务器的具有纠正或者不可纠正的错误的存储器块的数目。其它服务器接收和在它们的相应存储器表中存储位置和数目。控制然后返回到如以上先前描述的块505,其中分区134继续在主服务器上执行、访问在相同或者不同存储器位置的相同或者不同对象。
如果在块510的确定为假,则在主服务器由执行分区134访问的存储器位置没有纠正的错误,并且在次服务器的与在主服务器由执行分区134访问的存储器位置对应的存储器位置没有纠正的错误并且没有不可纠正的错误,因此控制返回到如以上先前描述的块505,其中分区134继续在主服务器上执行、访问在相同或者不同存储器位置的相同或者不同对象而未执行在块515和520中描述的处理。
图6描绘根据本发明的一个实施例的用于处置主服务器的故障的例子处理的流程图。可以任何次数执行并且可以在任何服务器计算机、比如服务器计算机100-1、100-2、100-3和100-4执行图6中所示逻辑。控制在块600开始。控制然后继续块605,其中在服务器计算机100的管理程序136检测到主服务器已经出故障。在各种实施例中,管理程序136响应于在时间段内未从主服务器接收消息、分组、信号或者其它通知来确定主服务器已经出故障。在各种实施例中,管理程序136从用户I/O设备121、从网络130或者从管理程序136的设计者接收时间段的指定。在一个实施例中,管理程序136经由心跳协议确定主服务器已经出故障。在各种实施例中,主服务器可能已经由于在主服务器的无穷循环、失去供给主服务器的电功率(有意或者无意)或者在主服务器的程序或者硬件错误而出故障。
控制然后继续块610,其中在服务器计算机100的管理程序136选择如与所有其它次服务器比较的具有最少、最小或者最次要数目的存储器块的选择的次服务器(从对于出故障的主服务器是次服务器的所有服务器之中),这些存储器块具有纠正的或者不可纠正的错误。
控制然后继续块615,其中在服务器计算机100的管理程序136指明选择的次服务器作为用于在出故障的服务器计算机上执行(在出故障的服务器计算机的故障之前)的分区134的新主服务器并且开始在新主服务器(选择的次服务器)上执行的分区134,而在新主服务器的分区134从新主服务器读取分区数据148并且使用分区数据148以确定分区134在其上执行的处理器的状态和分区134正在处理的事务或者请求的状态。分区134使用在新主服务器的存储器表140按照图4和5的逻辑在新主服务器上执行。控制然后继续块699,其中图6的逻辑返回。
图7描绘根据本发明的用于处置次服务器的故障的例子处理的流程图。可以任何次数执行和可以在任何主服务器计算机、比如服务器计算机100-1、100-2、100-3和100-4执行图7中所示逻辑。控制在块700开始。控制然后继续块705,其中在主服务器的管理程序136检测到次服务器已经出故障。在各种实施例中,管理程序136响应于在一段时间内未从次服务器接收消息、分组、信号或者其它通知来确定次服务器已经出故障。在一个实施例中,管理程序136经由心跳协议确定次服务器已经出故障。在各种实施例中,次服务器可以已经由于在次服务器的无限循环、失去供给次服务器的电功率(有意或者无意)或者在次服务器的程序或者硬件错误而出故障。控制然后继续块710,其中响应于检测到次服务器已经出故障,管理程序136从在主服务器的存储器表140去除用于出故障的次服务器的纠正和不可纠正的错误指示。
控制然后继续块715,其中响应于检测到次服务器已经出故障,管理程序136向在主服务器的操作系统146通知次服务器出故障。响应于接收通知,在主服务器的操作系统146终止避免在出故障的次服务器的具有错误的存储器位置、即在主服务器的操作系统146允许在主服务器的存储器位置存储对象,这些存储器对象具有在有错误(已纠正或者不可纠正)的次服务器的对应位置。控制然后继续块799,其中图7的逻辑返回。
以这一方式,在一个实施例中,分区可以避免在故障保护操作之后立即遇到存储器错误。
这里使用的术语仅用于描述具体实施例而未旨在于限制本发明。如这里所用,单数形式“一个”和“该”旨在于也包括复数形式,除非上下文清楚地另有明示。还将理解术语“包括”在本说明书中使用时指定存在陈述的特征、整件、步骤、操作、单元和/或部件、但是未排除存在或者添加一个或者多个其它特征、整件、步骤、操作、单元、部件和/或其成组。在本发明的示例实施例的先前具体描述中,参照附图(其中相似标号代表相似单元),附图形成该具体描述的部分,并且在附图中通过示例示出其中可以实现本发明的具体示例实施例。用充分细节描述这些实施例以使本领域技术人员能够实现本发明,但是可以利用其它实施例,并且可以进行逻辑、机械、电和其它改变而未脱离本发明的范围。在先前描述中,阐述许多具体细节以提供对本发明的实施例的透彻理解。但是,无这些具体细节仍然可以实现本发明的实施例。在其它实例中,尚未具体示出熟知的电路、结构和技术以免模糊本发明的实施例。
如在本说明书内使用的字眼“实施例”的不同实例未必指代相同实施例,但是它们可以指代相同实施例。这里图示或者描述的任何数据和数据结构仅为例子,而在其它实施例中,可以使用不同数据数量、数据、字段和数的类型以及字段类型、字段名称、行、记录、条目的数目和类型或者数据的组织。此外,任何数据可以与逻辑组合,从而分离数据结构不是必需的。先前具体描述因此不会在限制意义上加以解读。

Claims (20)

1.一种方法,包括:
在主服务器处执行分区,其中所述分区访问在所述主服务器的第一存储器块地址处的第一存储器位置;以及
如果在次服务器的第一对应存储器位置具有错误,其中在所述次服务器处的所述第一对应存储器位置对应于在所述主服务器处的所述第一存储器位置,则从在所述主服务器处的所述第一存储器位置向在所述主服务器处的第二存储器位置移动对象。
2.根据权利要求1所述的方法,其中所述移动所述对象还包括:
从在所述主服务器处的所述第一存储器位置向与在所述次服务器处的第二对应存储器位置对应的在所述主服务器处的所述第二存储器位置移动所述对象,其中在所述次服务器处的所述第二对应存储器位置没有所述错误。
3.根据权利要求1所述的方法,其中当在所述主服务器处的所述第一存储器位置的所述第一存储器块地址与在所述次服务器处的所述第一对应存储器位置的第一对应存储器块地址相同时,在所述次服务器处的所述第一对应存储器位置对应于在所述主服务器处的所述第一存储器位置。
4.根据权利要求1所述的方法,还包括:
响应于检测到所述主服务器已经出故障,开始在所述次服务器上执行的所述分区,其中所述检测到所述主服务器已经出故障还包括检测到所述次服务器在一时间段内尚未从所述主服务器接收到消息。
5.根据权利要求4所述的方法,还包括:
从多个次服务器之中选择具有最少数目的有错误的存储器块的所述次服务器。
6.根据权利要求1所述的方法,还包括:
响应于检测到所述次服务器已经出故障,允许将对象存储在所述主服务器处的所述第一存储器位置处,其中所述检测到所述次服务器已经出故障还包括检测到所述主服务器在一时间段内尚未从所述次服务器接收到消息。
7.根据权利要求1所述的方法,其中所述错误包括已纠正的错误。
8.根据权利要求1所述的方法,其中所述错误包括不可纠正的错误。
9.一种用指令编码的计算机可读存储介质,其中所述指令在被执行时包括:
在主服务器处执行分区,其中所述分区访问在所述主服务器处的第一存储器块地址处的第一存储器位置;以及
如果在次服务器处的第一对应存储器位置具有错误,其中在所述次服务器处的所述第一对应存储器位置对应于在所述主服务器处的所述第一存储器位置,则从在所述主服务器处的所述第一存储器位置向在所述主服务器处的第二存储器位置移动对象,其中所述移动所述对象还包括从在所述主服务器处的所述第一存储器位置向与在所述次服务器处的第二对应存储器位置对应的在所述主服务器处的所述第二存储器位置移动所述对象,其中在所述次服务器处的所述第二对应存储器位置没有所述错误。
10.根据权利要求9所述的计算机可读存储介质,其中当在所述主服务器的所述第一存储器位置处的所述第一存储器块地址与在所述次服务器处的所述第一对应存储器位置的第一对应存储器块地址相同时,在所述次服务器处的所述第一对应存储器位置对应于在所述主服务器处的所述第一存储器位置。
11.根据权利要求9所述的计算机可读存储介质,还包括:
响应于检测到所述主服务器已经出故障,开始在所述次服务器上执行的所述分区,其中所述检测到所述主服务器已经出故障还包括检测到所述次服务器在一时间段内尚未从所述主服务器接收到消息。
12.根据权利要求11所述的计算机可读存储介质,还包括:
从多个次服务器之中选择具有最少数目的有错误的存储器块的所述次服务器。
13.根据权利要求9所述的计算机可读存储介质,还包括:
响应于检测到所述次服务器已经出故障,允许将对象存储在所述主服务器处的所述第一存储器位置处,其中所述检测到所述次服务器已经出故障还包括检测到所述主服务器在一时间段内尚未从所述次服务器接收到消息。
14.根据权利要求9所述的计算机可读存储介质,其中所述错误包括已纠正的错误。
15.根据权利要求9所述的计算机可读存储介质,其中所述错误包括不可纠正的错误。
16.一种计算机,包括:
处理器;以及
通信地耦合到所述处理器的存储器,其中所述存储器用指令编码,并且其中所述指令当在所述处理器上执行时包括:
在主服务器处执行分区,其中所述分区访问在所述主服务器处的第一存储器块地址处的第一存储器位置;以及
如果在次服务器处的第一对应存储器位置具有错误,其中在所述次服务器处的所述第一对应存储器位置对应于在所述主服务器处的所述第一存储器位置,则从在所述主服务器处的所述第一存储器位置向在所述主服务器处的第二存储器位置移动对象,其中所述移动所述对象还包括从在所述主服务器处的所述第一存储器位置向与在所述次服务器处的第二对应存储器位置对应的在所述主服务器处的所述第二存储器位置移动所述对象,其中在所述次服务器的所述第二对应存储器位置没有错误,其中当在所述主服务器处的所述第一存储器位置的所述第一存储器块地址与在所述次服务器处的所述第一对应存储器位置的第一对应存储器块地址相同时,在所述次服务器处的所述第一对应存储器位置对应于在所述主服务器处的所述第一存储器位置,其中所述分区在确定在所述次服务器处的所述第一对应存储器位置具有错误时不在所述次服务器执行,以及
响应于检测到所述主服务器已经出故障,开始在所述次服务器上执行的所述分区,其中所述检测到所述主服务器已经出故障还包括检测到所述次服务器在一时间段内尚未从所述主服务器接收到消息。
17.根据权利要求16所述的计算机,其中所述指令还包括:
从多个次服务器之中选择具有最少数目的有错误的存储器块的所述次服务器。
18.根据权利要求16所述的计算机,其中所述指令还包括:
响应于检测到所述次服务器已经出故障,允许将对象存储在所述主服务器处的所述第一存储器位置处,其中所述检测到所述次服务器已经出故障还包括检测到所述主服务器在一时间段内尚未从所述次服务器接收到消息。
19.根据权利要求16所述的计算机,其中所述错误包括已纠正的错误。
20.根据权利要求16所述的计算机,其中所述错误包括不可纠正的错误。
CN201480038708.4A 2013-07-22 2014-07-10 用于移动主计算机中的对象的方法和系统 Active CN105359109B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/947,420 2013-07-22
US13/947,420 US9235485B2 (en) 2013-07-22 2013-07-22 Moving objects in a primary computer based on memory errors in a secondary computer
PCT/CN2014/081948 WO2015010543A1 (en) 2013-07-22 2014-07-10 Moving objects in primary computer based on memory errors in secondary computer

Publications (2)

Publication Number Publication Date
CN105359109A true CN105359109A (zh) 2016-02-24
CN105359109B CN105359109B (zh) 2017-09-29

Family

ID=52344612

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480038708.4A Active CN105359109B (zh) 2013-07-22 2014-07-10 用于移动主计算机中的对象的方法和系统

Country Status (6)

Country Link
US (1) US9235485B2 (zh)
JP (1) JP6444400B2 (zh)
CN (1) CN105359109B (zh)
DE (1) DE112014003372T5 (zh)
GB (1) GB2531678B (zh)
WO (1) WO2015010543A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109756387A (zh) * 2017-11-08 2019-05-14 连株式会社 持续性管理方法、计算机装置及计算机可读记录介质

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11449394B2 (en) 2010-06-04 2022-09-20 Commvault Systems, Inc. Failover systems and methods for performing backup operations, including heterogeneous indexing and load balancing of backup and indexing resources
US10191672B2 (en) * 2015-10-16 2019-01-29 Google Llc Asynchronous copying of data within memory
US10747630B2 (en) * 2016-09-30 2020-08-18 Commvault Systems, Inc. Heartbeat monitoring of virtual machines for initiating failover operations in a data storage management system, including operations by a master monitor node
US10771550B2 (en) 2016-12-28 2020-09-08 Amazon Technologies, Inc. Data storage system with redundant internal networks
US10484015B2 (en) 2016-12-28 2019-11-19 Amazon Technologies, Inc. Data storage system with enforced fencing
US11301144B2 (en) 2016-12-28 2022-04-12 Amazon Technologies, Inc. Data storage system
US10514847B2 (en) * 2016-12-28 2019-12-24 Amazon Technologies, Inc. Data storage system with multiple durability levels
US11200124B2 (en) 2018-12-06 2021-12-14 Commvault Systems, Inc. Assigning backup resources based on failover of partnered data storage servers in a data storage management system
US11169723B2 (en) 2019-06-28 2021-11-09 Amazon Technologies, Inc. Data storage system with metadata check-pointing
US11099956B1 (en) 2020-03-26 2021-08-24 Commvault Systems, Inc. Snapshot-based disaster recovery orchestration of virtual machine failover and failback operations

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5659682A (en) * 1994-06-16 1997-08-19 International Business Machines Corporation Scheme to determine completion of directory operations for server recovery
US5815647A (en) * 1995-11-02 1998-09-29 International Business Machines Corporation Error recovery by isolation of peripheral components in a data processing system
CN101283344A (zh) * 2005-10-10 2008-10-08 瓦拉泰克有限公司 具有增强的存储器清除的多计算机系统
CN101283343A (zh) * 2005-10-10 2008-10-08 瓦拉泰克有限公司 具有部分存储器更新的改进的机器体系结构

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3180737B2 (ja) * 1997-10-29 2001-06-25 日本電気株式会社 システムの冗長化方法
US20040059735A1 (en) * 2002-09-10 2004-03-25 Gold Russell Eliot Systems and methods for enabling failover in a distributed-object computing environment
EP1550053A4 (en) 2002-09-18 2009-03-25 Netezza Corp ARCHITECTURE OF THE MIRROR DISK FOR DATABASE DEVICES
US7472221B1 (en) 2004-03-29 2008-12-30 Emc Corporation Mirrored memory
US20050278439A1 (en) * 2004-06-14 2005-12-15 Ludmila Cherkasova System and method for evaluating capacity of a heterogeneous media server configuration for supporting an expected workload
US7627775B2 (en) 2005-12-13 2009-12-01 International Business Machines Corporation Managing failures in mirrored systems
US7930496B2 (en) 2006-06-29 2011-04-19 International Business Machines Corporation Processing a read request to a logical volume while relocating a logical volume from a first storage location to a second storage location using a copy relationship
US7882326B2 (en) 2007-03-23 2011-02-01 International Business Machines Corporation Live migration of a logical partition
JP5011073B2 (ja) * 2007-11-22 2012-08-29 株式会社日立製作所 サーバ切り替え方法、およびサーバシステム
US8255639B2 (en) 2008-05-06 2012-08-28 International Business Machines Corporation Partition transparent correctable error handling in a logically partitioned computer system
US8407515B2 (en) * 2008-05-06 2013-03-26 International Business Machines Corporation Partition transparent memory error handling in a logically partitioned computer system with mirrored memory
US8499297B2 (en) * 2008-10-28 2013-07-30 Vmware, Inc. Low overhead fault tolerance through hybrid checkpointing and replay
JP4870183B2 (ja) * 2009-03-13 2012-02-08 株式会社日立製作所 ストリームデータ処理システムにおける障害回復方法、計算機システム及び障害回復プログラム
US8769535B2 (en) 2009-09-24 2014-07-01 Avaya Inc. Providing virtual machine high-availability and fault tolerance via solid-state backup drives
US8407516B2 (en) 2009-12-23 2013-03-26 Intel Corporation Controlling memory redundancy in a system
US8605132B1 (en) * 2010-03-26 2013-12-10 Insors Integrated Communications Methods, systems and program products for managing resource distribution among a plurality of server applications
US8499336B2 (en) 2010-11-23 2013-07-30 Cisco Technology, Inc. Session redundancy among a server cluster
US8458514B2 (en) 2010-12-10 2013-06-04 Microsoft Corporation Memory management to accommodate non-maskable failures
JP6098778B2 (ja) * 2012-03-29 2017-03-22 日本電気株式会社 冗長化システム、冗長化方法、冗長化システムの可用性向上方法、及びプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5659682A (en) * 1994-06-16 1997-08-19 International Business Machines Corporation Scheme to determine completion of directory operations for server recovery
US5815647A (en) * 1995-11-02 1998-09-29 International Business Machines Corporation Error recovery by isolation of peripheral components in a data processing system
CN101283344A (zh) * 2005-10-10 2008-10-08 瓦拉泰克有限公司 具有增强的存储器清除的多计算机系统
CN101283343A (zh) * 2005-10-10 2008-10-08 瓦拉泰克有限公司 具有部分存储器更新的改进的机器体系结构

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109756387A (zh) * 2017-11-08 2019-05-14 连株式会社 持续性管理方法、计算机装置及计算机可读记录介质
CN109756387B (zh) * 2017-11-08 2023-06-13 连株式会社 持续性管理方法、计算机装置及计算机可读记录介质

Also Published As

Publication number Publication date
GB2531678B (en) 2016-12-07
GB201602092D0 (en) 2016-03-23
JP2016528616A (ja) 2016-09-15
CN105359109B (zh) 2017-09-29
JP6444400B2 (ja) 2018-12-26
US20150026508A1 (en) 2015-01-22
WO2015010543A1 (en) 2015-01-29
GB2531678A (en) 2016-04-27
DE112014003372T5 (de) 2016-03-31
US9235485B2 (en) 2016-01-12

Similar Documents

Publication Publication Date Title
CN105359109A (zh) 基于次计算机中的存储器错误移动主计算机中的对象
CN110392876B (zh) 用于将数据集和其他受管理对象同步地复制到基于云的存储系统的方法
US20210182190A1 (en) Intelligent die aware storage device scheduler
US11604690B2 (en) Online failure span determination
US10204017B2 (en) Variable drive health determination and data placement
US10861117B2 (en) Server-side, variable drive health determination
US11960348B2 (en) Cloud-based monitoring of hardware components in a fleet of storage systems
CN110720088A (zh) 集成到大容量存储设备的可访问快速耐久存储
US11630593B2 (en) Inline flash memory qualification in a storage system
US9104604B2 (en) Preventing unrecoverable errors during a disk regeneration in a disk array
US20220147365A1 (en) Accelerating Segment Metadata Head Scans For Storage System Controller Failover
US11947968B2 (en) Efficient use of zone in a storage device
US8972799B1 (en) Variable drive diagnostics
US20210255920A1 (en) Budgeting open blocks based on power loss protection
US11531577B1 (en) Temporarily limiting access to a storage device
US20230020268A1 (en) Evaluating Recommended Changes To A Storage System
US20190317861A1 (en) High availability state machine and recovery
Tang et al. Self-checkpoint: An in-memory checkpoint method using less space and its practice on fault-tolerant HPL
US20210255927A1 (en) Granular Voltage Tuning
WO2022087328A1 (en) Preserving data in a storage system operating in a reduced power mode
US11513974B2 (en) Using nonce to control erasure of data blocks of a multi-controller storage system
US9898360B1 (en) Preventing unnecessary data recovery
US8819494B2 (en) Automatically changing parts in response to tests
WO2023212228A1 (en) Container recovery layer prioritization
WO2023130060A1 (en) Enabling communication between a single-port device and multiple storage system controllers

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant