CN1776635A - 对应用程序透明的自治可用性 - Google Patents
对应用程序透明的自治可用性 Download PDFInfo
- Publication number
- CN1776635A CN1776635A CN200510104121.1A CN200510104121A CN1776635A CN 1776635 A CN1776635 A CN 1776635A CN 200510104121 A CN200510104121 A CN 200510104121A CN 1776635 A CN1776635 A CN 1776635A
- Authority
- CN
- China
- Prior art keywords
- piece
- map information
- object block
- copy
- source
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/2053—Error 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/2094—Redundant storage or storage space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0617—Improving the reliability of storage systems in relation to availability
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1469—Backup restoration techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/2053—Error 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/2056—Error 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/2071—Error 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/2074—Asynchronous techniques
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
提供了用于定位数据的技术。提供了用于与文件相关联的块的映射信息。确定拷贝服务已经将源块拷贝到目标块。确定是否应当更新所述映射信息以便指向所述目标块。然后响应于确定应当更新所述映射信息以便指向所述目标块,提供已更新的映射信息。还提供了用于当数据的源不可访问时访问数据的拷贝的技术。确定源块不可使用。使用元数据存储中的数据,定位目标块,所述目标块是不可使用源块的拷贝。对指向源块的指示符进行转换以便指向目标块。更新一个或多个客户端计算机上的映射信息,以便访问目标块而不是源块。
Description
技术领域
本发明的实施涉及存储区域网络(SAN)知晓的文件系统上的对应用程序透明的自治可用性。
背景技术
计算机系统通常包括一个或多个用于处理数据和运行应用程序的主计算机(“主机”),用于存储数据的直接访问存储设备(DASD)和用于控制主机和DASD之间的数据传递的存储控制器。存储控制器,也被称为控制单元或存储导向器,管理着对由若干硬盘驱动器(另外被称为直接访问存储设备(DASD))组成的存储空间的访问。主机可以通过存储控制器将输入/输出(I/O)请求传递到存储空间。
存储控制器可以提供拷贝服务。采用所述的拷贝服务,一个存储设备诸如DASD上的数据,可以被拷贝到同一个或另一个存储设备,从而可以从两个不同的设备提供对数据卷的访问或实现备份拷贝。
国际商用机器公司(IBM),本专利申请的受让人,提供了用于在副存储设备上保存数据的远程拷贝的远程拷贝服务,包括扩展的远程拷贝(XRC)和对等远程拷贝(PPRC)。这些系统提供了用于恢复在最后的安全的备份和系统故障之间的数据更新的技术。这种数据投影(shadowing)系统还可以提供非恢复目的的附加的远程拷贝,诸如在远程站点处的本地访问。
拷贝服务的另一个例子是时点(point-in-time)拷贝,它涉及从源卷将所有数据物理地拷贝到目标卷,从而目标卷具有一个时间点上所述数据的拷贝。还可以通过逻辑地进行数据的拷贝,并且然后仅当必要时将数据拷贝过来进行时点拷贝,这在效果上不同于物理拷贝,并且被称为“即时虚拟拷贝”操作或“快速拷贝功能”。
即时虚拟拷贝操作通过修改元数据诸如关系表或指针以便将源数据对象既视为原始数据又视为拷贝来工作。响应主机的拷贝请求,存储子系统立即报告所述拷贝的创建而不进行数据的任何物理拷贝。仅有“虚拟”拷贝被创建,并且主机完全不知道没有附加的物理拷贝。主机或存储子系统甚至可以在后台处理过程中或在另一个时间创建原始数据对象的实际的物理拷贝。
一种这样的实时虚拟拷贝操作被称为FlashCopy操作。在共同被转让的题目为“Method,System,and Program for MaintainingElectronic Data of a Point-in-time”,发表于2003年8月26日的美国专利6,661,901中描述了FlashCopy操作的进一步的细节,此处通过参考将该专利申请完整地结合在内。
典型地,通过存储控制器提供的拷贝服务进行的文件拷贝对于主计算机来说是非中断性的。然而,恢复文件的处理(即,从备份拷贝将文件拷贝到原始(“源”)拷贝)可以是中断性的。主计算机必须知道并且保持数据将被拷贝到的位置。当使用基于块的拷贝服务时这变得特别困难,基于块的拷贝服务拷贝卷的一部分而不是数据的整个卷。即使主计算机知道所有备份拷贝在何处,文件或逻辑单元号(LUN)的恢复仍然是手工密集的过程。LUN可以被描述为一个唯一的编号,其标识着特定磁盘,并且通常被用于指称具有该LUN的磁盘。
再有,当前当存储控制器发生故障时,主计算机处的文件系统使用拷贝服务移植数据。然而,这不是一个高效的处理。
因此,在本领域中有对改进的文件访问和移植的持续需求。
发明内容
提供了用于定位数据的制品,系统和方法。提供了用于与文件相关联的块的映射信息。确定拷贝服务已经将源块拷贝到了目标块。确定是否应当更新所述的映射信息以便指示所述的目标块。然后,响应确定所述映射信息应当被更新以便指示所述的目标块,提供已更新的映射信息。
还提供了用于当数据的源不可访问时访问数据的拷贝的技术。确定源块不可使用。使用元数据存储中的数据定位作为不可使用的源块的拷贝的目标块。指向源块的指示符被转换为指向所述的目标块。映射信息被在一个或多个客户端计算机处更新以便取代所述源块访问所述目标块。
附图说明
现在参考附图,在全部图中同样的标号表示相应的部分:
图1示出了本发明的某些实施方式可以被实施在其中的计算环境;
图2示出了根据本发明的某些实施方式的客户端计算机;
图3示出了根据本发明的某些实施方式的元数据服务器;
图4示出了根据本发明的某些实施方式的元数据存储;
图5示出了根据本发明的某些实施方式的存储系统;
图6示出了根据本发明的某些实施方式的用于打开文件的处理的逻辑;
图7示出了根据本发明的某些实施方式的用于更新映射信息的逻辑;
图8示出了根据本发明的某些实施方式的用于错误处理的逻辑;
图9示出了根据本发明的某些实施方式的当存储控制器发生故障时,用于处理正在处理中的读和写请求的逻辑;
图10示出了根据本发明的某些实施方式可以被使用的计算机系统的体系结构。
具体实施方式
在下面的说明中参考了附图,所述附图构成了说明的一部分,并且示出了本发明的若干实施方式。应当理解,可以使用其它的实施方式,并且可以做出结构上的或操作上的改变而不脱离本发明的实施方式的范围。
图1以一个方框图示出了根据本发明的某些实施方式的计算环境。一个或多个客户端计算机100a...100n被通过网络170连接到元数据服务器群集130,并且被通过存储网络180连接到存储系统150。存储网络180提供了客户端计算机100a...100n和存储系统150之间的直接数据传输。
每个客户端计算机100a...100n分别包括文件系统120a...120n以及高速缓存122a...122n。客户端计算机100a...100n可以运行任何操作系统108a...108n(图2),诸如AIX操作系统,Linux操作系统,Windows2000操作系统,WindowsXP操作系统,Solaris操作系统,UNIX操作系统或HP-UX操作系统。客户端计算机100a...100n还可以被称为“存储客户端”。
文件系统120a...120n可以被称为运行某种操作系统(例如,Windows2000操作系统,WindowsXP操作系统或HP-UX操作系统)的客户端计算机上的可安装的文件系统(IFS),并且可以被称为运行其它操作系统(例如,AIX操作系统,Linux操作系统或Solaris操作系统)的客户端计算机上的虚拟文件系统(VFS)。客户端计算机100a...100n处的文件系统120a...120n可以被称为存储控制器客户端文件系统。
文件系统120a...120n将元数据操作定向到元数据服务器群集130,并且将数据操作定向到被附加在高速存储网络180的存储系统150。文件系统120a...120n使得对于客户端计算机100a...100n的操作系统以及客户端计算机100a...100n运行的任何应用程序是可见的元数据和读自本地的被局部地附加的文件系统的元数据看起来是同样的。文件系统120a...120n支持数据的锁定和缓存。
每个客户端计算机100a...100n可以包括本领域中公知的任意的计算设备,诸如服务器,大型机,工作站,个人计算机,手持计算机,膝上型电话设备,网络应用等。
元数据服务器群集130包括元数据服务器132a...132m。管理客户端计算机可以被可选择地连接到元数据服务器群集130,以便允许管理员直接向一个或多个元数据服务器132a...132m发送命令。每个元数据服务器132a...132m实现了一种SAN文件系统目录,所述的SAN文件系统目录存储着文件和存储设备上构成所述文件的源块之间的映射。所述的映射被存储在元数据存储140中。
元数据存储被连接到存储网络180。元数据服务器132a...132m维护元数据存储140中的数据,包括例如,数据在存储系统150内的位置和数据被各个客户端计算机100a...100n访问的频率如何。
存储系统150包括一个或多个存储控制器152a...152q,并且包括用于存储数据(例如,文件)的共享的存储池154。虽然示出了一个存储系统150,但是可以有多个存储系统被连接到存储网络180。
SAN可以被描述为共享的存储设备的高速子网络。存储设备可以被描述为能够存储数据的任意组件。多个元数据服务器132a...132m可以访问存储系统150中的存储设备。SAN知晓的文件系统可以被描述为包括元数据服务器群集130,元数据存储140,存储系统150,存储网络180和虚拟的并且可安装的文件系统120a...120n。因此,在图1中在组环境中示出了统一的文件系统。
每个网络170和180可以包括任意类型的网络,诸如,例如,存储区域网络(SAN),局域网(LAN),广域网(WAN),因特网,内联网等。
图2示出了根据本发明的某个实施方式的客户端计算机100a...100n。每个客户端计算机100a...100n包括一个或多个中央处理单元(CPU)102a...102n,以及系统存储器104a...104n,所述的系统存储器可以被以易失的和/或非易失设备实现。一个或多个客户端应用程序106a...106n,操作系统108a...108n以及一个或多个错误恢复系统112a...112n可以被存储在系统存储器104a中。操作系统108a...108n可以包括一个或多个设备驱动器110a...110n。当将指示符从一组块转换到另一组(例如,从源块到目标块)以便确保数据一致转换时,可以使用错误恢复系统112a...112n和设备驱动器110a...110n。由于I/O可以发生在连续的流中,元数据服务器132a...132m和/或拷贝服务158a...158q(图5)可以在所述块被转换到新块以便使用新块时,指示存储控制器152a...152q返回错误指示。这将使得错误恢复系统112a...112n和/或设备驱动器110a...110n执行重试操作,并且作为重试操作的一部分,更新局部(虚拟)块地址到物理存储的映射。然后接下来的I/O发生所述数据的新的位置上。
在常规的I/O系统中,当检测到永久错误时,设备驱动器110a...110n和/或错误恢复系统112a...112n向请求程序返回错误指示。这通常导致应用程序的非正常终止,应用程序的非正常终止将导致应用的运行中断。在本发明的实施方式中,错误恢复系统112a...112n执行附加的处理。特别是,最初,从执行I/O操作的设备返回一个错误。错误恢复系统112a...112n确定所述设备是否是由SAN知晓的文件系统管理的虚拟设备。如果所述虚拟设备不是被SAN知晓的文件系统管理的,所述的错误被返回给I/O请求活动。如果所述虚拟设备是被SAN知晓的文件系统管理的,错误恢复系统112a...112n通知元数据服务器132a...132m或通知客户端计算机100a...100n,然后客户端计算机100a...100n通知元数据服务器132a...132m发生了错误。错误恢复系统112a...112n等待做出重定向I/O的策略决定。元数据服务器132a...132m(或其它的策略引擎)确定是否转换数据的指示符,转换到什么数据,并且执行所述的转换操作。客户端计算机100a...100n被以新的映射更新,并且通知错误恢复系统112a...112n它的等待结束了。如果数据被重新映射,错误恢复系统112a...112n使用新的地址重试操作。如果数据没有被重新映射,错误恢复系统112a...112n返回一个错误。在可替换的实现中,客户端计算机100a...100n可以知道数据的新拷贝是可写的还是不可写的,并且如果所述的请求是针对写的,并且所述数据被重新映射到只读的位置,错误恢复系统112a...112n可以报告一个错误。
图3示出了根据本发明的某种实施方式的元数据服务器132a...132m。每个元数据服务器132a...132m包括系统存储器134a...134m,所述的系统存储器可以被以易失的和/或非易失设备实现。每个元数据服务器132a...132m包括数据管理器136a...136m以及一个或多个服务器应用程序138a...138m。
每个元数据服务器132a...132m可以追踪对数据源块和所述数据源块的拷贝的多个引用。为了便于引用,数据源块的拷贝将被称为“目标块”。一组相关的源块可以被描述为一个数据单元(例如,文件)。每个元数据服务器132a...132m还追踪每个客户端计算机100a...100n的位置。
每个元数据服务器132a...132m通过存储文件和构成所述文件的源以及目标块之间的映射,起用于SAN知晓的文件系统的目录的作用。每个元数据服务器132a...132m还与(例如)由存储系统150提供的拷贝服务158a...158q(图5)一起工作。所述的拷贝服务允许基于策略的拷贝服务,诸如时点拷贝服务,连续拷贝服务等。每个元数据服务器132a...132m可以与其它的应用程序或SAN元件一起工作以便执行所述的拷贝服务。即,可以各种形式提供所述的拷贝服务,诸如以在服务器计算机上或SAN结构元件内执行的应用程序的形式。
当数据被通过所述的拷贝服务拷贝时,不论拷贝服务(例如,时点拷贝服务或连续拷贝服务)的类型是什么,每个元数据服务器132a...132m追踪源块和这些块的拷贝之间的关系。此外,每个元数据服务器132a...132m能够将对文件的块引用从所述的源块转换到所述源块的拷贝(例如,“目标块”),这使得所述目标块成为新的源块。
图4示出了根据本发明的某些实施方式的元数据存储140。元数据存储140包括映射信息142。映射信息包括具有与文件相关联的行的表。对于每个文件,所述的映射信息包括文件名,源块,它指示着该文件的源块的位置,1-X个目标块和会话标识符。1-X目标块表示源块的一个或多个拷贝,并提供源块的拷贝的位置。一个会话是一组拷贝服务关系,它们表示一组数据被保持为一致的状态。文件的每个目标拷贝(由目标块构成)可以共享一个会话或者具有其自己的会话。此外,元数据存储140可以存储描述数据单元的位置、每个数据单元被每个客户端计算机100a...100n访问的频率如何等的信息。
图5示出了按照本发明的某些实施方式的存储系统150。存储系统150提供一个或多个存储控制器152a...152q以及共享的存储池154。每个存储控制器152a...152q提供了拷贝服务158a...158q。每个共享的存储池156a...156q提供了共享的存储设备。在某些实施方式中,存储设备(例如LUN)被分组到所述存储池中,以便允许基于服务种类属性(诸如性能和可靠性)的基于策略的管理。在某些实施方式中,每个存储控制器152a...152q被连接到存储池或存储池中的一个或多个存储设备(例如LUN)。存储池156a...156q中的每一个都可以包括,例如,存储设备的阵列,诸如直接访问存储设备(DASD)、硬盘捆绑(JBOD)、独立磁盘冗余阵列(RAID)、虚拟化设备等。
图6示出了按照本发明的某些实施方式的用于处理打开文件的逻辑。控制开始于方框600,客户端计算机100a...100n上的应用程序106a...106n在打开文件时向元数据服务器132a...132m发送对文件的请求。在方框602,元数据服务器132a...132m上的数据管理器136a...136m基于一种或多种因素确定用于所述文件的哪些块应当成为客户端计算机100a...100n可用的。例如,用于所述文件的块可以是源块或目标块。所述的块可以基于它们相对于客户端计算机100a...100n的位置,基于客户端计算机100a...100n与存储系统150的连接,基于哪些块最少被其它客户端计算机100a...100n引用,基于读/写访问模式,基于可靠性要求等等被选择。
在方框604,元数据服务器132a...132m上的数据管理器136a...136m向客户端计算机100a...100n发送映射信息。在某些实施方式中,所述映射信息提供了所述块的间接指针。在方框606,客户端计算机100a...100n上的应用程序106a...106n使用所述映射信息确定文件的块的位置并且访问所述块。
图7示出了按照本发明的某些实施方式的用于更新映射信息的逻辑。控制开始于方框700,拷贝服务158a...158q将数据的源块拷贝到目标块。在方框702,元数据服务器132a...132m上的数据管理器136a...136m为所述源块以所述目标块的位置更新元数据存储140。在方框704,元数据服务器132a...132m上的数据管理器136a...136m确定哪些(如果有的话)客户端计算机100a...100n应当被发送新拷贝的目标块的已更新的映射信息。例如,如果客户端计算机100a接收到用于与FILEA相关联的第一组目标块的映射信息,但是同样与FILEA相关联的新创建的目标块被确定为对于客户端计算机100a是“更可用”的一组块,那么元数据服务器132a...132m上的数据管理器136a...136m就为新拷贝的目标块向计算机100a发送已更新的映射信息。一组“更可用的”块可以被描述为是一组不像别的块组那样经常被访问的块。
在方框706,元数据服务器132a...132m上的数据管理器136a...136m以已更新的映射信息更新适当的客户端计算机100a...100n的高速缓存。在方框708,客户端计算机100a...100n上的应用程序106a...106n在希望进行下一次访问时使用已更新的映射信息访问文件的块。因此,以图6和图7所述的处理,在打开文件时,客户端计算机100a...100n对元数据服务器132a...132m进行一次访问,以便获得用于该文件的块的映射信息。然后,元数据服务器132a...132m基于对新创建的目标拷贝是否是客户端计算机100a...100n的更好的匹配的确定,自动更新映射信息。
在正常文件系统操作期间,如果对于一个文件数据的连续拷贝是适合的,则可以发出创建文件的块的连续拷贝的请求。可以由,例如,元数据服务器132a...132m基于文件系统等级上的拷贝策略通过利用管理客户端计算机190插入用户指定的请求发出所述请求,或者由应用程序106a发出所述请求。元数据服务器132a...132m可以在元数据存储140中记录该文件的目标块的位置。一旦进行了所述文件的块的拷贝,则在对源块进行更新时,可以对所述目标块进行更新。接着,SAN知晓的文件系统可以在源块和目标块之间转换而不影响任何应用程序。
图8示出了按照本发明的某些实施方式的用于错误处理的逻辑。在正常系统操作期间,在SAN知晓的文件系统中可能会出错,从而用于文件的源块不再能访问。本发明的实施方式自动地解决了这个问题。在图8中,控制开始于方框800,确定一个存储控制器152a...152q发生了故障。在某些实施方式中,当被提交给存储控制器152a...152q的请求未被处理(例如,在某个时间段内)时,应用程序106a...106n和/或客户端计算机100a...100n确定一个存储控制器152a...152q发生了故障。在某些实施方式中,可选择地,应用程序106a...106n和/或客户端计算机100a...100n向存储控制器152a...152q重新提交所述请求。
在方框802,将存储控制器152a...152q的故障通知给元数据服务器132a...132m上的数据位置管理器136a...136m。例如,所述通知可以来自应用程序106a...106n和/或客户端计算机100a...100n。当存储控制器152a...152q发生故障时,通过存储控制器152a...152q被访问的源块可以不再是可访问的。在方框804,元数据服务器132a...132m上的数据位置管理器136a...136m使用一种或多种策略确定将指向不可访问的源块的指示符转换到可访问的目标块是否适合。这些策略被用于确定何时适合于将指示符从初始的源块转向目标块,使所述目标块成为新的源块。这种策略的一个例子是:“如果被包含在这个数据所属的会话中的所有数据都是一致的,那么转换所述块的指示符,并且透明地恢复所述数据;如果所述数据不一致,那么不转换所述指示符,并且允许进行常规的错误处理。”
在方框806,如果确定适合于转换指示符,则处理以方框808继续,否则,进行处理。在方框808,元数据服务器132a...132m上的数据位置管理器136a...136m使用元数据存储140为每组不可访问的源块定位目标块。当有多于一组的目标块可以用于一组不可访问的源块时,元数据服务器132a...132m上的数据位置管理器136a...136m基于一种或多种策略选择一组目标块。这种策略的一个例子是:“如果初始的源块是被使用连续拷贝服务被拷贝,则转换打到也能够被连续拷贝的一组目标块。”这种策略的另一个例子是:“转换到物理上最接近将处理恢复的数据的应用服务器的目标块。”这种策略的又一例子是:“转换到所述数据的可靠性最高的拷贝”。
在方框810,元数据服务器132a...132m上的数据位置管理器136a...136m识别出拷贝关系被在不可访问的源块和已定位目标块之间挂起。在方框812,元数据服务器132a...132m上的数据位置管理器136a...136m将指示符从不可访问源块转换为指向已定位目标块,使目标块成为“新的源块”。在方框814,元数据服务器132a...132m上的数据位置管理器136a...136m更新元数据存储140。例如,为其块在发生故障的存储控制器152a...152q的存储(例如LUN)上的每个文件更新映射信息142,从而指向这些文件的初始源块的指示符被设置为指向新的源块。再有,在映射信息142中所述新的源块不再被看作是目标块。
在方框816,元数据服务器132a...132m上的数据位置管理器136a...136m以已更新的映射信息更新适当的客户端计算机的高速缓存。例如,如果客户端计算机100a具有变得不可访问的源块的映射信息,则元数据服务器132a...132m将为客户端计算机100a更新高速缓存,以便作为替换访问已定位的目标块(也被称作“新的源块”)。
在方框818,其高速缓存已被更新的客户端计算机100a...100n上的应用程序106a...106n在它的下面的块访问时使用所述已更新的映射信息。此外,在方框820,数据位置管理器136a...136m使用拷贝服务158a...158q进行已定位目标块(“新的源块”)的拷贝。在某些实施方式中,如果存在不可访问的源块的组的多于一组的目标块,则可以不进行已定位目标块的拷贝。
图9示出了按照本发明的某些实施方式的用于当存储控制器152a...152q出现故障时处理正在处理中的读和写请求的逻辑。控制开始于方框900,在已经转换了指示符(图8的方框812)之后,元数据服务器132a...132m上的数据位置管理器136a...136m使正在处理中的读请求重定向到新的源块。在方框902,元数据服务器132a...132m上的数据位置管理器136a...136m冻结向存储控制器152a...152q的写。在方框904,元数据服务器132a...132m上的数据管理器136a...136m将写请求重定向到新的源块(即,在图8的方框808中定位的目标块)。
因此,当客户端计算机100a...100n请求文件时,元数据服务器132a...132m上的数据管理器136a...136m为优先选择的块组(例如,源块或目标块)将映射信息发送给客户端计算机100a...100n。以这种方式,元数据服务器132a...132m上的数据管理器136a...136m能够基于各种因素提供具有最高可用性的块。
此外,某些实施方式使用SAN知晓的文件系统及其能力,利用编目工具(例如元数据服务器)跟踪文件的源块和目标块的位置。尤其是,SAN知晓的文件系统能够随着文件的源块的拷贝跟踪文件的源块。此外,通过将引用从源块改变到目标(“拷贝”)块组,并且通过使所述目标块成为新的源块,SAN知晓的文件系统能够以预先拷贝或同步拷贝来替代文件。对于客户端计算机100a...100n上的应用程序而言,这种改变是透明的。
而且,所述的实施方式使用SAN知晓的文件系统中所提供的拷贝服务能力迅速而有效地移植数据。在某些实施方式中,底层的SAN硬件和SAN知晓的文件系统的拷贝服务软件被用于从一个存储控制器向另一个存储控制器移植数据,以进行快速数据移植。
IBM和AIX是国际商用公司在美国和/或其它国家中的注册商标或普通法标志(common law mark)。Windows是微软公司在美国和/或其它国家中的注册商标。Solaris是Sun Microsystems在美国和/或其它国家中的注册商标或普通法标志。Linux是Linus Torvalds在美国和/或其它国家中的注册商标。HP-UX是美国和/或其它国家中的一种Open Group UNIX 95的品牌产品。UNIX是Open Group在美国和/或其它国家中的注册商标或普通法标志。
附加实施方式的细节
所述的实施方式可以被利用编程和/或工程技术生产软件、固件、硬件或其任意组合,实现为方法、装置或制品。此处所使用的术语“制品”和“电路”是指在硬件逻辑(例如,集成电路芯片、可编程门阵列(PGA)、特定用途集成电路(ASIC)等)或计算机可读介质中实现的状态机、代码或逻辑,所述计算机可读介质诸如磁存储介质(例如,硬盘驱动器、软盘、磁带等)、光学存储(CD-ROM、光盘等)、易失性和非易失性存储器设备(例如EEPROM、ROM、PROM、RAM、DRAM、SRAM、固件、可编程逻辑等)。计算机可读介质中的代码可以被处理器访问和执行。当代码或逻辑被处理器执行时,所述电路可以包括包含所述代码或逻辑的介质以及处理器,所述处理器执行从所述介质上载入的代码。所述代码(以所述代码实现了本发明的实施方式)还可以通过传输介质或者通过网络从服务器被访问。在这样的情况下,所述的制品(其中实现了所述的代码)可以包括传输介质,诸如网络传输线,无线传输介质,通过空间、无线电波、红外信号等传播的信号。因此,“制品”可以包括其中包含了所述代码的介质。此外,“制品”可以包括软件和硬件组件的组合,其中,所述代码被包含、处理和执行。当然,本领域技术人员将会认识到,可以对这种结构进行许多修改,并且制品可以包括本领域公知的任意信息承载介质。
图6-9的逻辑描述了以特定顺序出现的特定操作。在替换实施方式中,某些逻辑操作可以以不同的顺序执行、修改或删除。而且,可以向以上所述的逻辑添加操作,并且仍然符合所述的实施方式。还有,此处所述的操作可以顺序地发生,或者某些操作可以被并行处理,或者被描述为由单个处理执行的操作可以由分布式的处理执行。
图6-9示出的逻辑可以用软件、硬件、可编程和不可编程门阵列逻辑或者以硬件、软件、或门阵列逻辑的某些组合实现。
图10示出了按照本发明的某些实施方式可以被使用的计算机系统的体系结构1000。客户端计算机、服务器计算机、存储控制器和/或管理员客户端计算机可以实现计算机结构1000。计算机结构1000可以实现处理器1002(例如,微处理器)、存储器1004(例如,易失性存储器设备)以及存储1010(例如,非易失性存储区,诸如磁盘驱动器、光盘驱动器、磁带驱动器等)。操作系统1005可以在存储器1004中执行。存储1010可以包括内部存储设备、或者附加的或可通过网络访问的存储。存储1010中的计算机程序1006可以被以本领域公知的方式载入到存储器1004中,并且由处理器1002执行。所述体系结构还包括网卡1008,以便能够与网络进行通信。输入设备1012被用于向处理器1002提供用户输入,并且可以包括键盘、鼠标、输入笔、麦克风、触敏显示屏、或者本领域公知的其它任意的激活或输入机制。输出设备1014能够呈现出来自处理器1002或者其它组件诸如显示监视器、打印机、存储等的信息。计算机系统的计算机体系结构1000可以包括比示出的更少的组件、此处未示出的附加组件、或者所示组件和附加组件的某种组合。
计算机体系结构1000可以包括本领域公知的任意计算设备,诸如大型机、服务器、个人计算机、工作站、膝上型电脑、手持型计算机、电话设备、网络设备、虚拟设备、存储控制器等。可以使用本领域公知的任意处理器1002和操作系统1005。
出于示例和说明的目的给出了本发明的实施方式的上述说明。其并不意味着是穷尽的,也不意味着将本发明的实施方式限定为所公开的精确形式。根据以上教导,能够进行许多修改和变化。本发明的实施方式的范围不打算由这种详细的说明来限定,而是由所附的权利要求来限定。以上的说明、例子和数据提供了本发明的实施方式的构成的制造和使用的完整说明。因为在不脱离本发明的实施方式的精神和范围的情况下能够做出本发明的许多实现方案,本发明的这些实现方案属于下面所附的权利要求或者任意的随后提交的权利要求及其等效物的范围内。
Claims (40)
1.一种制品,包括用于定位数据的程序逻辑,其中所述程序逻辑使得操作被执行,所述操作包括:
提供用于与文件相关联的块的映射信息;
确定拷贝服务已经将源块拷贝到目标块;
确定是否应当更新所述映射信息以便指向所述目标块;以及
响应于确定应当更新所述映射信息以便指向所述目标块,提供已更新的映射信息。
2.根据权利要求1的制品,其中所述操作还包括:
以所述目标块的位置更新元数据存储。
3.根据权利要求1的制品,其中所述操作还包括:
当文件被打开时,接收对用于该文件的块的位置的请求;
响应该请求,确定应当使与文件相关联的哪些块可用;以及
发送用于被确定的块的映射信息。
4.根据权利要求3的制品,其中所述操作还包括:
基于所述块的可用性,确定应当使哪些所述块可用。
5.根据权利要求1的制品,其中响应于对映射信息的请求,将映射信息发送到客户端计算机,并且其中所述客户端计算机使用所述映射信息访问该文件。
6.根据权利要求1的制品,其中已更新的映射信息被自动发送到客户端计算机,并且其中所述客户端计算机使用已更新的映射信息访问该文件。
7.一种制品,包括当数据的源不可访问时用于访问数据的拷贝的程序逻辑,其中所述程序逻辑使得操作被执行,所述操作包括:
确定源块不可使用;
使用元数据存储中的数据,定位目标块,所述目标块是不可使用源块的拷贝;
对指向源块的指示符进行转换以便指向所述目标块;以及
更新一个或多个客户端计算机上的映射信息,以便访问所述目标块而不是所述源块。
8.根据权利要求7的制品,其中所述操作还包括:
利用一种或多种策略,确定将指向所述源块的指示符转换为指向所述目标块是否适合。
9.根据权利要求7的制品,其中由于存储控制器的故障,源块成为是不可使用的。
10.根据权利要求7的制品,其中当所述源块成为不可使用时,所述目标块与所述源块已经处于被挂起的连续拷贝关系。
11.根据权利要求7的制品,其中所述操作还包括:
创建所述目标块的拷贝。
12.根据权利要求7的制品,其中在被SAN知晓的文件系统管理的虚拟设备上源块是不可使用的,并且其中所述操作还包括:
确定访问所述源块的I/O操作已经失败;以及
响应更新映射信息,通过访问所述目标块重试所述I/O操作。
13.一种用于定位数据的方法,包括:
提供用于与文件相关联的块的映射信息;
确定拷贝服务已经将源块拷贝到目标块;
确定是否应当更新所述映射信息以便指向所述目标块;以及
响应于确定应当更新所述映射信息以便指向所述目标块,提供已更新的映射信息。
14.根据权利要求13的方法,还包括:
以所述目标块的位置更新元数据存储。
15.根据权利要求13的方法,还包括:
当文件被打开时,接收对用于该文件的块的位置的请求;
响应该请求,确定应当使与文件相关联的哪些块可用;以及
发送用于被确定的块的映射信息。
16.根据权利要求15的方法,还包括:
基于所述块的可用性,确定应当使哪些所述块可用。
17.根据权利要求13的方法,其中响应对所述映射信息的请求,所述映射信息被发送到客户端计算机,并且其中所述客户端计算机使用所述的映射信息访问该文件。
18.根据权利要求13的方法,其中所述已更新的映射信息被自动发送到客户端计算机,并且其中所述客户端计算机使用所述已更新的映射信息访问该文件。
19.一种用于当数据的源不可访问时访问数据的拷贝的方法,包括:
确定源块不可使用;
使用元数据存储中的数据,定位目标块,所述目标块是所述不可使用的源块的拷贝;
对指向所述源块的指示符进行转换以便指向所述目标块;以及
更新一个或多个客户端计算机上的映射信息,以便访问所述目标块而不是所述源块。
20.根据权利要求19的方法,还包括:
利用一种或多种策略,确定将指向所述源块的指示符转换为指向所述目标块是否适合。
21.根据权利要求19的方法,其中由于存储控制器的故障所述源块不可使用。
22.根据权利要求19的方法,其中当源块成为不可使用的时,所述目标块与所述源块已经处于被挂起的连续拷贝关系。
23.根据权利要求19的方法,还包括:
创建所述目标块的拷贝。
24.根据权利要求19的方法,其中在被SAN知晓的文件系统管理的虚拟设备上源块是不可使用的,并且所述方法还包括:
确定访问所述源块的I/O操作已经失败;以及
响应更新映射信息,通过访问所述目标块重试所述I/O操作。
25.一种用于定位数据的系统,包括:
能够使操作被执行的电路,所述操作包括:
提供用于与文件相关联的块的映射信息;
确定拷贝服务已经将源块拷贝到目标块;
确定是否应当更新所述映射信息以便指向所述目标块;以及
响应于确定应当更新所述映射信息以便指向所述目标块,提供已更新的映射信息。
26.根据权利要求25的系统,其中所述操作还包括:
以所述目标块的位置更新元数据存储。
27.根据权利要求25的系统,其中所述操作还包括:
当文件被打开时,接收对用于该文件的块的位置的请求;
响应该请求,确定应当使与文件相关联的哪些块可用;以及
发送用于被确定的块的映射信息。
28.根据权利要求27的系统,其中所述操作还包括:
基于所述块的可用性,确定应当使哪些所述块可用。
29.根据权利要求25的系统,其中响应对所述映射信息的请求,所述映射信息被发送到客户端计算机,并且其中所述客户端计算机使用所述的映射信息访问该文件。
30.根据权利要求25的系统,其中所述已更新的映射信息被自动发送到客户端计算机,并且其中所述客户端计算机使用所述已更新的映射信息访问该文件。
31.一种用于当数据的源不可访问时访问数据的拷贝的系统,包括:
能够使操作被执行的电路,所述操作包括:
确定源块不可使用;
使用元数据存储中的数据,定位目标块,所述目标块是所述不可使用的源块的拷贝;
对指向所述源块的指示符进行转换以便指向所述目标块;以及
更新一个或多个客户端计算机上的映射信息,以便访问所述目标块而不是所述源块。
32.根据权利要求31的系统,其中所述操作还包括:
利用一种或多种策略,确定对指向所述源块的指示符进行转换以便指向所述目标块是否适合。
33.根据权利要求31的系统,其中由于存储控制器的故障,所述源块不可使用。
34.根据权利要求31的系统,其中当所述源块成为是不可使用的时,所述目标块与所述源块已经处于被挂起的连续拷贝关系。
35.根据权利要求31的系统,其中所述操作还包括:
创建所述目标块的拷贝。
36.根据权利要求31的系统,其中在被SAN知晓的文件系统管理的虚拟设备上源块是不可使用的,并且其中所述操作还包括:
确定访问所述源块的I/O操作已经失败;以及
响应更新映射信息,通过访问所述目标块重试所述I/O操作。
37.一种用于定位数据的系统,包括:
用于提供用于与文件相关联的块的映射信息的装置;
用于确定拷贝服务已经将源块拷贝到目标块的装置;
用于确定是否应当更新所述映射信息以便指向所述目标块的装置;以及
用于响应于确定应当更新所述映射信息以便指向所述目标块,提供已更新的映射信息的装置。
38.根据权利要求37的系统,还包括:
用于以所述目标块的位置更新元数据存储的装置。
39.一种用于当数据的源不可访问时访问数据的拷贝的系统,包括:
用于确定源块不可使用的装置;
用于使用元数据存储中的数据,定位目标块的装置,所述目标块是所述不可使用的源块的拷贝;
用于对指向所述源块的指示符进行转换以便指向所述目标块的装置;以及
用于更新一个或多个客户端计算机上的映射信息,以便访问所述目标块而不是所述源块的装置。
40.根据权利要求39的系统,还包括:
用于利用一种或多种策略,确定对指向所述源块的指示符进行转换以便指向所述目标块是否适合的装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/994,149 US7383406B2 (en) | 2004-11-19 | 2004-11-19 | Application transparent autonomic availability on a storage area network aware file system |
US10/994,149 | 2004-11-19 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1776635A true CN1776635A (zh) | 2006-05-24 |
CN100403268C CN100403268C (zh) | 2008-07-16 |
Family
ID=36462225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005101041211A Expired - Fee Related CN100403268C (zh) | 2004-11-19 | 2005-09-19 | 对应用程序透明的自治可用性 |
Country Status (2)
Country | Link |
---|---|
US (2) | US7383406B2 (zh) |
CN (1) | CN100403268C (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102087645A (zh) * | 2009-12-03 | 2011-06-08 | 北大方正集团有限公司 | 稿件分发的方法和系统 |
CN102150144A (zh) * | 2009-01-23 | 2011-08-10 | Lsi公司 | 使用写入配置快照的动态存储分层的方法和系统 |
CN102272742A (zh) * | 2009-01-29 | 2011-12-07 | Lsi公司 | 为卷提供动态存储分级的在线数据放置的写时分配快照机制 |
CN102915260A (zh) * | 2012-09-17 | 2013-02-06 | 记忆科技(深圳)有限公司 | 固态硬盘容错的方法及其固态硬盘 |
WO2014190501A1 (zh) * | 2013-05-29 | 2014-12-04 | 华为技术有限公司 | 数据恢复方法、存储设备和存储系统 |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7457930B2 (en) | 2004-11-19 | 2008-11-25 | International Business Machines Corporation | Method for application transparent autonomic data replication improving access performance for a storage area network aware file system |
US7464124B2 (en) * | 2004-11-19 | 2008-12-09 | International Business Machines Corporation | Method for autonomic data caching and copying on a storage area network aware file system using copy services |
US7870353B2 (en) * | 2005-08-15 | 2011-01-11 | International Business Machines Corporation | Copying storage units and related metadata to storage |
US7730351B2 (en) * | 2006-05-15 | 2010-06-01 | Oracle America, Inc. | Per file dirty region logging |
GB2446199A (en) | 2006-12-01 | 2008-08-06 | David Irvine | Secure, decentralised and anonymous peer-to-peer network |
KR100922584B1 (ko) * | 2006-12-01 | 2009-10-21 | 한국전자통신연구원 | 객체 기반 분산 공유 시스템 및 그의 방법 |
US8245217B2 (en) * | 2007-10-12 | 2012-08-14 | Microsoft Corporation | Management of software and operating system updates required for the process of creating a virtual machine facsimile of an existing physical or virtual machine |
US20100083381A1 (en) * | 2008-09-30 | 2010-04-01 | Khosravi Hormuzd M | Hardware-based anti-virus scan service |
US20100162032A1 (en) * | 2008-12-23 | 2010-06-24 | David Dodgson | Storage availability using cryptographic splitting |
KR101453425B1 (ko) | 2008-12-18 | 2014-10-23 | 한국전자통신연구원 | 메타데이터 서버 및 메타데이터 관리 방법 |
JP5508798B2 (ja) * | 2009-09-29 | 2014-06-04 | 株式会社日立製作所 | クラスタを考慮してレプリケーションを管理する管理方法及びシステム |
US8290994B2 (en) | 2010-05-05 | 2012-10-16 | International Business Machines Corporation | Obtaining file system view in block-level data storage systems |
US8468385B1 (en) * | 2010-10-27 | 2013-06-18 | Netapp, Inc. | Method and system for handling error events |
US20130166670A1 (en) * | 2011-12-21 | 2013-06-27 | James George Wayda | Networked storage system and method including private data network |
CN105100136A (zh) * | 2014-04-29 | 2015-11-25 | 国际商业机器公司 | 用于访问存储集群中的逻辑存储的方法和装置 |
CN105446913B (zh) * | 2014-09-29 | 2018-08-14 | 华为数字技术(成都)有限公司 | 一种数据访问方法及装置 |
Family Cites Families (68)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5077736A (en) | 1988-06-28 | 1991-12-31 | Storage Technology Corporation | Disk drive memory |
US5544347A (en) | 1990-09-24 | 1996-08-06 | Emc Corporation | Data storage system controlled remote data mirroring with respectively maintained data indices |
US5155835A (en) | 1990-11-19 | 1992-10-13 | Storage Technology Corporation | Multilevel, hierarchical, dynamically mapped data storage subsystem |
AU661680B2 (en) | 1991-02-06 | 1995-08-03 | Storage Technology Corporation | Disk drive array memory system using nonuniform disk drives |
JPH04310188A (ja) | 1991-03-01 | 1992-11-02 | Internatl Business Mach Corp <Ibm> | 文書/画像ライブラリのためのライブラリサービス方法 |
DE69119222T2 (de) | 1991-06-04 | 1996-11-21 | Ibm | Datensicherung und Beseitigung in einem Datenverarbeitungssystem |
EP0519669A3 (en) | 1991-06-21 | 1994-07-06 | Ibm | Encoding and rebuilding data for a dasd array |
US5392244A (en) | 1993-08-19 | 1995-02-21 | Hewlett-Packard Company | Memory systems with data storage redundancy management |
US5557775A (en) | 1994-02-23 | 1996-09-17 | International Business Machines Corporation | Expert system for designing computer networks |
US6304980B1 (en) * | 1996-03-13 | 2001-10-16 | International Business Machines Corporation | Peer-to-peer backup system with failure-triggered device switching honoring reservation of primary device |
US5787247A (en) | 1996-07-12 | 1998-07-28 | Microsoft Corporation | Replica administration without data loss in a store and forward replication enterprise |
US6182122B1 (en) | 1997-03-26 | 2001-01-30 | International Business Machines Corporation | Precaching data at an intermediate server based on historical data requests by users of the intermediate server |
US6073209A (en) | 1997-03-31 | 2000-06-06 | Ark Research Corporation | Data storage controller providing multiple hosts with access to multiple storage subsystems |
US6256675B1 (en) | 1997-05-06 | 2001-07-03 | At&T Corp. | System and method for allocating requests for objects and managing replicas of objects on a network |
US5991813A (en) | 1997-05-16 | 1999-11-23 | Icon Cmt Corp. | Network enabled SCSI interface |
US6058455A (en) | 1997-07-02 | 2000-05-02 | International Business Corporation | RAID system having a selectable unattended mode of operation with conditional and hierarchical automatic re-configuration |
US6006264A (en) | 1997-08-01 | 1999-12-21 | Arrowpoint Communications, Inc. | Method and system for directing a flow between a client and a server |
US6105113A (en) * | 1997-08-21 | 2000-08-15 | Silicon Graphics, Inc. | System and method for maintaining translation look-aside buffer (TLB) consistency |
US6189079B1 (en) | 1998-05-22 | 2001-02-13 | International Business Machines Corporation | Data copy between peer-to-peer controllers |
US6163856A (en) | 1998-05-29 | 2000-12-19 | Sun Microsystems, Inc. | Method and apparatus for file system disaster recovery |
US6266682B1 (en) | 1998-08-31 | 2001-07-24 | Xerox Corporation | Tagging related files in a document management system |
US6314503B1 (en) | 1998-12-30 | 2001-11-06 | Emc Corporation | Method and apparatus for managing the placement of data in a storage system to achieve increased system performance |
US6378038B1 (en) | 1999-03-31 | 2002-04-23 | International Business Machines Corporation | Method and system for caching data using raid level selection |
US6832253B1 (en) | 1999-04-01 | 2004-12-14 | Cisco Technologies, Inc. | Proximity as an aid to caching and secondary serving of data |
US6496944B1 (en) | 1999-10-06 | 2002-12-17 | International Business Machines Corporation | Method for database assisted file system restore |
US7203732B2 (en) | 1999-11-11 | 2007-04-10 | Miralink Corporation | Flexible remote data mirroring |
US6754699B2 (en) | 2000-07-19 | 2004-06-22 | Speedera Networks, Inc. | Content delivery and global traffic management network system |
US6460055B1 (en) | 1999-12-16 | 2002-10-01 | Livevault Corporation | Systems and methods for backing up data files |
US6526418B1 (en) | 1999-12-16 | 2003-02-25 | Livevault Corporation | Systems and methods for backing up data files |
US20010044879A1 (en) | 2000-02-18 | 2001-11-22 | Moulton Gregory Hagan | System and method for distributed management of data storage |
CN1301468C (zh) | 2000-02-22 | 2007-02-21 | 松下电器产业株式会社 | 信息收集系统 |
US6598174B1 (en) | 2000-04-26 | 2003-07-22 | Dell Products L.P. | Method and apparatus for storage unit replacement in non-redundant array |
JP2002049511A (ja) | 2000-05-24 | 2002-02-15 | Hitachi Ltd | アドレスの割付変更方法及びこれを用いた外部記憶サブシステム |
JP2001337790A (ja) | 2000-05-24 | 2001-12-07 | Hitachi Ltd | 記憶システム及びその階層管理制御方法 |
US6745206B2 (en) | 2000-06-05 | 2004-06-01 | International Business Machines Corporation | File system with access and retrieval of XML documents |
US6530004B1 (en) | 2000-06-20 | 2003-03-04 | International Business Machines Corporation | Efficient fault-tolerant preservation of data integrity during dynamic RAID data migration |
US6766430B2 (en) | 2000-07-06 | 2004-07-20 | Hitachi, Ltd. | Data reallocation among storage systems |
US6661901B1 (en) | 2000-09-01 | 2003-12-09 | Nacre As | Ear terminal with microphone for natural voice rendition |
US6970939B2 (en) | 2000-10-26 | 2005-11-29 | Intel Corporation | Method and apparatus for large payload distribution in a network |
EP1364510B1 (en) | 2000-10-26 | 2007-12-12 | Prismedia Networks, Inc. | Method and system for managing distributed content and related metadata |
JP2002182859A (ja) | 2000-12-12 | 2002-06-28 | Hitachi Ltd | ストレージシステムおよびその利用方法 |
US7165096B2 (en) | 2000-12-22 | 2007-01-16 | Data Plow, Inc. | Storage area network file system |
US6804690B1 (en) * | 2000-12-27 | 2004-10-12 | Emc Corporation | Method for physical backup in data logical order |
US20020124085A1 (en) | 2000-12-28 | 2002-09-05 | Fujitsu Limited | Method of simulating operation of logical unit, and computer-readable recording medium retaining program for simulating operation of logical unit |
US6904046B2 (en) | 2000-12-28 | 2005-06-07 | International Business Machines Corporation | Self-route multi-memory packet switch adapted to have an expandable number of input/output ports |
US6957433B2 (en) | 2001-01-08 | 2005-10-18 | Hewlett-Packard Development Company, L.P. | System and method for adaptive performance optimization of data processing systems |
US6779082B2 (en) | 2001-02-05 | 2004-08-17 | Ulysses Esd, Inc. | Network-based disk redundancy storage system and method |
US6779063B2 (en) | 2001-04-09 | 2004-08-17 | Hitachi, Ltd. | Direct access storage system having plural interfaces which permit receipt of block and file I/O requests |
US6772315B1 (en) | 2001-05-24 | 2004-08-03 | Rambus Inc | Translation lookaside buffer extended to provide physical and main-memory addresses |
US20020188697A1 (en) | 2001-06-08 | 2002-12-12 | O'connor Michael A. | A method of allocating storage in a storage area network |
US6876656B2 (en) | 2001-06-15 | 2005-04-05 | Broadcom Corporation | Switch assisted frame aliasing for storage virtualization |
US6718447B2 (en) | 2001-06-28 | 2004-04-06 | Hewlett-Packard Development Company, L.P. | Method and system for providing logically consistent logical unit backup snapshots within one or more data storage devices |
US6640291B2 (en) | 2001-08-10 | 2003-10-28 | Hitachi, Ltd. | Apparatus and method for online data migration with remote copy |
US6745209B2 (en) | 2001-08-15 | 2004-06-01 | Iti, Inc. | Synchronization of plural databases in a database replication system |
US6895467B2 (en) | 2001-10-22 | 2005-05-17 | Hewlett-Packard Development Company, L.P. | System and method for atomizing storage |
US6820217B2 (en) | 2001-10-29 | 2004-11-16 | International Business Machines Corporation | Method and apparatus for data recovery optimization in a logically partitioned computer system |
JP2003162377A (ja) | 2001-11-28 | 2003-06-06 | Hitachi Ltd | ディスクアレイシステム及びコントローラ間での論理ユニットの引き継ぎ方法 |
US7512649B2 (en) | 2002-03-22 | 2009-03-31 | Sun Microsytems, Inc. | Distributed identities |
US6928513B2 (en) | 2002-03-26 | 2005-08-09 | Hewlett-Packard Development Company, L.P. | System and method for managing data logging memory in a storage area network |
US6985995B2 (en) | 2002-03-29 | 2006-01-10 | Panasas, Inc. | Data file migration from a mirrored RAID to a non-mirrored XOR-based RAID without rewriting the data |
US7162587B2 (en) * | 2002-05-08 | 2007-01-09 | Hiken Michael S | Method and apparatus for recovering redundant cache data of a failed controller and reestablishing redundancy |
US7269612B2 (en) | 2002-05-31 | 2007-09-11 | International Business Machines Corporation | Method, system, and program for a policy based storage manager |
US7308463B2 (en) * | 2002-06-26 | 2007-12-11 | Hewlett-Packard Development Company, L.P. | Providing requested file mapping information for a file on a storage device |
US7107483B2 (en) * | 2002-11-15 | 2006-09-12 | Lsi Logic Corporation | Apparatus and method for enhancing data availability by leveraging primary/backup data storage volumes |
US7610348B2 (en) | 2003-05-07 | 2009-10-27 | International Business Machines | Distributed file serving architecture system with metadata storage virtualization and data access at the data server connection speed |
US7475211B2 (en) | 2004-02-13 | 2009-01-06 | International Business Machines Corporation | Method and system for restoring data |
US7457930B2 (en) | 2004-11-19 | 2008-11-25 | International Business Machines Corporation | Method for application transparent autonomic data replication improving access performance for a storage area network aware file system |
US7464124B2 (en) | 2004-11-19 | 2008-12-09 | International Business Machines Corporation | Method for autonomic data caching and copying on a storage area network aware file system using copy services |
-
2004
- 2004-11-19 US US10/994,149 patent/US7383406B2/en not_active Expired - Fee Related
-
2005
- 2005-09-19 CN CNB2005101041211A patent/CN100403268C/zh not_active Expired - Fee Related
-
2008
- 2008-04-16 US US12/104,288 patent/US7779219B2/en not_active Expired - Fee Related
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102150144A (zh) * | 2009-01-23 | 2011-08-10 | Lsi公司 | 使用写入配置快照的动态存储分层的方法和系统 |
CN102272742A (zh) * | 2009-01-29 | 2011-12-07 | Lsi公司 | 为卷提供动态存储分级的在线数据放置的写时分配快照机制 |
US9170756B2 (en) | 2009-01-29 | 2015-10-27 | Lsi Corporation | Method and system for dynamic storage tiering using allocate-on-write snapshots |
CN102087645A (zh) * | 2009-12-03 | 2011-06-08 | 北大方正集团有限公司 | 稿件分发的方法和系统 |
CN102915260A (zh) * | 2012-09-17 | 2013-02-06 | 记忆科技(深圳)有限公司 | 固态硬盘容错的方法及其固态硬盘 |
CN102915260B (zh) * | 2012-09-17 | 2016-04-20 | 记忆科技(深圳)有限公司 | 固态硬盘容错的方法及其固态硬盘 |
WO2014190501A1 (zh) * | 2013-05-29 | 2014-12-04 | 华为技术有限公司 | 数据恢复方法、存储设备和存储系统 |
Also Published As
Publication number | Publication date |
---|---|
US7383406B2 (en) | 2008-06-03 |
US20060112243A1 (en) | 2006-05-25 |
US20080189572A1 (en) | 2008-08-07 |
CN100403268C (zh) | 2008-07-16 |
US7779219B2 (en) | 2010-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100403268C (zh) | 对应用程序透明的自治可用性 | |
CN100343793C (zh) | 存储区域网络知晓的文件系统上的自治数据缓存和拷贝 | |
CN100507821C (zh) | 用于存储区域网络内部的分配数据的方法和装置 | |
US6119208A (en) | MVS device backup system for a data processor using a data storage subsystem snapshot copy capability | |
US10915408B2 (en) | Snapshot for grouping and elastic replication of virtual machines | |
US5915264A (en) | System for providing write notification during data set copy | |
US7363316B2 (en) | Systems and methods for organizing and mapping data | |
US7454569B2 (en) | Hierarchical system and method for performing storage operations in a computer network | |
US7631151B2 (en) | Systems and methods for classifying and transferring information in a storage network | |
US7636814B1 (en) | System and method for asynchronous reads of old data blocks updated through a write-back cache | |
CN100339847C (zh) | 虚拟化的分布式网络存储系统 | |
US9760574B1 (en) | Managing I/O requests in file systems | |
US20060224846A1 (en) | System and method to support single instance storage operations | |
US20060047714A1 (en) | Systems and methods for rapid presentation of historical views of stored data | |
JP2003518659A (ja) | コンピュータ・ストレージ・システムを操作するための装置および方法 | |
KR100819022B1 (ko) | 하나의 타겟 볼륨과 하나의 소스 볼륨 사이의 관계 관리 | |
US6108749A (en) | DASD file copy system for a data processor using a data storage subsystem snapshot copy capability | |
CN1604046A (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080716 Termination date: 20200919 |