CN101288052A - 存储用于数据恢复的奇偶校验信息 - Google Patents

存储用于数据恢复的奇偶校验信息 Download PDF

Info

Publication number
CN101288052A
CN101288052A CNA2005800282628A CN200580028262A CN101288052A CN 101288052 A CN101288052 A CN 101288052A CN A2005800282628 A CNA2005800282628 A CN A2005800282628A CN 200580028262 A CN200580028262 A CN 200580028262A CN 101288052 A CN101288052 A CN 101288052A
Authority
CN
China
Prior art keywords
data
storage unit
website
storage
unit
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
CNA2005800282628A
Other languages
English (en)
Other versions
CN101288052B (zh
Inventor
卢·古延
尼娜·彻里安
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.)
Western Digital Technologies Inc
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 CN101288052A publication Critical patent/CN101288052A/zh
Application granted granted Critical
Publication of CN101288052B publication Critical patent/CN101288052B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • 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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/10Indexing scheme relating to G06F11/10
    • G06F2211/1002Indexing scheme relating to G06F11/1076
    • G06F2211/1028Distributed, i.e. distributed RAID systems with parity

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Multi Processors (AREA)

Abstract

本发明提供了一种方法、系统和制品,其中,在第一站点的第一存储单元耦接到在第二站点的第二存储单元和在第三站点的第三存储单元。在第一存储单元接收数据。所接收的数据被划分为第一部分和第二部分。数据的第一部分被存储在第一站点的第一存储单元中。数据的第二部分被分布到在第二站点的第二存储单元以存储。对应于数据的第一部分和数据的第二部分的奇偶校验数据被计算。该奇偶校验数据被分布到在第三站点的第三存储单元以存储。另外,本发明还提供了一种方法、系统和制品,其中,在第一站点的第一存储单元耦接到在第二站点的第二存储单元和在第三站点的第三存储单元。第一信息单元、第二信息单元和第三信息单元被产生,其中,所述第一信息单元、第二信息单元和第三信息单元每个包括所接收的数据和所计算的奇偶校验数据的一部分。第一信息单元被存储在第一站点的第一存储单元中。第二信息单元被分布到在第二站点的第二存储单元以存储。第三信息单元被分布到在第三站点的第三存储单元以存储。

Description

存储用于数据恢复的奇偶校验信息
技术领域
本公开涉及一种用于存储用于数据恢复的奇偶校验信息的方法、系统和制品。
背景技术
包括存储系统的信息技术系统可能需要保护以免于站点灾难或者损害(outage),其中,损害可能是计划的或者未计划的。而且,信息技术系统可能需要用于数据迁移、数据备份或者数据复制的特征。灾难或者损害恢复、数据迁移、数据备份和数据复制的实现可能包括存储系统中的数据的镜象或者复制。这样的数据镜象或者复制可能涉及在信息技术系统的主机、存储系统和联网部件之间的交互。
可以通过将数据从第一站点复制到第二站点来保护信息技术系统免于站点损害。第一站点可以称为应用站点、本地站点、主站点或者生产站点。第二站点可以被称为恢复站点、远程站点、辅助站点或者备份站点。
独立磁盘冗余阵列(RAID)是盘存储系统中使得盘容错以从灾难恢复的机制。RAID可以使用称为奇偶校验的纠错码来从单点故障错误、即单个盘的故障中恢复。RAID可以跨越多个盘条带化(stripe)数据和奇偶校验信息,以改善数据检索的速度,并且同时允许容错。存在多个不同的RAID级,诸如RAID级0、1、2、3、4、5。例如,RAID级5提供了字节级的数据条带化,并且还提供条带化纠错信息。在RAID级5中,可以计算对应于多个盘上的数据的奇偶校验信息,并且可以使用该奇偶校验信息来从盘故障恢复而不丢失任何数据。
发明内容
本发明提供了一种方法、系统和制品,其中,在第一站点的第一存储单元耦接到在第二站点的第二存储单元和在第三站点的第三存储单元。在第一存储单元接收数据。把所接收的数据划分为第一部分和第二部分。将数据的第一部分存储在第一站点的第一存储单元中。将数据的第二部分分布到在第二站点的第二存储单元以存储。计算对应于该数据的第一部分和该数据的第二部分的奇偶校验数据。把该奇偶校验数据分布到在第三站点的第三存储单元以存储。
在其他的实施例中,响应于在第一站点的数据丢失,从在第二站点存储的该数据的第二部分和在第三站点存储的该奇偶校验数据来恢复该数据的第一部分。在其他的实施例中,数据的第一部分、数据的第二部分和奇偶校验数据的大小之和小于所接收的数据大小的两倍。在其他的实施例中,数据的第一部分、数据的第二部分和奇偶校验数据的大小之和是所接收的数据大小的1.5倍。
在其他的实施例中,第一站点、第二站点和第三站点彼此相隔超过10英里的距离,并且其中,第一部分、第二部分和第三部分被存储在不同的存储盘系统中。
在其他的实施例中,第一站点和第三站点之间的距离小于第一站点和第二站点之间的距离。
在其他的实施例中,第一存储单元包括高速缓冲存储器。将所接收的数据存储在第一存储单元中的高速缓冲存储器中,在划分所接收的数据之前,接收对高速缓冲存储器中所存储的数据的更新。使用所接收的更新来更新所述高速缓冲存储器,其中,分布所述数据的第二部分和奇偶校验数据是异步地执行的,以及其中,把数据的第一部分、数据的第二部分和奇偶校验数据打上时间戳。
在其他的实施例中,第一存储单元耦接到向第一存储单元发送输入/输出请求的主机,其中,从该主机到第一存储单元的更新被异步地反映在第二存储单元处,并且被异步地反映在第三存储单元处。
本发明还提供了一种方法、系统和制品,其中,在第一站点的第一存储单元耦接到在第二站点的第二存储单元和在第三站点的第三存储单元。产生第一信息单元、第二信息单元和第三信息单元,其中,所述第一信息单元、第二信息单元和第三信息单元每个包括所接收的数据和所计算的奇偶校验数据的一部分。将第一信息单元存储在第一站点的第一存储单元中。将第二信息单元分布到在第二站点的第二存储单元以存储。将第三信息单元分布到在第三站点的第三存储单元以存储。
在其他的实施例中,响应于在第一站点的数据丢失,从第二信息单元和第三信息单元恢复所接收的数据。在其他的实施例中,第一信息单元、第二信息单元和第三信息单元的大小之和小于所接收的数据大小的两倍。
在其他的实施例中,第一站点、第二站点和第三站点彼此相隔超过10英里,其中,第一信息单元、第二信息单元和第三信息单元被存储在不同的存储盘系统中。
在其他的实施例中,奇偶校验数据的大部分被存储在第一存储单元中,其中,相比于第二和第三存储单元可更快地访问第一存储单元。
在其他的实施例中,在第一存储单元从主机接收数据,其中,使用多路径硬件来将主机连接到第一、第二和第三存储单元。
在其他的实施例中,分布第二和第三信息单元是经由从第一存储单元向第二和第三存储单元的写入操作的,其中,从第一存储单元向第二和第三存储单元的写入操作是被并行地写入到第二和第三存储单元的全步幅的写入。
附图说明
现在参见附图,其中,在全部附图中,类似的标号表示对应的部分。
图1a图解了从主存储系统向辅助存储系统复制数据的系统的方框图;
图1b图解按照某些实施例的、用于在三个存储系统之间分布数据和奇偶校验信息的系统的方框图;
图2图解了按照某些实施例的、用于在三个存储系统之间分布数据和奇偶校验信息的第一计算环境的方框图;
图3图解了对应于第一计算环境的、按照某些实施例的、用于分布数据和奇偶校验信息的操作;
图4图解了按照某些实施例的、用于在三个存储系统之间分布数据和奇偶校验信息的第二计算环境的方框图;
图5图解了对应于第二计算环境的、按照某些实施例的、用于分布数据和奇偶校验信息的操作;
图6图解了按照某些实施例的、用于在三个存储系统之间分布数据和奇偶校验信息的第三计算环境的方框图;
图7图解了对应于第三计算环境的、按照某些实施例的、用于分布数据和奇偶校验信息的操作;
图8图解了其中实现某些实施例的系统。
具体实施方式
在下面的描述中,参考了附图,所述附图形成说明书的一部分并且图解了几个实施例。可以明白,可以使用其他的实施例,并且可以进行结构改变和操作改变。
图1图解了从一个存储系统向另一个复制数据以供故障恢复的系统的方框图。诸如主机100的服务器可以发送要写入到主存储系统102的数据,该主存储系统102耦接到辅助存储系统104。由主机100写入到主存储系统102的数据可以称为原始数据106。例如,原始数据106的大小可以是一百万亿字节(terabyte)。为了维持允许从主存储系统102中的数据丢失恢复的系统,主存储系统102可以将原始数据106复制108到辅助存储系统104。复制到辅助存储系统104的数据可以称为复制数据110。在原始数据106的任何部分丢失的情况下,可以使用复制数据110来从所述丢失恢复。如果原始数据106的大小是一百万亿字节,则复制数据110的大小可以也是一百万亿字节,从而图1中所示的系统可以使用二百万亿字节的存储来从原始数据106中的数据丢失恢复。在图1中所示的系统中,从数据丢失恢复所需的存储量是原始数据106的大小的两倍。在从主存储系统102向辅助存储系统104初始复制原始数据106后,也可以复制随后的写入。当主机100向主存储系统102上的卷(volume)写入时,主存储系统102向与主存储系统102相关联的本地存储器诸如盘写入相应的数据,并且将所述数据转发到辅助存储系统104。辅助存储系统104向与辅助存储系统104相关联的本地存储器写入所转发的数据。一旦辅助存储系统104向主存储系统102确认写入成功,则主存储系统102向主机100响应写入成功。
图1b图解了按照某些实施例的、用于在三个存储系统之间分布数据和奇偶校验信息的系统的方框图。
第一存储系统112、第二存储系统114和第三存储系统116分别耦接到第一服务器118、第二服务器120和第三服务器122。第一服务器118可以向第一存储系统112写入数据。可能必须保护所述数据以免于站点损害。在某些实施例中,数据和相关联的奇偶校验可以被存储在第一、第二、和第三存储系统112、114、116的一个或多个中。在图2-8中描述了用于在第一、第二、和第三存储系统112、114、116的一个或多个中存储数据和相关联的奇偶校验信息的某些实施例的进一步的细节。
图2图解了按照某些实施例的、用于在三个存储系统之间分布数据和奇偶校验信息的第一计算环境200的方框图。
第一存储系统202、第二存储系统204、和第三存储系统206分别耦接到第一服务器208、第二服务器210、和第三服务器212。另外,第一存储系统202耦接到第二存储系统204和第三存储系统206。存储系统202、204、206可以包括任何存储系统或者存储子系统,其中包括存储控制器、基于盘的存储器和基于磁带的存储器等。服务器208、210、212可以包括任何类型的计算设备,诸如工作站、台式计算机、膝上型电脑、大型计算机、电话设备、手提计算机等。
当执行写入操作时,第一服务器208可以向第一存储系统202发送数据214。可能必须保护数据214以免于站点损害。第一存储系统202在第一存储系统202中存储数据214的第一部分216,并且向第二存储系统204发送数据214的第二部分218以存储。第一存储系统202从第一部分216和第二部分218计算奇偶校验数据220,并且向第三存储系统206发送奇偶校验数据220以存储。在某些实施例中,在从第一存储系统202发送数据后,第一存储系统202等待来自远程的、即第二或者第三存储系统204、206之一的确认。当对应的确认从第二存储系统204或者第三存储系统206返回时,所述数据被保护,并且第一存储系统202向第一服务器208返回关于写入成功的指示。以这种方式,也可以自动地对所述写入进行负载平衡。如果到第二存储系统206的存储网络忙,则它可能不会对第一计算环境200的性能产生不利影响,这是因为第一服务器208仅仅必须等待要被确认的写入之一。
在某些实施例中,如果数据214在大小上是一百万亿字节,则数据的第一部分216可以是50万亿字节,数据的第二部分218可以是50万亿字节,以及奇偶校验数据220可以是50万亿字节。与图1——其中需要两倍的存储量来存储原始数据106以从事故恢复——相比较,在图2中图解的实施例可以需要数据214的大小的1.5倍的存储量,以从导致存储系统202、204、206的任何一个中的丢失的故障中恢复。
在某些实施例中,第一存储系统202、第二存储系统204和第三存储系统206可以在不同的站点。在某些实施例中,第一存储系统202位于第一站点,第二存储系统204位于第二站点,第三存储系统206位于第三站点,其中,第一站点、第二站点和第三站点在地理上彼此分离,并且可以在不同的城市。例如,第一、第二和第三站点可以每个彼此相隔超过10英里的距离。因为存储系统202、204、206位于不同的站点,因此,数据214的第一部分216、数据214的第二部分218和奇偶校验数据220被存储在不同的盘存储系统中。在某些实施例中,用户可以选择分离存储系统202、204、206以保护免于站点的故障,诸如自然灾难,但是,存储系统202、204、206可以总是在地理上散布。例如,存储系统202、204、206可以在同一房间内,通过防火实墙分离,并且连接到不同的电力网和自动喷水灭火系统。
在一个示例实施例中,包括本地站点和远程站点的两个站点可以相隔100km的距离。通过光纤的光的速度是大约200,000km/s。假定100km的距离,在两个站点之间的往返延迟是1微秒。示例硬盘驱动器的延迟可以是大约5毫秒。如果从/向远程站点的远程存储子系统的高速缓冲存储器读取/写入数据,则该设置的访问时间可以是所述示例硬盘驱动器的访问时间的1/5。但是,如果所述数据不在所述远程高速缓冲存储器中,则所述操作花费6毫秒而不是5毫秒,这引起20%的性能损失。在其中向第二和第三存储子系统204、206的写入并行发生的示例实施例中,写入性能可以与所述两个站点设置相同,并且读取性能可以不差于20%。在某些的替代实施例中,写入操作不是全步幅(full stride)的写入。在这种情况下,存储子系统需要读取当前数据,增加工作复制(working-copy)数据,并且在写入之前计算新的奇偶校验。在某些实施例中,可以把奇偶校验数据存储在最快访问时间的存储系统中,这是因为奇偶校验数据可能比其他数据更频繁地被访问。在另一实施例中,奇偶校验数据可以被分布在存储系统202、204、206之间。分布奇偶校验数据可以在三个存储系统之间更均等地平衡工作负载,并且可以引起在计算环境200的整体性能上的改进。
图3图解了对应于第一计算环境200的、按照某些实施例的用于分布数据和奇偶校验信息的操作。可以在第一存储系统202中实现图3中所图解的操作。
控制在块300开始,其中,第一存储系统202接收来自第一服务器208的写入数据214的请求。第一存储系统202(在块302)将所述数据划分为第一部分216和第二部分218。
第一存储系统202从数据的第一部分216和数据的第二部分218计算(在块304)奇偶校验数据220。例如,数据的第一部分216和数据的第二部分218的字节的逐位异或运算可以提供奇偶校验数据。在某些实施例中,可以以与在RAID级4中的奇偶校验数据的计算类似的方式来计算奇偶校验数据220。在替代实施例中,可以以与RAID级4中的奇偶校验数据的计算不同的方式来计算奇偶校验数据220。
控制可以从块304同时前进到块306a、306b和206c,即,可以并行执行块306a、306b、306c中所述的操作。第一存储系统202向第一存储系统202写入(在块306a)数据214的第一部分216。第一存储系统202向第二存储系统218分布(在块306b)数据214的第二部分218以存储。第二存储系统204可以接收和存储数据的第二部分218。另外,第一存储系统202向第三存储系统206分布(在块306c)奇偶校验数据220。第三存储系统206可以接收和存储奇偶校验数据220。
图3图解了其中在第一站点的第一存储单元202耦接到在第二站点的第二存储单元206和在第三站点的第三存储单元206的实施例。第一存储单元202接收数据214,并且将所接收的数据划分为第一部分216和第二部分218。第一存储单元202在第一站点的第一存储单元202中存储数据214的第一部分216。第一存储单元202向在第二站点的第二存储单元204分布所述数据的第二部分218以存储。第一存储单元202计算对应于数据214的第一部分216和数据214的第二部分218的奇偶校验数据220。第一存储单元202向在第三站点的第三存储单元204分布奇偶校验数据220以存储。
在某些实施例中,响应于在第一站点的第一存储系统202处的数据丢失,可以从存储在第二存储系统204的数据的第二部分218和存储在第三存储系统206的奇偶校验数据220恢复数据214的第一部分216。在某些实施例中,因为与其他数据相比,可能更频繁地来访问和写入奇偶校验数据220,所以第一站点和第三站点之间的距离小于第一站点和第三站点之间的距离。
在某些实施例中,数据214的第一部分216、数据214的第二部分218、和奇偶校验数据220的大小之和小于所接收的数据214的大小的两倍。在某些实施例中,数据214的第一部分216、数据214的第二部分218、奇偶校验数据220的大小之和是所接收的数据214的大小的1.5倍。在某些的替代实施例中,可以把奇偶校验数据存储在可最快访问的存储系统诸如第一存储系统202中。
图4图解了按照某些实施例的、用于在三个存储系统之间分布数据和奇偶校验信息的第二计算环境的方框图。
第一存储系统402、第二存储系统404和第三存储系统406分别耦接到第一服务器408、第二服务器410和第三服务器412。另外,第一存储系统402耦接到第二存储系统404和第三存储系统406。
第一服务器408可以经由写入请求向第一存储系统402发送数据414。可能必须保护数据414以免于站点损害。在某些实施例中,第一存储系统402从第一服务器408接收数据414,其中,数据414可以与来自第一服务器408的写入请求相关联。
第一存储系统402产生第一信息单元416、第二信息单元418和第三信息单元420,其中,第一信息单元416、第二信息单元418和第三信息单元420每个包括所接收的数据414和所计算的奇偶校验数据的一部分。每个信息单元416、418、420由一个或多个字节构成。第一存储单元402在第一站点的第一存储系统402存储第一信息单元416。第一存储单元408向在第二站点的第二存储系统204分布第二信息单元41 8以存储,以及也向第三存储系统406分布第三信息单元420以存储。
在某些实施例中,如果数据414在大小上是一百万亿字节,则第一信息单元416可以是50万亿字节,第二信息单元418可以是50万亿字节,第三信息单元420可以是50万亿字节。与图1——其中需要两倍的存储量来存储原始数据106以从故障恢复——相比较,计算环境400中所图解的实施例可以需要数据414的大小的存储量的1.5倍,以从引起存储系统402、404、406的任何一个中的丢失的故障中恢复。
在某些实施例中,第一存储系统402位于第一站点,第二存储系统404位于第二站点,第三存储系统406位于第三站点,其中,第一站点、第二站点和第三站点在地理上彼此分隔,并且可以在不同的城市。第一信息单元416、第二信息单元418和第三信息单元420可以被存储在不同的盘系统中。
图5图解了对应于第二计算环境400的、按照某些实施例的用于分布数据和奇偶校验信息的操作。可以在第一存储系统402中实现图5中所图解的操作。
控制在块500开始,其中,第一存储系统402接收来自第一服务器408的写入数据414的请求。第一存储系统402在第一信息单元416、第二信息单元418和第三信息单元420之间分配(在块502)数据414。
第一存储系统402计算和添加(在块504)奇偶校验数据到第一信息单元416、第二信息单元418、和第三信息单元420。在某些实施例中,第一存储系统402可以以与RAID级5类似的方式来计算奇偶校验信息,其中,三个信息单元416、418、420的每个包括所接收的数据414的一部分和至少一些奇偶校验数据。可以通过使用与RAID级5中所使用的那些不同的算法来执行奇偶校验数据的分配和增加。
控制可以从块504同时进行到块506a、506b和506c,即可以并行地执行块506a、506b、506c中所述的操作。第一存储系统向第一存储系统416写入(在块506a)包括对应的奇偶校验数据的第一信息单元416。同时,第一存储系统402向第二存储系统404分布(在块506b)包括对应的奇偶校验数据的第二信息单元418。另外,第一存储系统402向第三存储系统406写入包括对应的奇偶校验数据的第三信息单元420。
在提供容错的某些实施例中,与存储系统中所存储的数据对应的奇偶校验数据被存储在其他的存储系统中。例如,针对第一存储系统402中所存储的数据的奇偶校验数据被存储在第二存储系统404和第三存储系统406中,针对第二存储系统404中所存储的数据的奇偶校验数据被存储在第一存储系统402和第三存储系统406中,以及针对第三存储系统406中所存储的数据的奇偶校验数据被存储在第一存储系统402和第二存储系统404中。
在某些实施例中,在第一站点数据丢失的情况下,从第二信息单元418和第三信息单元420恢复所接收的数据414。在某些实施例中,第一信息单元416、第二信息单元418和第三信息单元420的大小之和小于所接收的数据41 4的大小的两倍。在某些实施例中,第一信息单元416、第二信息单元418和第三信息单元420被存储在不同的盘存储系统中。
图6图解了按照某些实施例的、用于在三个存储系统之间分布数据和奇偶校验信息的第三计算环境的方框图。
包括高速缓冲存储器603的第一存储系统602、第二存储系统604和第三存储系统606分别耦接到第一服务器608、第二服务器610和第三服务器612。另外,第一存储系统602耦接到第二存储系统604和第三存储系统606。在某些实施例中,第一存储系统602、第二存储系统606和第三存储系统606可以处于地理上散布的不同站点。
第一服务器608可以经由写入请求向第一存储系统602发送数据614。数据614可能必须保护以免于站点损害。第一存储系统602接收数据614,并且向高速缓冲存储器603中写入所接收的数据以暂时存储。第一存储系统602可以产生第一信息单元616、第二信息单元618和第三信息单元620,其中,第一信息单元616、第二信息单元618和第三信息单元620每个包括在高速缓冲存储器603中暂时存储的所接收的数据614和所计算的奇偶校验数据的一部分。第一存储系统602在第一站点的第一存储系统602中存储第一信息单元616。第一存储系统602经由异步传送620向在第二站点的第二存储系统604分布第二信息单元41 8以存储,并且也经由异步传送622向在第三站点的第三存储系统606分布第三信息单元620以存储。所述分布是异步的,因为所接收的数据614并不立即用于计算和分布信息单元618、620到第二存储系统604、第三存储系统606,即可以在不在三个存储单元602、604、606之间分布对应的数据的情况下完成从第一服务器608向第一存储系统602的写入操作。
图7图解了对应于第三计算环境600的、按照某些实施例的用于分布数据和奇偶校验信息的操作。可以在第一存储系统602中实现图7中所图解的操作。
控制在块700开始,其中,第一存储系统602接收来自第一服务器608的写入数据的请求。第一存储系统602向第一存储系统602的高速缓冲存储器603中写入(在块702)数据614。第一存储系统602接收对于所写入到高速缓冲存储器603的数据614的另外的更新,并且更新(在块704)所写入到高速缓冲存储器603的数据。
第一存储系统602使用高速缓冲存储器603中所存储的数据来计算(在块706)第一、第二和第三信息单元616、618、620,以在存储系统602、604、606之间分布,其中,第一、第二和第三信息单元616、618、620的每个可以包括所接收的数据614的部分、另外的更新的部分和所计算的奇偶校验数据。
控制可以从块706同时前进到块710a、710b和710c,即可以并行地执行在块710a、710b和710c中所述的操作。在从块706向710a、710b和710c控制的转移期间,第一存储系统602异步地启动数据传送操作,并且可以对相关联的数据打上时间戳(附图标号708)。
第一存储系统602向第一存储系统602写入(在块710a)写入包括对应的奇偶校验数据的第一信息单元616。同时,第一存储系统602向第二存储系统604异步地分布(在块710b)包括对应的奇偶校验数据的第二信息单元618以存储。另外,第一存储系统602向第三存储系统606分布包括对应的奇偶校验数据的第三信息单元620以存储。
通过异步地向存储系统分布数据和奇偶校验信息,所有的写入最初被写入到诸如存储系统602的本地存储系统的高速缓冲存储器。然后,当时间允许时,向其他两个存储系统分布数据。如果在把数据分布到其他两个存储子系统之前相同的数据块被更新,则仅需要发送最新的改变。不需要分布较早的改变,从而节省了带宽。而且,通过对所分布的写入打上时间戳,即使本地系统602出故障,两个远程系统604、606也一致。本地系统602可以具有与非分布式存储子系统类似的性能特性,并且同时提供了故障恢复保护。
在某些实施例中,第一服务器608可以是主计算机,并且从主机608到第一存储单元602的更新被异步地反映在第二存储单元604处,以及被异步地反映在第三存储单元606处。
在某些实施例中,其中第一存储单元602包括高速缓冲存储器603,第一存储单元602可以在第一存储单元602的高速缓冲存储器603中存储所接收的数据614。在将所接收的数据614划分为信息单元之前,第一存储单元602可以接收对于高速缓冲存储器603中所存储的数据的更新。第一存储单元602可以使用所接收的更新来更新高速缓冲存储器603,其中,分布第二信息单元618和第三信息单元620是被异步地执行的,并且其中,把第一信息单元616、第二信息单元616和第三信息单元620打上时间戳。在某些实施例中,可以在三个信息单元616、618、620之间分布奇偶校验数据,而在其他实施例中,奇偶校验数据可以驻留在单个信息单元诸如第三信息单元620中。
在某些实施例中,奇偶校验数据的大部分被存储在第一存储单元602中,其中,相比第二和第三存储单元604、606可更快地访问第一存储单元602。在某些其他实施例中,在第一存储单元从主机608接收数据614,其中,使用多路径硬件来将主机608连接到第一、第二、第三存储单元602、604、606。所有的存储单元602、604、606可以向主机608提供相同的卷。如果存储单元602、604、606之一出故障,则其他存储单元之一可以动态地重建和继续向主机提供所述该卷。结果,存储系统故障可以不破坏计算环境600的操作。
在某些实施例中,分布第二和第三信息单元618、620是经由从第一存储单元602向第二和第三存储单元604、606的写入操作进行的,并且其中,从第一存储单元602向第二和第三存储单元604、606的写入操作是被并行地写入到第二和第三存储单元604、606的全步幅的写入。
在某些实施例中,计算环境600中所执行的操作也可以在计算环境200或者400中被执行。例如,可以在计算环境200或者400中执行全步幅写入。另外,可以在计算环境200、400、600的一个或多个中执行上述的某些操作。
图1b、2-7中所述的某些实施例与其中在故障恢复站点104保持原始数据106的完全拷贝的实施例相比,降低了故障恢复所需的存储量。在某些实施例中,故障恢复所需要的存储量小于原始数据(由附图标号106、214、414表示)的大小的两倍。在某些实施例中,故障恢复所需的存储量是原始数据106、214、414的大小的1.5倍。
在替代实施例中,可以在附加的站点处添加附加的存储单元。在某些实施例中,主机208、408、608可以使用多径硬件而具有到所有的存储系统即第一、第二和第三存储系统的路径。所有的存储系统可以向主机208、408、608提供相同的卷。如果存储系统之一出故障,则没有出故障的其它存储系统之一能够动态地重建和继续向主机系统208、408、608提供相同的卷。结果,某些实施例可以从系统故障中非破坏性地(non-disruptively)恢复。
在某些实施例中,所有的写入可以是不引起RAID-5写入代价的全步幅的写入。在某些实施例中,备份和故障恢复两者都可以由所述实施例来执行。可以使用异步远程镜像来增强某些实施例的性能。所述实施例以三站点解决方案来在一个或多个地理上散布的站点中存储奇偶校验信息,以执行故障恢复。
另外的实施例细节
所述技术可以被实现为涉及软件、固件、微码、硬件和/或者其任何组合的方法、装置或者制品。这里所使用的术语“制品”指的是在电路(例如集成电路芯片、可编程门阵列(PGA)、ASIC等)和/或计算机可读介质(例如磁存储介质,诸如硬盘驱动器、软盘、磁带)、光学存储器(例如CD-ROM、DVD-ROM、光盘等)、易失性和非易失性存储器件(例如,电可擦除可编程只读存储器(EEPROM)、只读存储器(ROM)、可编程只读存储器(PROM)、随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、快闪存储器、固件、可编程逻辑等)中实现地程序指令、代码和/或逻辑。计算机可读介质中的代码可以由诸如处理器的机器访问和执行。在某些实施例中,还可以通过传输介质或者经由网络从文件服务器访问其中建立实施例的代码。在这种情况下,其中实现所述代码的制品可以包括传输介质,诸如网络传输线、无线传输媒体、通过空间传播的信号、无线电波、红外线信号等。当然,本领域内的技术人员可以认识到,可以在不脱离所述实施例的范围的情况下进行许多修改,并且制品可以包括本领域公知的任何信息承载介质。例如,制品包括其中存储了指令的存储介质,当机器执行所述指令时使得执行操作。
图8图解了其中可以实现了某些实施例的系统800的方框图。在某些实施例中,可以按照系统800来实现存储系统202、402、602。系统800可以包括电路802,其在某些实施例中可以包括处理器804。系统800也可以包括存储器806(例如易失性存储器)和存储器808。系统800的某些元件可能或可能不在存储系统202、402、602中找到。存储器808可以包括非易失性存储器(例如,EEPROM、ROM、PROM、RAM、DRAM、SRAM、快闪存储器、固件、可编程逻辑等)、磁盘驱动器、光盘驱动器、磁带驱动器等。存储器808可以包括内部存储器、附接的存储器和/或者网络可访问的存储器。系统800可以包括包含代码812的程序逻辑810,代码812可以安装到存储器806中和由处理器804或者电路802执行。在某些实施例中,包括代码812的程序逻辑810可以存储在存储器808中。在某些其他实施例中,可以在电路802中实现程序逻辑810。因此,虽然图8与其他元件分离地示出了程序逻辑810,但是可以在存储器806和/或802中实现所述程序逻辑810。
图3、5、7的至少某些操作可以并行以及顺序执行。在替代实施例中,可以以不同的顺序执行、修改和去除某些操作。
此外,为了说明以分离的模块描述了许多软件和硬件部件。这样的部件可以被集成到更少数量的组件中,或者被划分为更大数量的部件。另外,被描述为由特定部件执行的某些操作可以由其他部件执行。
在图1 a、1b、2-8中示出或者引用的数据结构和部件被描述为具有特定类型的信息。在替代实施例中,与附图中示出或者引用的相比,所述数据结构和部件可以被不同地构造,并且具有更少、更多或者不同的字段或者不同的功能。
因此,出于说明和描述的目的给出了上述的实施例的说明。其并不旨在是穷尽性的或者将所述实施例限定到所公开的精确形式。根据上述的教导,许多修改和改变是可能的。

Claims (14)

1.一种方法,包括:在第一存储单元接收数据;将所接收的数据划分为第一部分和第二部分;将所述数据的第一部分存储在第一站点的第一存储单元中;将所述数据的第二部分分布到第二站点的第二存储单元以存储;计算对应于该数据的第一部分和该数据的第二部分的奇偶校验数据;并且,将该奇偶校验数据分布到第三站点的第三存储单元以存储。
2.按照权利要求1的方法,还包括:响应于在第一站点的数据丢失,从在第二站点存储的该数据的第二部分和在第三站点存储的该奇偶校验数据来恢复该数据的第一部分。
3.按照权利要求1或者2的方法,其中,所述数据的第一部分、数据的第二部分和奇偶校验数据的大小之和小于所接收的数据大小的两倍。
4.按照权利要求3的方法,其中,所述数据的第一部分、数据的第二部分和奇偶校验数据的大小之和是所接收的数据大小的1.5倍。
5.按照权利要求1、2、3或者4的方法,其中,所述第一站点、第二站点和第三站点彼此相隔超过10英里的距离,以及其中,所述第一部分、第二部分和第三部分被存储在不同的存储盘系统中。
6.按照权利要求1-5的任何一个的方法,其中,所述第一站点和第三站点之间的距离小于第一站点和第二站点之间的距离。
7.按照权利要求1-6的任何一个的方法,其中,所述第一存储单元包括高速缓冲存储器,所述方法还包括:将所接收的数据存储在第一存储单元中的高速缓冲存储器中;在划分所接收的数据之前,接收对高速缓冲存储器中所存储的数据的更新;使用所接收的更新来更新该高速缓冲存储器,其中,分布所述数据的第二部分和奇偶校验数据是异步地执行的,以及其中,把该数据的第一部分、数据的第二部分和奇偶校验数据打上时间戳。
8.按照权利要求1-7的任何一个的方法,其中,所述第一存储单元耦接到向第一存储单元发送输入/输出请求的主机,其中,从该主机到第一存储单元的更新被异步地反映在第二存储单元处,并且被异步地反映在第三存储单元处。
9.一种方法,包括:在第一存储单元接收数据;产生第一信息单元、第二信息单元、和第三信息单元,其中,所述第一信息单元、第二信息单元、和第三信息单元每个包括所接收的数据和所计算的奇偶校验数据的一部分;将第一信息单元存储在第一站点的第一存储单元中;将第二信息单元分布到第二站点的第二存储单元以存储;以及,将第三信息单元分布到第三站点的第三存储单元以存储。
10.按照权利要求9的方法,其中,所述奇偶校验数据的大部分被存储在该第一存储单元中,以及其中,相比于第二和第三存储单元可更快地访问第一存储单元。
11.按照权利要求9或者10的方法,其中,在所述第一存储单元从主机接收数据,以及其中,使用多路径硬件来将该主机连接到该第一、第二和第三存储单元。
12.按照权利要求9、10或者11的方法,其中,分布所述第二和第三信息单元是经由从该第一存储单元向该第二和第三存储单元的写入操作的,其中,所述从该第一存储单元向该第二和第三存储单元的写入操作是被并行地写入到该第二和第三存储单元的全步幅的写入。
13.一种系统,其中,在第一站点的第一存储单元耦接到在第二站点的第二存储单元和在第三站点的第三存储单元,所述系统包括:存储器;耦接到所述存储器的电路,其中,所述电路可操作来:(i)在该第一存储单元接收数据;(ii)将所接收的数据划分为第一部分和第二部分;(iii)将所述数据的第一部分存储在第一站点的第一存储单元中;(iv)将所述数据的第二部分分布到在第二站点的第二存储单元以存储;(v)计算对应于该数据的第一部分和该数据的第二部分的奇偶校验数据;并且,(vi)将该奇偶校验数据分布到第三站点的第三存储单元以存储。
14.一种制品,其中,在第一站点的第一存储单元耦接到在第二站点的第二存储单元和在第三站点的第三存储单元,其中,所述制品能够引起操作,所述操作包括:在该第一存储单元接收数据;将所接收的数据划分为第一部分和第二部分;将所述数据的第一部分存储在第一站点的第一存储单元中;将所述数据的第二部分分布到第二站点的第二存储单元以存储;计算对应于该数据的第一部分和该数据的第二部分的奇偶校验数据;并且,将奇偶校验数据分布到第三站点的第三存储单元以存储。
CN2005800282628A 2004-08-25 2005-07-21 存储数据的方法和系统 Active CN101288052B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/925,825 US7516354B2 (en) 2004-08-25 2004-08-25 Storing parity information for data recovery
US10/925,825 2004-08-25
PCT/EP2005/053556 WO2006021474A2 (en) 2004-08-25 2005-07-21 Storing parity information for data recovery

Publications (2)

Publication Number Publication Date
CN101288052A true CN101288052A (zh) 2008-10-15
CN101288052B CN101288052B (zh) 2010-12-08

Family

ID=35709153

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2005800282628A Active CN101288052B (zh) 2004-08-25 2005-07-21 存储数据的方法和系统

Country Status (7)

Country Link
US (2) US7516354B2 (zh)
EP (1) EP1789881A2 (zh)
JP (1) JP5038897B2 (zh)
KR (1) KR101006324B1 (zh)
CN (1) CN101288052B (zh)
CA (1) CA2574502C (zh)
WO (1) WO2006021474A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102103834B (zh) * 2009-12-22 2013-10-02 上海天马微电子有限公司 驱动电路的数据维持方法和装置

Families Citing this family (97)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7934116B2 (en) * 2005-09-30 2011-04-26 Lockheed Martin Corporation Disaster recover/continuity of business adaptive solution framework
US7577868B2 (en) * 2005-09-30 2009-08-18 Lockheed Martin Corporation No data loss IT disaster recovery over extended distances
US9996413B2 (en) * 2007-10-09 2018-06-12 International Business Machines Corporation Ensuring data integrity on a dispersed storage grid
US7933987B2 (en) * 2005-09-30 2011-04-26 Lockheed Martin Corporation Application of virtual servers to high availability and disaster recovery solutions
US8239706B1 (en) * 2007-01-03 2012-08-07 Board Of Governors For Higher Education, State Of Rhode Island And Providence Plantations Data retrieval system and method that provides retrieval of data to any point in time
CN101821696B (zh) * 2007-08-28 2013-02-20 Commvault系统公司 如数据存储操作的自适应能耗管理的数据处理资源的能耗管理
US7827439B2 (en) * 2007-09-28 2010-11-02 Symantec Corporation System and method of redundantly storing and retrieving data with cooperating storage devices
US8239624B2 (en) * 2008-06-06 2012-08-07 Pivot3, Inc. Method and system for data migration in a distributed RAID implementation
WO2010049928A1 (en) * 2008-10-27 2010-05-06 Kaminario Tehnologies Ltd. System and methods for raid writing and asynchronous parity computation
US8285681B2 (en) 2009-06-30 2012-10-09 Commvault Systems, Inc. Data object store and server for a cloud storage environment, including data deduplication and data management across multiple cloud storage sites
US8639877B2 (en) * 2009-06-30 2014-01-28 International Business Machines Corporation Wear leveling of solid state disks distributed in a plurality of redundant array of independent disk ranks
US8234520B2 (en) * 2009-09-16 2012-07-31 International Business Machines Corporation Wear leveling of solid state disks based on usage information of data and parity received from a raid controller
US8103903B2 (en) * 2010-02-22 2012-01-24 International Business Machines Corporation Read-modify-write protocol for maintaining parity coherency in a write-back distributed redundancy data storage system
US8583866B2 (en) 2010-02-22 2013-11-12 International Business Machines Corporation Full-stripe-write protocol for maintaining parity coherency in a write-back distributed redundancy data storage system
US8156368B2 (en) * 2010-02-22 2012-04-10 International Business Machines Corporation Rebuilding lost data in a distributed redundancy data storage system
US8103904B2 (en) * 2010-02-22 2012-01-24 International Business Machines Corporation Read-other protocol for maintaining parity coherency in a write-back distributed redundancy data storage system
KR101128998B1 (ko) * 2010-09-15 2012-03-23 케이티하이텔 주식회사 패리티 데이터를 이용한 분산 파일 운용 방법
KR101254179B1 (ko) * 2011-02-07 2013-04-18 케이티하이텔 주식회사 분산 파일 시스템에서 효율적인 자료 복구 방법
EP2702502A4 (en) 2011-04-29 2015-06-03 Tata Consultancy Services Ltd ARCHIVING AND RECOVERY SYSTEM
GB2492981B (en) * 2011-07-18 2014-03-26 Qando Service Inc Data reconstruction
US8566673B2 (en) * 2011-08-04 2013-10-22 Lsi Corporation Method for improving performance in RAID systems
US9262496B2 (en) 2012-03-30 2016-02-16 Commvault Systems, Inc. Unified access to personal data
US8950009B2 (en) 2012-03-30 2015-02-03 Commvault Systems, Inc. Information management of data associated with multiple cloud services
US9634522B2 (en) 2012-09-19 2017-04-25 International Business Machines Corporation Power grid data monitoring and control
KR101441059B1 (ko) 2012-12-20 2014-09-25 케이티하이텔 주식회사 분산 파일 시스템에서 효율적인 자료 저장 방법
US10346259B2 (en) 2012-12-28 2019-07-09 Commvault Systems, Inc. Data recovery using a cloud-based remote data recovery center
JP6260193B2 (ja) * 2013-10-21 2018-01-17 富士通株式会社 ストレージシステム、及びストレージプログラム
WO2016051512A1 (ja) * 2014-09-30 2016-04-07 株式会社日立製作所 分散型ストレージシステム
US10346245B2 (en) * 2014-12-09 2019-07-09 Tsinghua University Data storage system and data storage method
US11108858B2 (en) 2017-03-28 2021-08-31 Commvault Systems, Inc. Archiving mail servers via a simple mail transfer protocol (SMTP) server
US11074138B2 (en) 2017-03-29 2021-07-27 Commvault Systems, Inc. Multi-streaming backup operations for mailboxes
US10552294B2 (en) 2017-03-31 2020-02-04 Commvault Systems, Inc. Management of internet of things devices
US11294786B2 (en) 2017-03-31 2022-04-05 Commvault Systems, Inc. Management of internet of things devices
US11221939B2 (en) 2017-03-31 2022-01-11 Commvault Systems, Inc. Managing data from internet of things devices in a vehicle
WO2018226227A1 (en) * 2017-06-08 2018-12-13 Hitachi Data Systems Corporation Fast recall for geographically distributed object data
US10761743B1 (en) 2017-07-17 2020-09-01 EMC IP Holding Company LLC Establishing data reliability groups within a geographically distributed data storage environment
US10817388B1 (en) 2017-07-21 2020-10-27 EMC IP Holding Company LLC Recovery of tree data in a geographically distributed environment
US10684780B1 (en) 2017-07-27 2020-06-16 EMC IP Holding Company LLC Time sensitive data convolution and de-convolution
US10880040B1 (en) 2017-10-23 2020-12-29 EMC IP Holding Company LLC Scale-out distributed erasure coding
US10382554B1 (en) 2018-01-04 2019-08-13 Emc Corporation Handling deletes with distributed erasure coding
US10817374B2 (en) 2018-04-12 2020-10-27 EMC IP Holding Company LLC Meta chunks
US10579297B2 (en) 2018-04-27 2020-03-03 EMC IP Holding Company LLC Scaling-in for geographically diverse storage
US10936196B2 (en) * 2018-06-15 2021-03-02 EMC IP Holding Company LLC Data convolution for geographically diverse storage
US11023130B2 (en) 2018-06-15 2021-06-01 EMC IP Holding Company LLC Deleting data in a geographically diverse storage construct
US10719250B2 (en) 2018-06-29 2020-07-21 EMC IP Holding Company LLC System and method for combining erasure-coded protection sets
US10891198B2 (en) 2018-07-30 2021-01-12 Commvault Systems, Inc. Storing data to cloud libraries in cloud native formats
US11436203B2 (en) 2018-11-02 2022-09-06 EMC IP Holding Company LLC Scaling out geographically diverse storage
US10901635B2 (en) 2018-12-04 2021-01-26 EMC IP Holding Company LLC Mapped redundant array of independent nodes for data storage with high performance using logical columns of the nodes with different widths and different positioning patterns
US11119683B2 (en) 2018-12-20 2021-09-14 EMC IP Holding Company LLC Logical compaction of a degraded chunk in a geographically diverse data storage system
US10931777B2 (en) 2018-12-20 2021-02-23 EMC IP Holding Company LLC Network efficient geographically diverse data storage system employing degraded chunks
US10892782B2 (en) 2018-12-21 2021-01-12 EMC IP Holding Company LLC Flexible system and method for combining erasure-coded protection sets
CN109739777B (zh) * 2018-12-25 2020-08-04 清华大学 本地与分布式协同设计的可靠闪存存储方法及系统
US11023331B2 (en) 2019-01-04 2021-06-01 EMC IP Holding Company LLC Fast recovery of data in a geographically distributed storage environment
US10768840B2 (en) 2019-01-04 2020-09-08 EMC IP Holding Company LLC Updating protection sets in a geographically distributed storage environment
US10942827B2 (en) 2019-01-22 2021-03-09 EMC IP Holding Company LLC Replication of data in a geographically distributed storage environment
US10936239B2 (en) 2019-01-29 2021-03-02 EMC IP Holding Company LLC Cluster contraction of a mapped redundant array of independent nodes
US10942825B2 (en) 2019-01-29 2021-03-09 EMC IP Holding Company LLC Mitigating real node failure in a mapped redundant array of independent nodes
US10846003B2 (en) 2019-01-29 2020-11-24 EMC IP Holding Company LLC Doubly mapped redundant array of independent nodes for data storage
US10866766B2 (en) 2019-01-29 2020-12-15 EMC IP Holding Company LLC Affinity sensitive data convolution for data storage systems
US10768971B2 (en) 2019-01-30 2020-09-08 Commvault Systems, Inc. Cross-hypervisor live mount of backed up virtual machine data
US10944826B2 (en) 2019-04-03 2021-03-09 EMC IP Holding Company LLC Selective instantiation of a storage service for a mapped redundant array of independent nodes
US11029865B2 (en) 2019-04-03 2021-06-08 EMC IP Holding Company LLC Affinity sensitive storage of data corresponding to a mapped redundant array of independent nodes
US11113146B2 (en) 2019-04-30 2021-09-07 EMC IP Holding Company LLC Chunk segment recovery via hierarchical erasure coding in a geographically diverse data storage system
US11119686B2 (en) 2019-04-30 2021-09-14 EMC IP Holding Company LLC Preservation of data during scaling of a geographically diverse data storage system
US11121727B2 (en) 2019-04-30 2021-09-14 EMC IP Holding Company LLC Adaptive data storing for data storage systems employing erasure coding
US11366723B2 (en) 2019-04-30 2022-06-21 Commvault Systems, Inc. Data storage management system for holistic protection and migration of serverless applications across multi-cloud computing environments
US11748004B2 (en) 2019-05-03 2023-09-05 EMC IP Holding Company LLC Data replication using active and passive data storage modes
US11461184B2 (en) 2019-06-17 2022-10-04 Commvault Systems, Inc. Data storage management system for protecting cloud-based data including on-demand protection, recovery, and migration of databases-as-a-service and/or serverless database management systems
US11561866B2 (en) 2019-07-10 2023-01-24 Commvault Systems, Inc. Preparing containerized applications for backup using a backup services container and a backup services container-orchestration pod
US11209996B2 (en) 2019-07-15 2021-12-28 EMC IP Holding Company LLC Mapped cluster stretching for increasing workload in a data storage system
US11023145B2 (en) 2019-07-30 2021-06-01 EMC IP Holding Company LLC Hybrid mapped clusters for data storage
US11449399B2 (en) 2019-07-30 2022-09-20 EMC IP Holding Company LLC Mitigating real node failure of a doubly mapped redundant array of independent nodes
US11228322B2 (en) 2019-09-13 2022-01-18 EMC IP Holding Company LLC Rebalancing in a geographically diverse storage system employing erasure coding
US11449248B2 (en) 2019-09-26 2022-09-20 EMC IP Holding Company LLC Mapped redundant array of independent data storage regions
KR20210050661A (ko) 2019-10-29 2021-05-10 에스케이하이닉스 주식회사 메모리 시스템, 메모리 컨트롤러 및 그 동작 방법
US11288139B2 (en) 2019-10-31 2022-03-29 EMC IP Holding Company LLC Two-step recovery employing erasure coding in a geographically diverse data storage system
US11435910B2 (en) 2019-10-31 2022-09-06 EMC IP Holding Company LLC Heterogeneous mapped redundant array of independent nodes for data storage
US11119690B2 (en) 2019-10-31 2021-09-14 EMC IP Holding Company LLC Consolidation of protection sets in a geographically diverse data storage environment
US11435957B2 (en) 2019-11-27 2022-09-06 EMC IP Holding Company LLC Selective instantiation of a storage service for a doubly mapped redundant array of independent nodes
JP2021099723A (ja) * 2019-12-23 2021-07-01 株式会社日立製作所 分散ストレージシステム、データ制御方法及び記憶媒体
US11144220B2 (en) 2019-12-24 2021-10-12 EMC IP Holding Company LLC Affinity sensitive storage of data corresponding to a doubly mapped redundant array of independent nodes
US11231860B2 (en) 2020-01-17 2022-01-25 EMC IP Holding Company LLC Doubly mapped redundant array of independent nodes for data storage with high performance
US11467753B2 (en) 2020-02-14 2022-10-11 Commvault Systems, Inc. On-demand restore of virtual machine data
US11321188B2 (en) 2020-03-02 2022-05-03 Commvault Systems, Inc. Platform-agnostic containerized application data protection
US11422900B2 (en) 2020-03-02 2022-08-23 Commvault Systems, Inc. Platform-agnostic containerized application data protection
US11442768B2 (en) 2020-03-12 2022-09-13 Commvault Systems, Inc. Cross-hypervisor live recovery of virtual machines
US11507308B2 (en) 2020-03-30 2022-11-22 EMC IP Holding Company LLC Disk access event control for mapped nodes supported by a real cluster storage system
US11500669B2 (en) 2020-05-15 2022-11-15 Commvault Systems, Inc. Live recovery of virtual machines in a public cloud computing environment
US11288229B2 (en) 2020-05-29 2022-03-29 EMC IP Holding Company LLC Verifiable intra-cluster migration for a chunk storage system
US11314687B2 (en) 2020-09-24 2022-04-26 Commvault Systems, Inc. Container data mover for migrating data between distributed data storage systems integrated with application orchestrators
US11693983B2 (en) 2020-10-28 2023-07-04 EMC IP Holding Company LLC Data protection via commutative erasure coding in a geographically diverse data storage system
KR20220067070A (ko) 2020-11-17 2022-05-24 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
US11847141B2 (en) 2021-01-19 2023-12-19 EMC IP Holding Company LLC Mapped redundant array of independent nodes employing mapped reliability groups for data storage
US11625174B2 (en) 2021-01-20 2023-04-11 EMC IP Holding Company LLC Parity allocation for a virtual redundant array of independent disks
US11604706B2 (en) 2021-02-02 2023-03-14 Commvault Systems, Inc. Back up and restore related data on different cloud storage tiers
US11354191B1 (en) 2021-05-28 2022-06-07 EMC IP Holding Company LLC Erasure coding in a large geographically diverse data storage system
US11449234B1 (en) 2021-05-28 2022-09-20 EMC IP Holding Company LLC Efficient data access operations via a mapping layer instance for a doubly mapped redundant array of independent nodes

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5544347A (en) * 1990-09-24 1996-08-06 Emc Corporation Data storage system controlled remote data mirroring with respectively maintained data indices
JPH05324579A (ja) * 1992-05-25 1993-12-07 Hitachi Ltd 分散ファイルシステム及び記憶装置
JP2888401B2 (ja) * 1992-08-03 1999-05-10 インターナショナル・ビジネス・マシーンズ・コーポレイション 冗長ディスクドライブアレイに対する同期方法
JP3183719B2 (ja) * 1992-08-26 2001-07-09 三菱電機株式会社 アレイ型記録装置
US5495607A (en) * 1993-11-15 1996-02-27 Conner Peripherals, Inc. Network management system having virtual catalog overview of files distributively stored across network domain
JPH0863298A (ja) * 1994-08-18 1996-03-08 Hitachi Ltd ディスクアレイ装置
US5745671A (en) * 1995-02-28 1998-04-28 International Business Machines Corporation Data storage system with localized XOR function
JPH09297663A (ja) * 1996-05-08 1997-11-18 Ekushingu:Kk ディスクアレイ装置
US5673382A (en) * 1996-05-30 1997-09-30 International Business Machines Corporation Automated management of off-site storage volumes for disaster recovery
US6226651B1 (en) * 1998-03-27 2001-05-01 International Business Machines Corporation Database disaster remote site recovery
US6173415B1 (en) * 1998-05-22 2001-01-09 International Business Machines Corporation System for scalable distributed data structure having scalable availability
US6178521B1 (en) * 1998-05-22 2001-01-23 Compaq Computer Corporation Method and apparatus for disaster tolerant computer system using cascaded storage controllers
JP3736134B2 (ja) * 1998-08-28 2006-01-18 日本電信電話株式会社 分散記憶方法及び分散記憶システム及び分散記憶プログラムを記録した記録媒体
JP4689137B2 (ja) * 2001-08-08 2011-05-25 株式会社日立製作所 リモートコピー制御方法、及びストレージシステム
US6389552B1 (en) * 1998-12-31 2002-05-14 At&T Corp Methods and systems for remote electronic vaulting
US6209002B1 (en) * 1999-02-17 2001-03-27 Emc Corporation Method and apparatus for cascading data through redundant data storage units
US6725392B1 (en) * 1999-03-03 2004-04-20 Adaptec, Inc. Controller fault recovery system for a distributed file system
US6553401B1 (en) * 1999-07-09 2003-04-22 Ncr Corporation System for implementing a high volume availability server cluster including both sharing volume of a mass storage on a local site and mirroring a shared volume on a remote site
US20010044879A1 (en) * 2000-02-18 2001-11-22 Moulton Gregory Hagan System and method for distributed management of data storage
US6862692B2 (en) * 2001-01-29 2005-03-01 Adaptec, Inc. Dynamic redistribution of parity groups
US20020156973A1 (en) * 2001-01-29 2002-10-24 Ulrich Thomas R. Enhanced disk array
US6961868B2 (en) * 2001-02-16 2005-11-01 Swsoft Holdings, Ltd. Fault tolerant storage system and method using a network of servers
US6985983B2 (en) * 2001-03-01 2006-01-10 Hewlett-Packard Development Company, L.P. Translating device adapter having a common command set for interfacing multiple types of redundant storage devices to a host processor
EP1390854A4 (en) * 2001-05-01 2006-02-22 Rhode Island Education DISTRIBUTED RAID AND LOCAL INDEPENDENCE CACHE SYSTEM
US7076510B2 (en) * 2001-07-12 2006-07-11 Brown William P Software raid methods and apparatuses including server usage based write delegation
US6950966B2 (en) 2001-07-17 2005-09-27 Seachange International, Inc. Data transmission from raid services
US6871263B2 (en) * 2001-08-28 2005-03-22 Sedna Patent Services, Llc Method and apparatus for striping data onto a plurality of disk drives
JP4054182B2 (ja) * 2001-09-25 2008-02-27 株式会社東芝 仮想的なraid装置を有するクラスタシステム及び同システム用のコンピュータ
US7194656B2 (en) * 2001-11-28 2007-03-20 Yottayotta Inc. Systems and methods for implementing content sensitive routing over a wide area network (WAN)
JP2003345523A (ja) * 2002-05-22 2003-12-05 Hitachi Ltd データ多重化システムの制御方法、データ多重化システム、副側記憶装置、および副側記憶装置用プログラム
JP2004139379A (ja) * 2002-10-18 2004-05-13 Jmnet Inc ネットワーク型記憶装置及びその制御装置
FR2846763B1 (fr) 2002-11-04 2005-02-11 Jean Marc Louis Olivie Alfassa Procede de stockage de donnees informatiques a dispersion/partage
US6990573B2 (en) * 2003-02-05 2006-01-24 Dell Products L.P. System and method for sharing storage to boot multiple servers
JP2005157825A (ja) * 2003-11-27 2005-06-16 Hitachi Ltd 障害復旧機能を有する計算機システム、および、障害復旧方法
US7188222B2 (en) * 2003-09-29 2007-03-06 International Business Machines Corporation Method, system, and program for mirroring data among storage sites
US7328305B2 (en) * 2003-11-03 2008-02-05 Network Appliance, Inc. Dynamic parity distribution technique
US7386663B2 (en) * 2004-05-13 2008-06-10 Cousins Robert E Transaction-based storage system and method that uses variable sized objects to store data
US7353423B2 (en) * 2004-09-24 2008-04-01 International Business Machines Corporation System and method for improving the performance of operations requiring parity reads in a storage array system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102103834B (zh) * 2009-12-22 2013-10-02 上海天马微电子有限公司 驱动电路的数据维持方法和装置

Also Published As

Publication number Publication date
US7516354B2 (en) 2009-04-07
EP1789881A2 (en) 2007-05-30
WO2006021474A3 (en) 2008-05-22
KR20070046835A (ko) 2007-05-03
US20060047896A1 (en) 2006-03-02
US20090077443A1 (en) 2009-03-19
WO2006021474A2 (en) 2006-03-02
JP5038897B2 (ja) 2012-10-03
US7761736B2 (en) 2010-07-20
CA2574502A1 (en) 2006-03-02
CN101288052B (zh) 2010-12-08
JP2008511064A (ja) 2008-04-10
CA2574502C (en) 2014-04-29
KR101006324B1 (ko) 2011-01-06

Similar Documents

Publication Publication Date Title
CN101288052B (zh) 存储数据的方法和系统
US9734027B2 (en) Synchronous mirroring in non-volatile memory systems
EP0915420A2 (en) Disk array device
EP0718766B1 (en) Method of operating a disk drive array
CN102024044B (zh) 分布式文件系统
US7069465B2 (en) Method and apparatus for reliable failover involving incomplete raid disk writes in a clustering system
US6766491B2 (en) Parity mirroring between controllers in an active-active controller pair
US7882316B2 (en) Shared data mirroring apparatus, method, and system
US8819478B1 (en) Auto-adapting multi-tier cache
US7984260B2 (en) Storage system provided with a plurality of controller modules
CN103793182A (zh) 可扩展存储保护
CN105308574A (zh) 永久主存储器的容错
CN108701005A (zh) 数据更新技术
CN103534688A (zh) 数据恢复方法、存储设备和存储系统
CN101566929B (zh) 虚拟磁盘驱动系统和方法
JP3736134B2 (ja) 分散記憶方法及び分散記憶システム及び分散記憶プログラムを記録した記録媒体
JP2011253400A (ja) 分散ミラードディスクシステム、コンピュータ装置、ミラーリング方法およびそのプログラム
WO2016122602A1 (en) Systems and methods for sharing non-volatile memory between multiple access models
US11640337B2 (en) Data recovery of distributed data using redundant codes
CN114610235A (zh) 分布式存储集群、存储引擎、两副本存储方法及设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20161019

Address after: Amsterdam

Patentee after: Hitachi Global Storage Technologies Netherlands B. V.

Address before: New York grams of Armand

Patentee before: International Business Machines Corp.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20190130

Address after: American California

Patentee after: Western Digital Technologies, Inc.

Address before: Amsterdam

Patentee before: Hitachi Global Storage Technologies Netherlands B. V.