CN1724980A - 存储系统 - Google Patents
存储系统 Download PDFInfo
- Publication number
- CN1724980A CN1724980A CN200510069243.1A CN200510069243A CN1724980A CN 1724980 A CN1724980 A CN 1724980A CN 200510069243 A CN200510069243 A CN 200510069243A CN 1724980 A CN1724980 A CN 1724980A
- Authority
- CN
- China
- Prior art keywords
- data
- copy
- destination
- storage volume
- volume
- 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
- 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/2058—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 more than 2 mirrored copies
-
- 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/1466—Management of the backup or restore process to make the backup process non-disruptive
-
- 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/2064—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 while ensuring consistency
-
- 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/2087—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 with a common controller
-
- 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/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0605—Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
-
- 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/062—Securing storage systems
- G06F3/0622—Securing storage systems in relation to access
-
- 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/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/065—Replication mechanisms
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- 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
- 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/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99953—Recoverability
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99955—Archiving or backup
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
相关申请的交叉引用
本申请主张2004年7月21日申请的日本专利申请JP 2004-212501的优先权,其全部内容在本申请中作为参考。
技术领域
本发明涉及用于控制数据存入存储单元的存储系统(也称为磁盘阵列单元),尤其涉及用于在存储卷(volume)中生成数据拷贝的技术。
背景技术
通常,已存在的计算机系统包括:存储系统(存储子系统),用于控制将数据存入存储单元中;以及作为主机的处理器,通过通信装置对连接到该存储系统的数据进行读/写访问。在所述计算机系统中存在一种拷贝功能,通过安装在该存储系统的存储区内的存储卷的数据的存储系统内部的拷贝处理生成拷贝(拷贝卷)。
在存储系统和装备拷贝功能的计算机系统中,存在这样的情况,希望为存储卷上的数据生成多拷贝。例如,上述情况是在处理器使用用于联机应用的存储卷的数据生成多拷贝卷时,且多个生成的拷贝存储卷是适当地用于与联机应用无关的诸如备份、测试和批处理的每个处理。
在希望为使用常规拷贝功能的存储卷的数据生成多拷贝的情况下,根据由处理器的操作者(用户)已输入的指令,必须以时间序列将生成多拷贝所需的多个指令发送给该存储系统。也就是说,需要一个步骤:首先发出多对产生指令以建立作为复制源的多对主卷和作为复制目的地的副卷;以及要求在存储系统中建立多个对。
例如,公开未审查的日本专利申请2000-132343公开了通过存储系统内部的拷贝处理生成拷贝的技术,而存储系统中的存储卷的数据不放入处理器。而且在这个技术中,在希望为存储卷的数据生成多拷贝的情况下必须发出多个指令。
发明内容
在使用常规拷贝功能的处理器发出指令的基础上,为存储系统中存储卷的数据生成多拷贝时需要发出多个指令,因此要花费时间和劳动做这些。尤其是,随着拷贝的数量的增大,也就是说由于复制源和复制目的地的对数目增加,就出现了问题,即操作者(用户)和处理器生成拷贝的负担增大。当拷贝的数量少时,这些困难不会造成任何问题。然而,例如,当希望为某个存储卷的数据生成一百个拷贝时,就需要按时间序列顺序地发出一百个对产生指令以及建立多对复制源和复制目的地的过程。
此外,在进行生成多拷贝的处理时,会在存储系统的控制单元接收多个指令的过程中发生时滞。因此,在这个处理期间,如果在复制源和复制目的地出现数据的更新和处理器对存储卷的查询访问,则会出现这样的问题,即难以保证多个相关存储卷中的数据一致性,该相关存储卷包括复制源和复制目的地的存储卷。因此,在生成多拷贝中还需要保证多个相关存储卷的数据一致性的机制。
鉴于上述问题而发明了本发明,本发明的一个目的是提供一种技术,其中根据来自处理器的指令在存储系统进行处理生成多个存储卷的数据的拷贝(拷贝卷)中,可以减少从处理器发出多个指令和建立多个对所需要的时间和劳动,并且在生成多拷贝中可以保证包括多对复制源和复制目的地的多个相关存储卷的数据一致性。
本申请所公开的本发明的一个有代表性的概况简述如下。为了实现上述目的,根据本发明的存储系统包括一个或多个存储设备和控制单元,该控制单元执行将数据存储在由作为存储卷的存储设备提供的存储区的控制;和根据来自处理器的指令处理与例如来自该处理器的指令一致的数据的读/写的I/O,该处理器作为通过通信装置连接的主机;并且其特征在于如下所示的技术装置(1)和(2)。
(1)根据本发明的存储系统装备多拷贝生成功能,根据单个指令(以下称作“多拷贝生成指令”,或也简单地称作“拷贝指令”)的接收,通过存储系统中的处理为多个变化的存储卷生成特定存储卷的数据的拷贝进行多拷贝生成处理,该单个指令是由操作者从处理器上的拷贝控制程序根据复制源以及复制目的地的定向目录(entry)发出的。另外,在多拷贝生成处理的情况下,根据包括复制源和复制目的地的多个相关存储卷的数据一致性生成拷贝,该数据一致性即使在处理器出现复制源和复制目的地的数据的更新和查询访问也得到了保证。
基于用于复制源和复制目的地的定向目录,通过操作者从处理器的拷贝控制程序发出包含指示数据变为复制源和复制目的地的信息的单个拷贝指令。发出的拷贝指令通过通信装置传送到存储系统的控制单元。例如,指定的信息包括诸如存储卷序号和地址的存储卷识别信息,以及关于包括在存储卷中的数据的识别信息等。复制源和复制目的地之间的关系是“一对多”对的关系,或者是直线排列的多个“一对一”对的关系。例如,指定的信息包括一个复制源存储卷序号和多个复制目的地存储卷号。
在多拷贝生成功能中,控制单元通过通信装置接收拷贝指令,并且识别相应于包含在拷贝指令中的指定信息的多对复制源存储卷和复制目的地存储卷,并且通过为包括这些多对的一组(一致组)中的每个对执行从复制源存储卷中的拷贝目标数据到复制目的地存储卷的所需的数据复制处理而进行生成拷贝的处理(拷贝处理)。当所有对的拷贝的生成,也就是,将副卷(复制目的地存储卷)的数据内容与主卷(复制源存储卷)相符合的数据复制处理完成时,多拷贝生成处理也就完成。
另外,因为多拷贝生成功能生成拷贝,同时从处理器到包括在该组里的存储卷的数据的查询和更新保证该组的数据一致性,提供作为复制源存储卷的数据保存目的地区域的存储区域,并且进行控制第一控制信息(复制源保存信息)和第二控制信息(复制目的地更新信息)的处理,以及按照保存或更新的出现分别执行更新数值的处理,该第一控制信息用于识别从复制源存储卷到复制目的地存储卷区域的数据保存状态,该第二控制信息用于识别复制目的地存储卷数据的更新状态。然而,复制目的地存储卷的数据更新不是通过从复制源存储卷到复制目的地存储卷的数据复制处理的更新,而是通过例如来自处理器的写指令的访问的更新。保存处理是指在更新的时候将后更新的数据写为存储器出现的复制源存储卷的数据之前将前更新数据复制且保存到复制目的地区域的处理。是否进行保存处理例如是按照使用该处理器的用户的策略决定的。
多拷贝生成功能查询第一和第二控制信息,判断包括成为一对存储卷的访问目标的存储卷数据的该数据的每个相关数据的状态,进行按照判断要求的将相应的数据从复制源存储卷保存到复制目的地存储区域的处理,或者在更新和查询的任一访问,也就是写指令或读指示出现在从处理器到包括在该组里的存储卷数据的情况下,进行访问目标数据的更新或查询,同时使用按照要求保存的数据的处理(更新/查询处理)。
另外,多拷贝生成功能从处理器通过通信装置接收拷贝指令,并且进行对表示拷贝指令的接收的信息和指示接收信息的存储的处理,该指示接收信息包括相应于存储系统中存储器里的指定信息的复制源和复制目的地的识别信息(指示接收处理)。相应于指定信息的复制源和复制目的地的识别信息是指定信息本身,或者是通过在存储系统侧翻译指定信息本身生成的多对复制源存储卷和复制目的地存储卷相关的信息。存储系统中的存储器例如包括从存储设备上安装的控制单元或系统信息存储区域构成的每个部分可访问的共享存储器。并且,多拷贝生成功能将响应发送到处理器发出拷贝指令的地方。在存储系统中,基于指示接收信息的的查询开始生成多个指定拷贝的处理。在生成多拷贝的处理中,用于实际生成拷贝数据的实体的处理,也就是将拷贝目标数据从主卷复制到副卷的处理和其它的处理可以在拷贝指令的接收之后的稍后时间开始。也就是,可能在出现从处理器到复制目的地存储卷等的访问时进行生成拷贝数据的实体的处理。
另外,对应于包含多对复制源存储卷和复制目的地存储卷的组(一致性组),它相应于指定信息,多拷贝生成功能通过执行必要的数据复制处理并且将该对复制源存储卷即主卷和复制目的地存储卷即副卷的控制状态转换为“分离”状态进行生成“单一”状态的存储卷数据拷贝的处理,该“单一”状态作用为复制目的地存储卷中的复制源。
另外,在包括复制源存储卷和复制目的地存储卷的组和作为保存目的地存储区域中的数据的布局涵盖多个存储系统的情况下,多拷贝生成功能进行与多个存储系统之间多个拷贝的生成相关的处理,也就是,与来自处理器的更新和查询的处理相关的数据复制处理和数据转移处理。在存储系统中,基于拷贝指令通过复制源存储卷和复制目的地存储卷的识别,在其自己的存储系统和其它的存储系统之间通过通信装置执行通信,从而进行必要的数据转移处理。
此外,多在拷贝指令接收的基础上,相对于多对复制源存储卷和复制目的地存储卷,通过一个接一个地选择作为处理目标的对,拷贝生成功能通过执行从复制源存储卷中的拷贝目标数据顺次地复制必要的数据到复制目的地存储卷的处理生成拷贝的处理(拷贝处理)。例如,在预先为出现来自处理器的更新或查询访问的存储卷对进行生成拷贝的处理之后,多拷贝生成功能控制例如更新或查询的处理。
此外,多拷贝生成功能将相应于一组的指令接收标记导通,该组包括相应于在拷贝指令的接收基础上的指定信息的多对复制源存储卷和复制目的地存储卷,进行访问目标数据的更新或查询的处理,同时在指示接收标记的查询的基础上判断拷贝指令和来自处理器的更新或查询的次序,并且在完成多拷贝的生成之后执行将指示接收标记关断的处理。
而且,多拷贝生成功能识别按照存储卷中的子数据单元的数据状态,在复制源和复制目的地存储卷的单元中的位图配置第一和第二控制信息,例如特定大小的逻辑磁道(track)单元,并且在出现数据保存或更新时更新位图中的相应比特。例如,多拷贝生成功能在接收到拷贝指令时生成第一和第二控制信息,导通(turn ON)所有比特,并且在保存或更新的数据出现在字数据单元中时,将相应于相应子数据的比特关断(turn OFF)。
此外,在拷贝指令的接收之后,出现从处理器到包括在上述组内的存储卷的数据的更新或查询访问时,多拷贝生成功能进行如更新/查询处理的下述处理。
在出现从处理器到复制源存储卷的数据的更新访问时多拷贝生成功能确定第一控制信息,且如果复制源存储卷的相应数据(访问目标数据)处于未保存状态,则将复制源存储卷中的前更新数据保存到保存目的地存储区域,从而更新第一控制信息,并在保存之后进行或更新数据的写处理(写数据),且如果复制源存储卷的相应数据处于保存状态,则多拷贝生成功能不将前更新数据保存在复制源存储卷中,而是由或更新数据写入数据。在响应于更新访问而执行保存处理之后,多拷贝生成功能利用保存的数据,也就是在开始多拷贝生成处理的状态中复制源存储卷的数据,为该对进行生成拷贝的处理。
在出现从处理器到复制源存储卷的数据的更新访问时,多拷贝生成功能确定第一控制信息和第二控制信息,如果复制源存储卷的相应数据是未保存状态且复制目的地存储卷的相应数据(访问目标数据)是未更新状态时,多拷贝生成功能将复制源存储卷的相应数据保存到保存目的地存储区域,从而更新第一控制信息,并由后更新数据对复制目的地存储卷的相应数据进行写入,从而更新第二控制信息,如果复制源存储卷的相应数据是保存状态且复制目的地存储卷的相应数据是未更新状态时,多拷贝生成功能由后更新数据对复制目的地卷的相应数据进行写入,从而更新第二控制信息,如果复制目的地存储卷的相应数据是更新状态时,多拷贝生成功能由后更新数据对复制目的地卷的相应数据进行写入。
在出现从处理器到复制源存储卷的数据的查询访问时,多拷贝生成功能进行读取且返回复制源存储卷的相应数据(访问目标数据)的处理。
在出现从处理器到复制源存储卷的数据的查询访问时,多拷贝生成功能确定第一控制信息和第二控制信息,如果复制源存储卷的相应数据是未保存状态且复制目的地存储卷的相应数据(访问目标数据)是未更新状态时,多拷贝生成功能将复制源存储卷的相应数据保存到保存目的地存储区域,从而更新第一控制信息,多拷贝生成功能读取且返回保存目的地存储区域中保存的数据,如果复制源存储卷的相应数据是在已保存状态且复制目的地存储卷的相应数据是未更新状态时,多拷贝生成功能读取且返回保存目的地存储区域中保存的数据,如果复制目的地存储卷的相应数据是已更新状态时,多拷贝生成功能读取且返回保存目的地卷中的相应数据。
(2)此外,根据本发明的存储系统装备控制单元,用于控制存储数据作为存储卷的存储系统的存储区域中,和在从处理器的拷贝控制程序发出包括指定复制源数据和复制目的地数据的信息的单个拷贝指令时,控制单元具有多拷贝生成功能,在单个拷贝指令的接收基础上,对相应该指定信息的多对复制源存储卷和复制目的地存储卷,通过生成复制源存储卷的拷贝数据的拷贝来生成多个复制源数据的拷贝。对于包括相应于指定信息的多对复制源存储卷和复制目的地存储卷的组,多拷贝生成功能通过执行从复制源存储卷到复制目的地存储卷的数据复制处理进行生成拷贝的处理;不需提供作用为复制源卷的保存目的地数据的存储区域(存储卷),按照复制的出现,识别从复制源存储卷到复制目的地存储卷的数据的复制状态来控制第三控制信息(复制信息)的处理;通过将数据从复制源存储卷的数据保存到判断基础上的保存目的地存储区域判断包括可能是访问目标的存储卷的数据和相应对的存储卷的数据的每个数据的情况的处理;在判断的基础上将相应的数据从复制源存储卷复制到所需的复制目的地存储卷的处理;以及对访问目标数据更新或查询的处理。
多拷贝生成功能通过通信装置从处理器接收拷贝指令,在存储系统的存储器中存储指令接收信息,该指令接收信息包含表示拷贝指令的接收的信息和相应于指令中的指定信息的复制源和复制目的地信息,传送响应到指令源处理器,并且在指令接收信息的查询的基础上开始生成多个拷贝的处理。
此外,对于包含相应于复制目的地存储卷中的指定信息的多对复制源存储卷和复制目的地存储卷的组,多拷贝生成功能通过执行必要的数据复制处理,对作为复制源的“单一”状态的存储卷的数据生成拷贝,并且对复制源和复制目的地存储卷对,将控制状态转换未“分离”状态。
此外,在数据布局涵盖包括复制源存储卷和复制目的地存储卷的组中多个存储系统的情况下,多拷贝生成功能进行数据转移,即在多个存储系统之间生成多个拷贝的相关的处理。
此外,对于多对复制源存储卷和复制目的地存储卷,多拷贝生成功能通过选择作为处理目标的对顺次地执行从复制源存储卷到复制目的地存储卷的数据复制处理来执行生成拷贝的处理(拷贝处理)。
此外,在多个拷贝指令的接收的基础上,相应于包括多对复制源存储卷和复制目的地存储卷,多拷贝生成功能执行将指示接收标记导通,对作为访问目标的数据进行更新和查询,同时在指示接收标记的查询基础上判断拷贝指令和来自处理器的更新或查询访问的次序,以及在完成多个拷贝的生成之后,将指示接收标记关断的处理。
此外,多拷贝生成功能以复制源存储卷为单元利用位图配置第三控制信息,用于识别相应于存储卷中的子数据单元的数据状态;并且在数据复制出现时,更新相应的比特。
此外,在拷贝指令的接收之后,对于包括在组内的存储卷中的数据,在出现来自处理器的更新或查询访问的情况下,多拷贝生成功能执行如更新/查询处理的下述处理。
多拷贝生成功能执行在出现从处理器到复制源存储卷的数据的更新访问的情况下确定第三控制信息的处理,并且如果复制源存储卷的相应数据(访问目标数据)是非复制状态,则多拷贝生成功能执行将复制源存储卷的相应数据复制到复制目的地存储卷(在有多个卷时的多个复制目的地存储卷)从而更新第三控制信息数据的处理,并且由后更新数据(写数据)在复制源存储卷中写入相应数据;如果复制源存储卷的相应数据是复制状态,由后更新数据(写数据)在复制源存储卷中写入相应数据。
在出现从处理器到复制源存储卷的数据的更新访问的情况下,多拷贝生成功能执行确定第三控制信息的处理,将复制源存储卷的相应数据复制到复制目的地存储区域(在有多个卷时的多个复制目的地存储卷),并且在复制源存储卷的相应数据是非复制状态的情况下,由后更新数据(写数据)在复制目的地存储卷中写入复制目的地存储卷的相应数据(访问目标数据)和更新第三控制信息,并且在复制源存储卷的相应数据是非复制状态的情况下,由后更新数据对复制目的地卷的相应数据进行写入。
在复制源存储卷的相应数据是在复制状态的情况下,多拷贝生成功能进行对复制目的地中相应数据(访问目标数据)的读取和返回的处理。
在出现从处理器到复制目的地存储卷的数据的查询访问时,多拷贝生成功能进行确定第三控制信息的处理,将复制源存储卷的相应数据复制到复制目的地存储区域(有多个卷时的多个复制目的地存储卷),并且在复制源存储卷的相应数据(访问目标数据)是非复制状态的情况下,读取且返回复制目的地存储区域中的相应数据,并且在复制源存储卷的相应数据是复制状态的情况下,读取且返回复制目的地卷中的相应数据。
除了段落(1)和(2)中所示的方式之外,根据本发明的存储系统在多拷贝生成处理中多对复制源存储卷和复制目的地存储卷的关系具有一对多的树型关系或安排多个一对一的对成一行的关系。
此外,例如在存储卷的单元中作出拷贝指令中的复制源数据及其复制目的地指定。此外,拷贝指令中的复制源的指定是在例如存储卷中包括的子数据单元,并且包括子数据的拷贝的复制目的地存储卷是由多拷贝生成功能生成的。此外,在拷贝指令中的复制目的地是由例如拷贝的数目指定的,且复制目的地存储卷是按照拷贝数目的指定选择或生成的。此外,拷贝指令中的复制目的地是由例如存储区域的范围指定的,且复制目的地存储卷是按照存储区域范围的指定由多拷贝生成功能选择或生成的。此外,拷贝指令中的复制源和复制目的地是在一致性组的单元中指定的。
关于本申请中所揭示的发明,如下将简要描述从典型实例可以获取的效果。
根据本发明,当存储系统生成多个拷贝时,在操作者从处理器发出指令时不必要建立多对复制源卷和复制目的地卷,而且可以实现由来自该状态的指示可生成多个拷贝且是不可用的功能。由此,可能减少常规是需要的发出多个指令且建立对所需的劳力和时间,并且减少了操作者和处理器的负担。这在生成大量拷贝时尤其有效。此外,当生成多个拷贝时可以保证数据非一致性。因为可以以较少的劳力和时间生成多个拷贝,这个功能可以用于诸如备份处理的有用处理。
此外,特别地,按照解决上述问题的上述方式中的段落(1)的配置,可以增加对来自处理器的查询/更新请求的响应速度。此外,特别由段落(2)的配置可以节省存储资源。
附图说明
图1是显示根据本发明的每个具体实施例的整个存储系统的硬件外观配置的图;
图2是显示根据本发明的第一实施例配置成包括存储系统的整个计算机系统的功能块配置的图;
图3是显示根据本发明的每个实施的处理器的功能块配置的图;
图4是显示根据本发明的第一实施例的控制单元在存储系统中控制的对控制表的图;
图5是显示根据本发明的第一实施例的控制单元在存储系统中控制的组控制表的图;
图6是表示根据本发明的第一实施例和包括存储系统的计算机系统的有关在存储系统中多拷贝生成功能的功能块配置的图;
图7是显示根据本发明的第一实施例的存储系统中生成多拷贝时作为处理目标的LU和控制信息的说明图;
图8是根据本发明的第一实施例的存储系统中生成多拷贝的控制信息的复制源保存信息和复制目的地更新信息的更新状态的表;
图9是显示根据本发明的第一实施例的存储系统中有关更新/查询处理的多拷贝生成处理的示例的说明图;
图10A是表示根据本发明的第一实施例的存储系统中控制信息和关于多拷贝生成处理的更新/查询处理的实行处理的相应性的表;
图10B是表示根据本发明的第一实施例的存储系统中控制信息和关于多拷贝生成处理的更新/查询处理的实行处理的相应性的表;
图10C是表示根据本发明的第一实施例的存储系统中控制信息和关于多拷贝生成处理的更新/查询处理的实行处理的相应性的表;
图10D是表示根据本发明的第一实施例的存储系统中控制信息和关于多拷贝生成处理的更新/查询处理的实行处理的相应性的表;
图11是表示根据本发明的第一实施例的存储系统中更新/查询处理中复制源更新处理的流程图;
图12是表示根据本发明的第一实施例的存储系统中更新/查询处理中复制目的地更新处理的流程图;
图13是表示根据本发明的第一实施例的存储系统中更新/查询处理中复制源查询处理的流程图;
图14是表示根据本发明的第一实施例的存储系统中更新/查询处理中复制目的地查询处理的流程图;
图15是状态转换示意图,表示根据本发明的第一实施例的存储系统中,当在多拷贝生成处理中进行更新/查询处理时的复制源保存信息和复制目的地更新信息;
图16是显示根据本发明的第一实施例的存储系统中多拷贝生成处理的流程图,尤其表示在对多对顺次地进行拷贝处理时的处理实例;
图17是显示根据本发明的每个实施例的存储系统中,使用通过多拷贝生成功能生成的多拷贝卷的处理实例的备份处理的图;
图18是显示根据本发明的第二实施例的存储系统中和在包括存储系统的计算机系统中,与多拷贝生成功能相关的功能模块配置图;
图19是显示根据本发明的第二实施例的存储系统中,在生成多拷贝的情况下作为处理目标的LU和控制信息的图;
图20是表示根据本发明的第二实施例的存储系统中复制信息也就是生成多拷贝的控制信息的的更新状态的表;
图21是显示根据本发明的第二实施例的存储系统中,与更新/查询处理相关的多拷贝生成处理的说明图;
图22A是表示根据本发明的第二实施例的存储系统中,控制信息和关于多拷贝生成处理的更新/查询处理的执行处理的相应性的表;
图22B是表示根据本发明的第二实施例的存储系统中,控制信息和关于多拷贝生成处理的更新/查询处理的执行处理的相应性的表;
图22C是表示根据本发明的第二实施例的存储系统中,控制信息和关于多拷贝生成处理的更新/查询处理的执行处理的相应性的表;
图22D是表示根据本发明的第二实施例的存储系统中,控制信息和关于多拷贝生成处理的更新/查询处理的执行处理的相应性的表;
图23是显示根据本发明的第二实施例的存储系统中,更新/查询处理的复制源更新处理的流程图;
图24是显示了根据本发明的第二实施例的存储系统中,更新/查询处理的复制目的地更新处理的流程图;
图25是显示根据本发明的第二实施例的存储系统中,更新/查询处理的复制源查询处理的流程图;
图26是显示根据本发明的第二实施例的存储系统中,更新/查询处理的复制目的地查询处理的流程图;
图27是状态转换示意图,根据本发明的第二实施例的存储系统在多拷贝生成处理中进行更新/查询处理时的复制信息;
图28A是显示根据本发明的每个实施例与多拷贝生成处理相关的LU排列模式;
图28B是显示根据本发明的每个实施例与多拷贝生成处理相关的LU排列模式;
图29是显示与本发明的每个实施例相关的多拷贝生成处理中一对复制源卷和复制目的地卷的其它关系的说明图;
图30A是显示先决条件技术的拷贝功能的略图;
图30B是显示先决条件技术的拷贝功能的略图。
具体实施方式
现在将在下面参照附图描述本发明的实施例。
(第一实施例)
图1至16是描述根据本发明第一实施例的存储系统的图。图1示出根据本发明的每个实施例的整个存储系统的硬件外观配置。图2是显示根据本发明的第一实施例包括在存储系统1中的计算机系统的功能块配置的图。第一实施例的存储系统1装备多拷贝生成功能,用于将存储卷的数据的拷贝生成该存储系统存储区域内的多个不同的存储卷;并且特别是在这时提供相应于以特别为主卷数的据提供的保存卷进行保存处理的情况的处理形式。
(存储系统)
首先,描述根据每个实施例的存储系统的整个配置。在图1中,存储系统600的结构形式是连接的控制单元机架100和两个存储设备机架300。存储系统600是主要包括控制单元机架100和多个存储设备机架300的计算机。存储系统600的控制单元机架100能够实现RAID控制,即支持由存储设备机架300提供的存储区域的特定RAID级。
控制单元机架100具有维护人员使用的控制终端160。控制终端160是一个计算机,执行存储系统600的各种维护以及控制,并且可以是作为示例的笔记本型的PC。控制终端160被一个盖子盖着,盖子的开口使得它可以使用控制终端160。在控制终端160下面,设有用于安装诸如信道控制部110这样的电路板的插槽。对于每个插槽来说,一个电路板都是可拆卸的。存储系统600通过稍后讨论的通信装置连接到作为主机的处理器。
存储设备机架300配置成为大量的存储设备的磁盘驱动器(物理磁盘),并为作为主机的处理器提供存储区域。作为处理目标的存储卷包括:一个物理卷,即由存储设备提供的物理存储区域;以及一个逻辑单元(LU),即在物理卷上逻辑地设置的存储区域。在该存储卷中,假定直接由作为主机的处理器I/O访问并存储原始数据的存储卷称作主卷,存储主卷数据的拷贝的存储卷称作次卷。例如,如所述的磁盘驱动器,可以使用各种像硬盘单元、软磁盘单元、以及半导体存储器单元这样的单元。所述存储设备机架300可以具有由多个磁盘驱动器配置的磁盘阵列。在这种情况下,提供给处理器的所述存储区域可以由多个由所述RAID控制的磁盘驱动器(RAID组)提供。控制单元机架100还执行关于RAID的控制。
控制单元机架100可以直接与存储设备机架300连接或通过网路与其连接。此外,存储设备机架300可以与控制单元机架100整体地配置。
控制终端160通过内部LAN连接到各个电路板上,所述电路板包括在所述控制单元机架100中的控制单元。维护人员操作控制终端160进行各种维护以及控制服务。通过操作控制终端160,可以在存储设备机架300中设置所述物理磁盘配置以及逻辑单元(LU),或在诸如信道控制部110这样的电路板上安装执行的程序等等。作为物理磁盘配置的设置,例如,可以执行物理磁盘的增加或减少,以及所述RAID配置的改变,等等此外,控制终端160通过LAN(局域网)或电话线等等连接至外部维护中心,以及如果有故障发生的话,也可以很快采取措施。这些设置以及控制通过维护人员利用如用户界面、在控制终端160运行的由网络服务器提供的网页来实施。控制终端160可以结合到控制单元机架100中或在外部安装。此外,控制终端160可以以专用于控制单元机架100以及存储设备机架300的控制以及维护的计算机的形式构成,或以带有维护以及控制功能的通用计算机的形式构成。控制终端160可以是合并到控制单元机架100中的类型,或是通过通信线路连接至控制单元机架100的单独装置。此外,控制终端160可以以专用于存储系统600的控制以及维护的装置的形式构成,或以带有维护以及控制功能的诸如PC这样的通用信息处理器的形式构成。
(计算机系统)
在图2中,由第一实施例的存储系统1组成的计算机系统具有这样一种配置,其中一个或多个存储系统1和一个或多个处理器4利用网络3连接。在图2中,作为一个例子,两个存储系统1和2连接至网络3。因为存储系统2的配置与存储系统1的相同,所以主要描述存储系统1。处理器4是在用户侧(个人和公司等)使用的计算机,并且作用为存储系统1的主机。例如,处理器4允许利用存储系统1装备的数据存储器控制功能把数据存储于存储区域,并利用上述数据进行联机服务。此外,利用另一个存储系统2,进行数据拷贝等。存储系统1以及存储系统2可以近距离布置,同时也可以远地布置以用于灾难性控制等等,并且可以在两者之间进行存储卷数据的远程复制处理等。在图2的情况中,所述存储系统1位于主站点而存储系统2位于远离所述主站点的次站点。在远程拷贝功能以及多拷贝生成功能中存储系统2特别地用作复制目的地/复制目的地。存储系统1的处理器4以及控制单元5利用指定路径通过端口以及网络3连接并可以相互通信。存储系统1以及2的控制单元5也利用指定路径通过端口以及网络3连接并可以相互通信。
网络3的示例包括LAN(局域网)以及SAN(存储区域网络)等等。不仅可以通过单个类型的网络3或处理器4还可以通过不同类型的以及混合型的平台连接。在这种情况下,控制单元5具有分别相应于各种平台的多个信道控制单元(CHA 7)。每个处理器4以及存储系统1都具有可与网络3的协议兼容的通信接口。
对于网络3,例如,通过所述LAN(局域网),连接控制单元5以及处理器4。所述LAN可以是因特网或特定目的的网络。按照例如TCP/IP协议通过所述LAN进行通信。在所述LAN上,从处理器4到存储系统1传送带有文件名指示的数据访问请求(文件访问请求)。
此外,备份设备900连接至所述网络3。备份设备900具体为基于磁盘的设备,诸如MO、CD-R、或DVD-RAM以及基于磁带的设备,诸如DAT磁带、盒式磁带、开放式磁带或卡式磁带。在所述备份设备900中,存于存储系统1内部的存储设备6中的数据的备份数据通过网络3的通信来存储。所述备份处理将在稍后进行讨论。
此外,作为网络3,例如通过SAN连接控制单元5和处理器4。所述SAN是用于在方块单元内的处理器4和存储设备6之间交换数据的网络,所述方块单元是存储设备6提供的存储区域中的数据控制单元。处理器4以及控制单元5之间通过所述SAN的通信,通常按照光纤信道协议来进行。在方块单元内的数据访问请求(方块访问请求)从处理器4传送到存储系统1。
在网络3是SAN的情况下,支持SAN的备份设备作为备份设备900进行连接。在支持SAN的备份设备中,存于存储设备6中的数据的备份数据通过所述SAN与控制单元5的通信进行存储。
(控制单元)
如图2所示,控制单元5(相应于上述查询标记“100”)包括多个CHA(信道控制部)7(相应于上述查询标记“110”),一个高速缓冲存储器8,一个共享存储器9,多个DKA(磁盘控制部)10以及一个连接部11等等。组成控制单元5的所述CHA 7、高速缓冲存储器8、共享存储器9以及DKA 10等,例如,分别作为单个电路板而安装。这些一个或多个电路板分别安装到存储系统1的插槽。
控制单元5控制整个存储系统1以及控制主要在处理器4以及存储单元6之间的数据I/O。控制单元5具有一个处理器以及用于执行其控制程序的存储器,并且通过允许处理器执行所述控制程序来实现如稍后讨论的各个处理。控制单元5执行的所述控制程序包括多拷贝生成程序20。多拷贝生成程序20是用来实现多拷贝生成功能的程序,并且使存储系统1根据来自处理器4的多拷贝生成指令的接收执行多拷贝生成处理。
控制单元5按照从处理器4接收的所述指令控制单个存储单元6,所述处理器4利用通信装置通过网络3连接。例如,控制单元5从处理器4接收数据I/O指令,并对存于存储单元6的存储区域的数据I/O执行处理。在所述存储系统1,多个控制处理可以利用所述LU以及用作单元的子数据。此外,控制单元5在控制单元5以及处理器4之间交换用于控制存储系统1的各种指令。
CHA 7具有用于与处理器4及其他存储系统2通过网络3进行通信的通信接口,还具有在处理器4及其他存储系统之间进行交换诸如读和写的数据I/O指令的功能。CHA 7具有未示出的一个处理器,一个存储器以及一个端口(通信控制部)等,并且通过设置逻辑端口以及处理器4及其他存储系统2之间的路径来控制通信。此外,CHA 7通过连接部11控制DKA 10以及CHA之间的数据I/O。CHA 7执行从处理器4的拷贝控制程序46中接收指令和数据的处理或执行对来自处理器4的指令或数据的应答响应的处理。
CHA 7是这样实现的:在一体化电路板上形成的硬件;一个该硬件执行的OS;以及诸如在所述OS上运行的应用程序的软件。每个CHA 7都与控制终端160一起连接至一个内部LAN并可以相互通信。这样,可以从控制终端160传送CHA 7执行的程序并安装所传送的程序。
CHA 7可以具有这样一种配置(CHN),即具有例如NAS(网络连接存储)的功能。控制单元5与处理器4或备份设备900利用上述CHN通过作为网络3的所述LAN进行通信。例如,CHA 7从处理器4接收所述文件访问请求。并且,通过查找所述文件的存储地址以及数据长度等等,和输出相应于最终的访问请求的I/O请求,执行对存储设备6的访问。注意,所述I/O请求包括访问类别,诸如首部地址、数据长度以及数据的读或写。此外,在写所述数据的情况下,I/O请求可以包括写数据。
此外,CHA 7可以以下述方式进行配置(CHF),以便提供例如相应于所述SAN的功能。控制单元5在处理器4以及支持SAN的备份设备900之间利用CHF通过SNA建立通信。遵循光纤信道协议把块访问请求从处理器单元4传送到存储系统1。例如,CHA 7从处理器4接收块访问请求。由此,存储系统1可以向处理器4提供高速可访问数据存储服务。
此外,CHA 7可以配置为提供相应于配置的功能,该配置为处理器4连接至控制单元5例如不插入LAN和SAN等。在这种情况下,处理器4和控制单元5之间的通信是遵循诸如FICON(光纤连接)(注册商标)这样的通信协议进行的。按照诸如所述FICON这样的协议,从处理器4传送所述块访问请求到存储系统1。例如,CHA 7从处理器4接收一个块访问请求。由此,存储系统1可以向作为主计算机的处理器4提供数据存储服务。
使用作为CHA 7的混合CHN和CHF等,存储系统1可以连接到不同的网络。特别地,存储系统1可以具有SAN-NAS集成存储系统,其中存储系统1使用CHN连接到LAN,使用CHF连接到SAN。
连接部11互相连接CHA 7,共享存储器9,高速缓冲存储器8和DKA 10。通过连接部11在CHA 7,共享存储器9,高速缓冲存储器8和DKA 10中交换数据和指令。连接部11以例如交叉转换的高速总线进行配置,该交叉转换例如通过高速转换执行数据传输。连接在CHA之间,高速失败等变成可能。
高速缓冲存储器8可从CHA 7和DKA 10访问,并且主要用于存储数据(用户数据)。例如,暂存在CHA 7和DKA 10之间要转移的I/O数据,也就是来自处理器4的写数据和来自存储设备6的读数据。
共享存储器9可从CHA 7和DKA 10访问,并且主要用于存储控制信息和指令等。例如,存储如LU信息和对控制信息的控制信息。在第一实施例的情况下,包括复制源保存信息22和复制目的地23的控制信息保存在共享存储器9,并且基于由多拷贝生成程序20的处理被控制。注意,可以采用例如在高速缓冲存储器8,存储设备6上的系统设备等而不是共享存储器9的存储器中存储控制信息的处理形式。
DKA 10控制存储设备6。DKA 10具有未示出的处理器,存储器和端口(通信控制部)等,并且基于CHA 7的指令执行数据读/写等到存储设备6的存储区域的控制。此外,DKA 10可以对多个存储设备6执行RAID控制。在存储系统1和2中或者在存储系统1和2之间,数据复制处理使用LU中的特定子数据,例如使用作为单元的块,一段(track)和文件等是可能的。
DKA 10例如按照CHA 7从处理器4接收的写指令将数据写入到存储设备6。此外,DKA 10通过由CHA 7传送的逻辑地址指令将数据访问请求转换为到物理地址指令的物理磁盘的数据访问请求。在存储设备6中的物理磁盘是由RAID控制的情况下,DKA 10按照RAID配置执行数据访问。可能通过多个存储设备6配置相应于特定RAID级的RAID组。RAID组包括例如按照诸如RAID 1+0或RAID 5的RAID级的多个存储设备。在存储系统1中,DKA 10使用作逻辑设备(LDEV)的单元处理用于存储设备6的数据存储,该逻辑设备相应于RAID组。在控制设备5中,特别是由DKA 10使得LU与LDEV相关。
在存储设备6上设置安装的LU可从处理器4访问,并且包括:用作存储用户数据的用户LU(也称作数据设备);系统LU(也称作系统设备),用作由CHA 7存储系统控制的控制信息。
此外,CHA 7等作为控制单元(CU)与每个LU相关。CU是由CU序号识别的。由此,可访问的LU被分配给每个CHA 7。此外,可能以多个CHA7共享一个LU的方式相关CHA 7。可能由来自处理器4的拷贝控制程序46的CU号指定且识别CU。
此外,DKA 10也执行存储在存储设备6中的数据拷贝控制和备份控制等。而且,在出现故障时防止数据丢失(灾难恢复)的目的,DKA 10执行将主站点的存储系统1的数据存储拷贝到副站点的存储系统2。各个DKA 10与控制终端160一起通过内部LAN互相连接,并且可以互相通信。由此,由DKA 10执行的程序从控制终端160传送且可以安装。存储设备6由存储系统1中的通信电缆直接连接到DKA 10。此外,存储设备6可以通过网络连接到控制单元5。此外,存储设备6可以与控制单元5集成配置。
注意,在本发明中,已经描述了共享存储器9和高速缓冲存储器8独立于CHA 7和DKA 10安装的配置,但是本发明并不局限于该实施例,并且可以采用提供共享存储器9和高速缓冲存储器8和在每个CHA 7和DKA 10中分布的配置。在这种情况下,连接部11与具有分布共享存储器和高速缓存寄存器的CHA和DKA互相连接。
装备到控制单元5的处理器相应于每个CHA 7和DKA 10具有的处理器。也就是,在本实施例中,允许具有多拷贝生成程序20的控制程序由CHA 7和DKA 10具有的处理器执行,实现多拷贝生成功能。
控制单元5存储和控制作为控制信息的LU控制信息,也就是在存储系统1中的存储器例如共享存储器9中的逻辑卷号,逻辑地址范围,容量,RAID级,主/副状态信息。此外,控制单元5控制逻辑设备号和用于控制相应于LU的逻辑设备(LDEV)的相应性信息。在存储系统1中,不同类型的控制信息段是自动地分配和开放作必要命令。
例如执行在处理器4和存储设备6之间的如下处理。例如,在某个CHA7从某个处理器4接收的数据I/O指令是写指令的情况下,上述CHA 7在共享存储器9中写入写指令,并且同时将从处理器4接收的写数据写入到高速缓冲存储器8中。另一方面,DKS 10监视共享存储器9,并且在检测到写指令写入到共享存储器9中时,DKA 10按照上述指令从高速缓冲存储器8中读取该写数据并将其写入到存储设备6。
此外,在某个CHA 7从某个处理器4接收的数据I/O指令是读指令的情况下,上述CHA 7在共享存储器9中写入读指令,并且同时检查读取目标数据是否在高速缓冲存储器8中。如果读取目标数据是在高速缓冲存储器8中,则CHA 7将数据传送到处理器4。另一方面,如果读取目标数据不在高速缓冲存储器8中,则通过监测共享存储器9而检测到读指令写入在共享存储器9的DKA 10,从存储设备6读取该读目标数据,并将其写入到高速缓冲存储器8,同时,将该结果写在共享存储器9中。并且,如果通过监测共享存储器9检测到读指令已写入在共享存储器9,则CHA 7将数据传送到处理器4。
注意,除了通过插入共享存储器9非直接给出来自CHA 7和DKA 10的数据写和读指令的配置之外,也可以采用例如不插入共享存储器9而直接给出来自CHA 7和DKA 10的数据写和读指令的配置。
(处理器)
图3是显示处理器4的功能块配置的图。处理器4是包括CPU41,存储器42和端口43的计算机,其中连接诸如键盘和鼠标的输入单元44,以及诸如显示器的输出单元45。处理器4例如可以是个人计算机或工作站,或者可以是大型计算机,服务器专用计算机等。在存储器42中,存储拷贝控制程序46和应用程序,并且通过运行这些程序,CPU 41实现不同的功能。拷贝控制程序46是进行处理的程序,该处理用于发出指令到存储系统1,从而实现包括生成存储系统1中数据的多个拷贝的多拷贝生成功能的不同功能,并且为此目的提供用户接口。应用程序47是执行处理器4中通用服务处理等的程序。服务处理包括例如银行的自动出纳机。端口43是连接到网络3的通信界面从而与存储系统1和其它的处理器4等通信。
在常规条件下,通过传送诸如读指令或写指令的数据I/O指令到存储系统1,处理器4读取存储在存储设备6上的数据,或者将数据写入存储设备6。拷贝控制程序46或应用程序47是从例如未示出的CD-ROM或外围存储设备的存储介质读取的或者是通过网络3从外部接收的,然后存储在存储器42中。
处理器4的操作者(用户)通过输入单元44,输出单元45和拷贝控制程序46上的用户界面输入用于存储系统1的指令,从而执行数据存储和拷贝的处理。例如,操作者输入指令从而执行多拷贝生成处理。拷贝控制程序46上的用户界面例如是网络浏览器的GUI的形式或是指令用户界面(GUI)的形式等。拷贝控制程序46基于操作者输入的指令发出相应的指令。处理器4将发出的指令通过端口43和网络3传送到处理请求目的地的存储系统1的控制单元5。处理请求目的地是由控制单元(CU)号和网络地址等识别的。CU号是用于识别CHA 7的信息,负责相应于指令的处理。传送的指令是由控制单元5中的CHA 7的端口接收的。在拷贝控制程序46中,多拷贝生成可以利用作为单元的LU进行请求。使用处理器4的操作者(用户)可以通过拷贝控制程序46的用户界面指定LU单元中的处理。例如,当指定拷贝目标的复制源卷或拷贝目的地的复制目的地卷时,指定逻辑卷号。拷贝控制程序46使得处理器4显示由存储系统1控制的不同类型的信息段的表。例如,可能显示在存储系统1保证的且用户可能使用的LU的表,并且用户可以从这个表中选择拷贝目标等。
(对控制状态)
现在描述存储系统1中的对控制状态。在存储系统1中,按照从存储器4的拷贝控制程序46发出的指令等,改变该控制状态(对控制状态)并且实现基于上述控制状态和改变的处理和控制。通过存储系统1中的内部处理,根据由处理器4的操作者指令建立和生成一对存储卷。在本实施例的情况下,在生成多拷贝中,没有必要执行建立多对的对生成指令的处理。存储系统1具有与多拷贝生成相关的存储卷对和存储卷的控制状态的“单一”状态,“转变”状态,和“分离”状态等。
首先,简要描述常规的对的控制。存储系统1具有控制常规的对的功能。在常规的对控制中,具有作为对控制状态的“单一”状态,“转变”状态和“分离”状态等。存储系统1按照从处理器4的拷贝控制程序46发出的指令等,改变用于一对主卷和副卷的“对”状态和“分离”状态之间的对控制状态。注意,这里所指的“对”是上述对控制状态之一。还未成对的一个存储卷的情形称为“单一”状态。在常规的对控制中,按照来自处理器4的指令(对生成指令),用于建立一对主卷和副卷的处理是在存储系统1中进行的。例如,在存储系统1中的存储区域,成对的存储卷是最新保证的或者是从现存的建立的存储卷中指定的。存储系统1执行将数据从复制源存储卷复制到复制目的地存储卷的初始化处理。并且,上述对的存储卷是以“主”和“副”状态相关的,且对控制状态是作为“对”状态而相关的。“对”状态是控制状态,其中两个存储卷之间的关系的相关方式是,当主卷的数据内容更新时,反映对副卷的数据内容的上述更新。在处于“对”状态的存储卷中,基于例如更新的数据卷和更新的经过时间的条件,通过实行的更新映象处理使副卷的数据内容接近于主卷的数据内容。在“对”状态中,禁止从处理器4到副卷的更新访问。
例如,在存储系统1从处理器4接收用于划分对(对划分指令)的指令时,取消“对”状态,且因此通过转换状态的“复制”状态将对控制状态从“对”状态改变为“分离”状态。在该转换中,为了将主卷的数据内容和副卷的数据内容同步,执行对划分处理。响应上述对划分指令的接收,对主存储卷和副存储卷之间的不同数据根据请求进行数据复制处理,以便以副卷的数据内容和主卷数据内容完全一致的方式建立数据内容。在实现了“分离”状态之后,副卷的数据内容变得与主卷的内容相同。“分离”状态是控制状态,其中的关系是以独立于存储卷对中的副卷的数据的更新执行主卷的数据更新的方式相关的。在“分离”状态中,在“对”状态已经禁止的对副卷的访问被允许了。在“分离”状态中,是以防止主卷映象到副卷的方式控制主卷的更新。在“分离”状态中,副卷例如可以用作主卷之外的数据备份的处理。由“对”状态的这种方式使得主和副存储卷的数据内容保持紧密且条件被改变为“分离”状态的情况下,只需要用于主和副存储卷之间不同数据的映象处理,且可很快完成拷贝的生成。
由于在“分离”状态中,主卷的更新没有映象到副卷,例如实行控制,在“分离”状态期间由更新主卷生成的而没有映象到副卷的数据作为不同数据存储到存储系统1中。并且,当该卷从“分离”状态再次改变为“对”状态时,基于由上述不同数据使副卷的数据内容与主卷排成一行(into line with)的指令(对再同步指令)执行再同步处理。由此,对控制状态从“分离”状态通过转换状态的“复制(再同步)”状态改变为“对”状态。
下面,将描述本实施例的对控制状态。在本实施例的存储系统1生成多个拷贝的情况下,不是总是必须通过“对”状态,但是要执行控制使得作为处理目标的存储卷直接从“单一”状态改变为“分离”状态。通过基于单个多拷贝生成指令的多拷贝生成处理,因而作为整体建立多对,并且每个对的对控制状态都进入了“分离”状态。
图4显示相应于对控制状态的控制单元5控制的对控制表31。对控制表31保存用于控制存储卷对的对控制信息。对于对控制信息,该表保存关于对号码,主卷号,副卷号,对控制状态和组号等的信息。注意,参考符号“#”表示号码。对号码是用于识别对的信息,而且可能通过处理器4侧的对号码的使用,指定作为处理目标的逻辑卷。主卷号和副卷号是用于分别识别主卷和副卷的两段信息,并且相应于由多拷贝生成指令指定的复制源卷和复制目的地卷。对控制状态是指令存储系统1中的对控制的信息。对于对控制状态,“转换”和“分离”等的值是可用的。组号是用于识别上述对所属的一致性组的信息。
在图4显示的示例中,对#1中的对包括主卷#1和副卷#1的存储卷,而对控制状态是“分离”状态且属于组#1的一致性组。在存储系统1中,在多拷贝生成指令的指定的基础上,对#1到#n的n对形成了相同的一致性组。例如,相应于组#1,处理多拷贝生成,只有对#1完成了拷贝处理(在后面讨论),并且是在“分离”状态,而相应于对#2到#n,还没有完成拷贝处理,并且他们是在“转换”状态。
对于对控制状态,“转换”状态是将存储卷从“单一”状态等改变为“分离”状态的处理的中间情形。在多拷贝生成处理的开始之后,一致性组中的每个对都改变为“转换”状态。“分离”状态是完成拷贝处理之后的情形。在拷贝处理的完成之后,从主卷和副卷之间获取同样的数据内容。在“分离”状态之下,允许对副卷的更新访问,并且执行独立处理主卷和副卷的更新的控制。因为在“分离”状态期间允许对副卷的访问,例如通过使用主卷的数据允许处理器4继续联机服务,所以副卷的数据可以分别用于执行例如备份的处理。后面将描述利用副卷的备份处理示例。对于对控制状态,存在“再同步”状态等。当对控制状态从“分离”状态改变为“对”状态时,它是中间处理的状态。按照从“分离”状态改变为“对”状态的指令(对再同步指令)的接收,执行再同步处理,从而将相应于更新的不同数据映象到副卷,该更新的出现是相应于存储系统1中的处于“分离”状态期间的主卷;并且使数据内容成一行。
对控制状态的改变可由处理器4的操作者执行,该操作者输入指令并且通过拷贝控制程序46发出相应的指令。由于对控制状态被改变,控制单元4更新对控制表31的对控制状态。注意,对控制状态的改变除了以在处理器4的操作者输入的指令的基础上的开始的方式之外,可以通过拷贝控制程序46以在特定时间自动开始的方式进行设置。此外,也可能允许处理器4的拷贝控制程序46从连接到网络3的处理器4接收指令并且开始对控制状态。
在存储系统1中,对于多拷贝生成处理中的一对“复制源卷和复制目的地卷”完成改变对控制状态为“分离”状态作为拷贝处理。
(一致性组)
描述存储系统1中控制信息之一的一致性组。当生成多拷贝时,按照复制源卷的指定和由处理器4给定的多个复制目的地卷形成一个一致性组。一致性组是在多拷贝生成处理时作为数据一致性的保密目标的多对的集合。在多拷贝生成处理,对该一致性组中的多对的每个对执行拷贝处理,但是在该情况下,执行控制从而在相关的多存储卷改变为每个对的“分离”状态中保证数据一致性。即时在多拷贝生成处理期间临近该处理的定时,出现从处理器4到复制源或复制目的地数据的更新/查询访问,也保证相关存储卷的数据一致性,存储系统1以上述这样的方式执行如后所述的更新/查询处理。
假定在数据更新或查询时,即在多拷贝生成处理期间来自处理器4的一致性组中的存储卷的数据出现读或写访问。例如,假定没有配备数据一致性保证机制。这时,在任何数据写入出现于复制源卷的情况下,这个更新的数据没有映象到已经历拷贝处理且是在“分离”状态的该对复制目的地卷,但是由拷贝处理映象到还没有经历拷贝处理的该对复制目的地卷,并且该数据非一致性出现于复制目的地卷中。必须避免这种数据非一致性的出现。另一方面,在本实施例的情况下,当多拷贝生成功能中具有数据一致性保证机制,且在拷贝处理期间任何更新或查询访问出现于复制源卷或复制目的地卷时,执行更新/查询处理,其按照当前情形也就是按照相关存储卷的数据状态保证数据一致性。为了控制相关存储卷的数据状态,例如使用如后所述的复制源保存信息22和复制目的地更新信息23的控制信息。
图5显示控制单元5控制的组控制表32。组控制表32保存用于控制一致性组的组控制信息。作为组控制信息,保存了组号和指令接收标记信息等。注意,参考符号″#″表示序号。组号是用于识别一致性组的信息。指令接收标记是一旦一致性组形成为复制源卷和复制目的地卷而建立的信息,该复制源卷和复制目的地卷是从处理器4接收多拷贝生成指令时处理器4侧指定的。或者指令接收标记可以是在处理器4侧指定变为多拷贝生成处理的一致性组时建立的。在多拷贝生成处理中,在对于包括复制源和复制目的地的一致性组开始多拷贝生成处理时,指令接收标记导通,且在完成多拷贝生成处理时关断。通过查询组控制表32的指令接收标记,控制单元5可以识别存储卷是否是在进行多拷贝生成处理。在多拷贝生成处理期间,当存储卷接收到更新/查询访问时,控制单元5查询指令接收标记并且作出判断,以及按照每个状态执行更新/查询处理。
由控制单元5例如将控制表31和组控制表32存储在存储系统1中的共享存储器9中,并且对其进行控制。
(多拷贝生成功能)
多拷贝生成处理将利用存储系统1具有的多拷贝生成功能进行描述。图6显示与存储系统1和包括该存储系统的计算机系统相关的功能块配置的图。存储系统1具有控制单元5的CHA 7和DKA 10中的多拷贝生成程序20,并且多拷贝生成程序20执行包括指令接收处理51,拷贝处理52,转移处理53和更新/查询处理54的处理。在作为存储系统1中的存储器的共享存储器9中,对作为多拷贝生成程序20操作的信息例如指令接收信息21,对控制信息31,组控制信息32,其它的控制信息,复制源保存信息22和复制目的地更新信息等进行保存。此外,在由存储设备6提供的存储区域60中,包括在多拷贝生成处理中是处理目标并且由多个相关LU构成的组61。在组61中,包括复制源卷M,保存卷S,复制目的地卷R(R1到Rn)。也就是,组61包括一致性组和保存卷S。处理器4发出读/写指令(R/W指令)到存储系统1,并从拷贝控制程序46发出多拷贝生成指令(拷贝指令)。
存储系统1的控制单元5,特别是CHA 7接收从处理器4的拷贝控制程序46通过网络3发出的单个拷贝指令。在拷贝指令中,包括处理器4的操作者的一个复制源卷M和多个复制目的地卷R的指定。首先,在控制单元5运行的多拷贝生成程序20执行指令接收处理51。对于指令接收处理51,在接收的拷贝指令的基础上,CHA 7存储指令接收信息21,包括:表示接收到拷贝指令的信息(或拷贝接收本身);以及在存储系统1的存储器例如共享存储器9中的指令所包括的复制源卷M和复制目的地卷R的指定信息。在指令接收信息21中,可以包括指令接收时间等。
然后,在控制单元5的多拷贝生成程序20按照复制源卷M和复制目的地卷R的指定包括的多个LU来建立一致性组。多拷贝生成程序20在组控制表中建立组控制信息。例如,如图5所示,组#1的一致性组是新设置的。而且,例如图4所示,对#1到对#n的n对被设置到对组#1的一致性组,而且每个对的主卷被设置为主卷#1,且副卷被设置为副卷#1到#n。此外,因为已经接收拷贝指令,程序将组控制信息32中的组#1的指令接收标记导通。并且,该控制将对控制信息31的组#1中包括的对#1到对#n的所有对控制状态设置到“转换”状态。
由于组#1的指令接收标记导通,所以对组#1中包括的对识别为它们处于启动多拷贝生成处理的情形中。之后,当在多拷贝生成处理期间,出现从处理器4到作为拷贝处理目标的LU的更新或查询访问时,为保证数据一致性执行更新/查询处理54,并且由此,在保证相关LU的数据一致性时,在指定复制目的地生成多个拷贝。
在指令接收标记导通后,多拷贝生成程序20进行返回响应的处理,该响应表示在指令源对处理器4正常执行多拷贝生成处理。CHA 7将相关的响应传送到在指令源的处理器4。
作为一个处理实例,在拷贝指令接收之后,多拷贝生成程序20在接收对上述对的LU的更新/查询访问的时候,开始对每个指定的对进行拷贝处理52。也就是,从处理器4侧出现到拷贝的卷(无内容,no substance)的访问时,可以开始拷贝的卷的生成内容(拷贝的数据)的处理。用于生成拷贝卷的内容的处理是指用于生成副卷的数据的处理,通过执行从复制源卷M(主卷)改变为复制目的地卷R(副卷)必要的数据复制处理,副卷的数据内容与主卷的数据内容相一致。
此外,在指令接收信息21的基础上对上述一致性组中包括的多对一个接一个顺序地进行拷贝处理52,也完成生成拷贝卷的内容的处理。后面将描述顺序地对多对进行拷贝处理52的多拷贝生成处理。
(生成多拷贝的存储卷)
图7是在第一实施例的存储系统1中显示处理目标的LU和生成的多个拷贝的控制信息的说明图。在每个实施例中,作为与多拷贝生成处理相关的LU,存在复制源卷M,多个复制目的地卷R(R1,R2,…,Rn)和保存卷S。多拷贝生成程序20进行处理,其中将指定的复制源卷M中存储的拷贝目标数据的拷贝生成到多个不同的复制目的地卷R(R1,R2,…,Rn),也就是,相对于在一个多拷贝生成处理的处理目标的多对(对#1到对#n)执行多个拷贝处理52。在每个实施例中,作为一个实例,参考符号“LU”表示生成多个拷贝时的拷贝单元。也就是,在变成指定的复制源卷M的LU中存储的所有数据被指定为拷贝目标数据,并且与拷贝目标数据相同的数据分别存储在变成n个复制目的地卷R的LU中。注意,符号“R”表示多个复制目的地卷是不可分辨的情况。复制源卷M和复制目的地卷R相应于各个对中的主卷和副卷。而且,在每个实施例中,在一对中的复制源卷M和复制目的地卷R之间的关系是树的形式,也就是多个复制目的地卷R和一个复制源卷M相关联作为一对的关系。一个一致性组是由一个复制源卷M和多个复制目的地卷R形成的。
复制源卷M是其中复制源数据在多拷贝生成的时候存储的LU。复制目的地卷R是其中复制目的地数据在多拷贝生成的时候存储的LU。保存卷S是在多拷贝生成期间在控制单元5接收拷贝指令的时候,相应于复制源数据用来进行如后所述的数据一致性安全的保存处理的LU。在来自处理器4的拷贝指令中指定复制源卷M或其包括的复制源数据以及复制目的地卷R。在保存处理是否在存储系统1中执行的设置的基础上,在存储设备6的存储区域保证该保存卷S。例如,在保存处理的执行是必要的时候,在存储系统1中自动保证且使用保存卷S。
由该复制源卷M和多个复制目的地卷R形成多对{对#1,#2,…,#n}(n对)。在多拷贝生成开始的时候,是没有必要建立多对的。所需要的是,来自处理器4的单一拷贝指令中单独指定了相应于多对的复制源和复制目的地,并且通过存储系统1侧执行的处理建立多对。通过在多拷贝生成处理中对于每个对的复制源卷M和复制目的地卷R的拷贝处理52,对控制状态从两个存储卷的每个“单一”状态经过“转换”状态改变为“分离”状态。多拷贝生成处理中的一对的拷贝处理52相应于按照传统拷贝功能的对一分离处理。然而,本实施例与它不同的是,对控制状态不需插入“对”状态而改变为“分离”状态。
复制目的地卷R可以作为复制源卷M放置在相同的存储系统1中,或者可以放置在其它的存储系统2中。或者可以跨越多个存储系统放置。或者,复制目的地卷R可以是已经建立的LU,或者是为多拷贝生成新建立的LU。此外,在存储系统1或存储系统2中保证用于复制源卷M的保存卷S。作为一个示例,下面将描述在相同的存储系统1中所有保证的(secured)复制源卷M,多个复制目的地卷R和保存卷S。然而,多个存储卷可以跨越多个存储系统放置。例如在多个存储卷跨越多个存储系统放置的情况下,由转移处理53通过CHA 7的控制在存储系统之间转移数据。
在按照第一实施例的存储系统1中,基于包括存储系统1的计算机系统中数据存储相关的策略,对于主卷即复制源卷M执行数据保存处理。数据保存处理是与多拷贝生成处理中相关的多个LU中的数据一致性的安全相关的处理。数据保存处理是首先出现对复制源卷M的数据的诸如写指令的更新访问时,数据保存处理是通过将它复制到保存卷S来保存前更新数据的处理。在保存数据之后,后更新数据是写在复制源卷M。是否执行数据保存处理可以由使用处理器4的用户选择。如果执行保存处理,用于保存的保存卷S是为存储系统1中的复制源卷M的数据建立的。
(多拷贝生成中的控制信息)
在图7中,相应于复制源卷M,存储系统1在控制单元5的共享存储器9中生成且保存作为多拷贝生成使用的控制信息的复制源保存信息22。此外,相应于多个复制目的地卷R,存储系统1在控制单元5的共享存储器9中生成且保存复制目的地更新信息23(23-1,23-2,…,23-n)。在控制单元5中的拷贝指令的接收之后,指令接收信息21存储在共享存储器9中的时候,相应于为指定复制源和复制目的地的LU,分别新生成复制源保存信息22和复制目的地更新信息23。通过查询控制信息(22和23),控制单元5判断关于多拷贝生成的存储卷中的数据的保存状态和数据更新状态。
复制源保存信息22是用作控制和识别位图形式的复制源卷M中存储的数据的保存状态的控制信息。复制源保存信息22是每一个复制源卷M生成和保存一个。在该位图中,一比特的导通(ON)(″1″)/关断(OFF)(″0″)相应于复制源卷M中的每段子数据。子数据例如采用块,一段(track)和文件等作为单元。
复制目的地更新信息23是用于控制和识别位图形式的复制目的地卷R中存储的数据的更新状态的控制信息。注意,复制目的地卷R中存储的数据的更新是指通过来自处理器4的写指令等进行数据的更新。必须注意,这不是在拷贝处理52中从复制源卷M侧复制数据的更新。对每个复制目的地卷R生成且保存复制目的地更新信息23。在该位图中,一比特的导通(″1″)/关断(″0″)相应于复制目的地卷R中的每一段子数据。
注意,在本实施例中,以位图的形式表示诸如复制源保存信息22和复制目的地更新信息23的控制信息,但是如果可以识别数据保存和数据更新状态则可以使用其它的形式。
图8是表示复制源保存信息22和复制目的地更新信息23的更新状态的表,该复制源保存信息22和复制目的地更新信息23是生成多拷贝的控制信息。控制单元5在复制源卷M的单元中生成复制源保存信息22,且存储在共享存储器9中。此外,控制单元5在复制目的地卷R的单元生成复制源更新信息22,且存储在共享存储器9中。当接收来自处理器4的生成指令时,控制单元5将复制源保存信息22中比特导通(″1″)。也就是,当复制源保存信息22是新生成时,所有比特都导通。当到保存卷S的保存出现于复制源卷M中的某子数据时,控制单元5更新相应于复制源保存信息22中的上述子数据的比特,也就是关断(″0″)。当出现到复制源卷M的数据的更新访问时,控制单元5查询复制源保存信息22。由于相应的比特是表示信息已保存的关断,所以控制单元5不再执行数据保存处理,并维持相应的比特关断。
类似地,当接收来自处理器4的生成指令时,控制单元5将复制目的地更新信息23中的比特导通(″1″)。也就是,当复制目的地更新信息23是新生成时,所有比特都导通。当任何更新出现在复制目的地卷R中的某子数据时,控制单元5更新相应于复制目的地更新信息23中的上述子数据的比特,也就是关断(″0″)。当出现到复制目的地卷R的数据的更新访问时,控制单元5查询复制目的地更新信息23。如果相应的比特是关断,信息变为已更新,从而即使进一步执行更新处理,相应的比特也维持关断。
在图7中,显示在存储系统1中接收拷贝指令时的初始条件。作为示例,数据″a″作为子数据存储在复制源卷M中。由于拷贝处理52还没有开始,多个复制目的地卷R处于初始条件并且没有数据是相应于复制源卷M的数据″a″的子数据。保存卷S也处于初始条件,没有数据是相应的子数据。此外,作为控制信息,复制源保存信息22的各个比特都是导通(″1″)状态,并且复制目的地更新信息23的各个比特都是在导通(″1″)状态。
(多拷贝生成指令)
从处理器4的拷贝控制程序46发出的拷贝指令中,除了有关指令名,指令源和指令目的地的信息之外,还包括指定复制源卷M和复制目的地卷R的多个信息。例如,在指定的复制源和复制目的地信息中,包括为处理目标的LU的{M,R1,…,Rn}的识别信息,例如包括LU号,由此指定多个对(对#1至对#n)。或者,指定的复制源和复制目的地信息的形式可以是其中指定建立的一致性组。此外,它可以是用于指定复制源卷M和拷贝号n的形式,或者是指定用于生成多个复制目的地卷R的处理目标的存储区域的范围。存储系统1的多拷贝生成程序20是在如拷贝号n的指定的情况下,不由LU号等直接指定复制目的地卷R的形式下运行。多拷贝生成程序20在上述形式下运行,且进行用于合适的选择或重新保证作为拷贝卷的LU的处理。
在多拷贝生成的情况下,处理器4的操作者在屏幕上显示关于可用的LU的信息(LU信息),并确定显示的信息,该LU信息是通过拷贝控制程序46的用户界面在存储系统1中保证的。除了如计算机系统中的存储系统的上述LU信息之外,拷贝控制程序46获取和可以显示与对控制信息31,组控制信息32等相关的不同类型的信息段。处理器4的操作者基于控制信息的确定输入用于生成所希望数据的多个拷贝的指定信息。例如,当用户界面是GUI时,以命令行的形式输入作为指定复制源和复制目的地信息的多段的LU号和拷贝指令中的指令名等。此外,当用户界面是GUI时,操作者从网络浏览器等的菜单中选择拷贝指令,或者从LU控制信息中选择到复制源或复制目的地的LU号,然后在确定其它相关信息后按下执行按钮。处理器4的操作者从屏幕上显示的LU信息中或者是从与对或一致性组相关的信息中选择作为复制源卷M和复制目的地卷R的LU项目。响应于这些指令输入,通过拷贝控制程序20的处理发出单个拷贝指令,并通过网络3传送到具有作为处理请求目的地的复制源卷M的存储系统1。
(更新/查询处理)
将描述存储系统1中多拷贝生成处理的更新/查询处理54。图9到15是描述更新/查询处理54的图。在多拷贝生成处理期间,从处理器4出现到复制源卷M或复制目的地卷R的更新或查询访问时,多拷贝生成程序20进行更新/查询处理54。在更新/查询处理54中,作为基本处理策略,基于在接收拷贝指令和开始多拷贝生成处理时的复制源卷M的数据状态,在一致性组的拷贝处理52中处理来自处理器4的更新或查询访问。基于作为更新/查询访问目标的一对(访问目标对)LU(数据)是否经历拷贝处理52,多拷贝生成程序20执行如更新/查询处理54的不同处理。例如,当更新/查询访问出现在如后叙述的多对的连续拷贝处理52期间时,访问目标对首先执行拷贝处理52,然后执行上述数据的写处理/读处理等的控制。
当更新/查询访问出现在作为处理目标的LU时,多拷贝生成程序20查询有关访问目标对的LU的控制信息(22,,23)并判断数据保存和数据的更新状态。按照访问目标,访问类型和有关LU(上述组61)的数据状态等,多拷贝生成程序20进行:在复制源卷M中的数据保存处理和读/写处理;从复制源到复制目的地的数据复制处理;以及复制目的地卷R中的读/写处理等。此外,基于这些处理更新控制信息(22,23)值。多拷贝生成程序20按照更新/查询处理54合适的选择处理目标对并在拷贝处理52期间完成一致性组的所有对的拷贝处理52。
例如通过指令接收标记的导通/关断的查询等判断拷贝指令和相关LU的更新/查询指令的顺序。也就是,当由控制单元5接收读指令或写指令时,通过查询共享存储器9的组控制信息32的指令接收标记值判断顺序。此外,通过对控制信息31的对控制状态的查询等判断是否相应该对已完成拷贝处理52。如果对控制状态是在“分离”状态,可以明白是已经完成该对的拷贝处理52。
图9是表示与更新/查询处理54相关的多拷贝生成处理的实例的说明图,显示相应于图7的多拷贝生成处理期间的一个情形。多拷贝生成程序20执行多个拷贝处理52(P1到Pn),用于将多对(对#1到#n)指定复制源卷M中存储的作为拷贝目标数据的拷贝,生成n段不同的复制目的地卷(R1到Rn)。在该处理实例中,作为拷贝处理52,执行:对于对#1,将复制源卷M中的拷贝目标数据复制到复制目的地卷R1的相应区域的拷贝处理P1;对于对#2,将复制源卷M中的拷贝目标数据复制到复制目的地卷R2的相应区域的拷贝处理P2;以及对于对#n,将复制源卷M中的拷贝目标数据复制到复制目的地卷Rn的相应区域的相同的拷贝处理Pn。例如顺序地选择一对时,多拷贝生成程序20顺序地执行拷贝处理52(P1到Pn)。
如图7所示,在复制源保存信息22和复制目的地更新信息23(23-1到23-n)中,在接收拷贝指令时,所有比特都导通(″1″)。例如,如图6所示,在输出数据″a″是存储在复制源卷M的某个子数据的状态下,将包括指定的拷贝指令发出,该指定通过使用作为多目标的复制源卷M中的数据″a″将拷贝生成到多个复制目的地卷。在控制单元5的指令接收处理51之后,例如对于多个指定对(对#1到#n)顺序地开始拷贝处理52(P1到Pn)。通过拷贝处理52将复制源卷M中的数据″a″复制到复制目的地卷R中的相应区域。例如,如图9所示,在拷贝处理P1和P2中,顺序地完成了将数据″a″复制到复制目的地卷R1和R2。由此,对#1和对#2被改变为“分离”状态。使用虚线表示对控制状态是“分离”状态。此时,其它的复制目的地卷R是在相应区域中的无数据状态。
例如,假定在从处理P1到P2完成拷贝处理52之后,从处理器4到复制源卷M的数据″a″的更新访问时出现用于写更新数据″b″的写指令。在这种情况下,在上述写指令的接收之后,多拷贝生成程序20首先将前更新数据″a″从复制源卷M的指定位置保存到保存卷S的相应区域,且将复制源保存信息22中的相应比特关断(″0″),之后将后更新数据″b″改写到复制源卷M的指定位置。然后,通过使用保存卷S中的前更新数据″a″执行关于复制源卷M的拷贝处理52。也就是,例如在对#2之后的对#3(没有显示)中,如果使用拷贝处理52的复制源卷M中的前更新数据″b″已经执行到复制目的地的复制处理,在复制目的地卷R中的数据″a″和数据″b″之间出现数据非一致性。然而,使用保存卷S中的前更新数据″a″复制数据,则不会出现数据非一致性。
此外,例如,假定用于写数据″c″的写指令是作为从处理器4到复制目的地卷R1的数据″a″部分的更新访问生成的,也就是,在对#3的拷贝处理52期间的复制部分。在这种情况下,由于在那时多拷贝生成程序20已经完成用于复制目的地R1的拷贝处理52,所以该程序将更新的数据″c″写入且更新到复制目的地卷R1中的数据″a″,且将复制目的地更新信息23-1中相应比特关断(″0″)。
图10A到10D是显示第一实施例的多拷贝生成处理中的更新/查询处理54中控制信息(22和23)对执行处理的相应性的表。在出现更新或查询访问时,该执行处理按照复制源卷M的数据状态(是否保存)和复制目的地卷R的数据状态(是否更新)不同。图10中显示的处理分别相应于图11到图14中显示的流程图和图15中显示的状态转换图。按照存储系统1的每个情形执行处理可以保证一致性组中的数据一致性。
图10A显示当出现复制源卷M中的更新访问时存储系统1中执行更新处理。当控制单元5从处理器4接收用于更新一个复制源卷M的数据的写指令时,控制单元5确认共享存储器9中保存的控制信息。如该表中所示,在复制源保存信息22中相应的比特即由复制源卷M中的写指令相应于写指定位置的比特导通(″1″)的情况下,执行随后的处理。复制源保存信息22中的比特导通表示一个情形,没有保存复制源卷M中的相应的数据,也就是,在上述多拷贝生成处理中没有为复制源卷M中的相应位置执行保存处理。这时,首先,复制源卷M中的前更新数据保存到保存卷S,也就是写处理,并且复制源保存信息22中的相应比特从导通(″1″)更新为关断(″0″)。在保存前更新数据之后,由后更新数据也就是来自处理器4的写数据改写和更新复制源卷M的相应数据。另一方面,当复制源保存信息22中的相应比特关断(″0″)时,执行随后的处理。复制源保存信息22中的相应比特关断(″0″)表示复制源卷M中的相应数据被保存的情况,也就是,在上述多拷贝生成处理中,在复制源卷M的相应位置已经执行保存处理。在这种情况下,还没有保存复制源卷M中的前更新数据,但由后更新数据数据对其进行更新和改写。在多拷贝生成处理期间,在更新访问的出现和相应处理的执行之后,利用保存卷S的保存数据,也就是利用复制源卷M的数据在开始多拷贝生成处理的时候执行该对的拷贝处理52。由此,可以保证一致性组中的数据一致性。
图10B显示当更新访问出现于复制目的地卷R时,存储系统1中执行的更新处理。当控制单元5从处理器4接收更新一个复制目的地卷R的数据的写指令时,控制单元确认共享存储器9中保存的控制信息。当复制源保存信息22的相应比特是导通且复制目的地更新信息23的相应比特是导通时,执行随后的处理。复制目的地更新信息23的相应比特是导通表示复制目的地卷R中的相应数据是处于未更新状态,也就是,对于上述多拷贝生成处理中复制目的地卷R中的相应位置还没有执行写指令的数据更新处理。在这种情况下,首先,将复制源卷M的前更新数据保存到保存卷S,且将复制源保存信息22的相应比特从导通更新为关断。而且由后更新数据即由来自处理器4的写数据对指定复制目的地卷R的相应数据进行写处理,而且将复制目的地更新信息23的相应比特从导通更新为关断。此外,当复制源保存信息22的相应比特是关断且复制目的地更新信息23的相应比特是导通时,对指定复制目的地卷R的相应数据进行写处理,并以相同的方式进行更新,而且将复制目的地更新信息23的相应比特从导通更新为关断。此外,当复制目的地更新信息23的相应比特是关断时,对复制目的地卷R的相应数据进行写处理和更新。复制目的地更新信息23的相应比特维持关断。
图10C显示当查询访问出现于复制源卷M时,存储系统1中执行的查询处理。当控制单元5从处理器4接收用于查询一个复制源卷M的数据的读指令时,控制单元5读取指定复制源卷M的数据并独立于作为控制信息的复制源保存信息22和复制目的地更新信息23的状态将该数据返回到在指令源的处理器4。如果读取的目标数据已经更新了,则将最后更新的数据作为读取的数据返回。
图10D显示当查询访问出现于复制目的地卷R时,存储系统1中执行的查询处理。当控制单元5从处理器4接收用于查询一个复制目的地卷R的数据的读指令时,控制单元5确认共享存储器9中保存的控制信息。当复制源保存信息22的相应比特是导通且复制目的地更新信息的相应比特是导通时,将复制源卷M的前更新数据保存到保存卷S,并将复制源保存信息22的相应比特从导通更新为关断。而且,控制单元5从保存卷S读取保存数据(前更新数据)并将其返回到处理器4。在这种情况下,作为复制目的地卷R,由于其在开始多拷贝生成处理的时候变成返回复制源卷M的数据(例如,数据″a″)的目标,所以可以通过执行上述处理进行。此外,当复制源保存信息22的相应比特是关断且复制目的地更新信息23的相应比特是导通时,两者的比特都保存了,且从保存卷S读取相应保存的数据并返回到处理器4。此外,如果复制目的地更新信息23的相应比特是关断,则读取特定复制目的地卷R的读取目标数据并返回到处理器4。由于读取的目标数据已经更新,所有最后更新的数据作为读取的数据返回。复制目的地更新信息23的相应比特维持关断
下面,参照图11到图14的流程描述每个情况中更新/查询处理54的处理过程。
图11显示相应于图10A的复制源更新处理的流程图。当多拷贝生成程序20在多拷贝生成处理期间从处理器4接收用于更新复制源卷M的数据的写指示时,该程序首先确定相应于复制源保存信息22中的更新目标数据的比特(步骤S111)。当复制源保存信息22的对应比特为导通,即变成未保存时,该程序将复制源卷M的预更新数据保存到保存卷S(步骤S112),并将复制源保存信息22的对应比特由导通更新为关断(步骤S113)。在复制源卷M的预更新数据由后更新数据,即来自处理器4的写数据,改写和更新后(步骤S114)。如果复制源保存信息22在上述S111为关断,即变成已保存时,那么不执行复制源卷M中的对应数据的保存而是由后更新数据进行更新(步骤S114)。
图12显示相应于图10B的复制目的地更新处理的流程图。当在多拷贝生成处理期间从处理器4接收用于更新复制目的地卷R的数据的写指示时,多拷贝生成程序20首先确认相应于复制目的地更新信息23中的更新目标数据的比特(步骤S121)。如果复制目的地更新信息23的对应比特为导通,即变成未更新时,多拷贝生成程序进一步确认复制源保存信息22的对应比特(步骤S122)。进一步,当复制源保存信息22的对应比特为导通,即变成未保存时,多拷贝生成程序将复制源卷M的对应数据保存到保存卷S(步骤S123),并将复制源保存信息22的对应比特由导通更新为关断(步骤S124)。多拷贝生成程序通过后更新数据,即通过来自处理器4的写数据改写并更新复制目的地卷R的更新目标数据(步骤S125),并且将复制目的地更新信息23的对应比特由导通更新为关断(步骤S126)。如果复制源保存信息22在步骤S122中为关断,即变成已保存时,多拷贝生成程序不保存复制源卷M的对应数据而是更新复制目的地更新信息23和复制目的地卷R的更新目标数据(步骤S125,步骤S126)。当复制目的地更新信息23的对应比特在步骤S121中为关断,即变成已更新时,多拷贝生成程序通过后更新数据,改写并更新复制目的地卷R的更新目标数据(步骤S127)。
图13显示相应于图10C的复制源查询过程的流程图。当在多拷贝生成处理期间从处理器4接收用来查询复制源卷M的数据的读指示时,不考虑复制源保存信息22和复制目的地更新信息23的状态,多拷贝生成程序20从指定的复制源卷M读取将作为读取目标的数据并将其返回到作为指示源的处理器4(步骤S131),其中复制源保存信息22和复制目的地更新信息23是控制信息。
图14显示相应于图10D的复制目的地查询过程的流程图。当在多拷贝生成处理期间从处理器4接收用来查询复制目的地卷R的数据的读指示时,多拷贝生成程序20确认相应于复制目的地更新信息23中的读取目标数据的比特(步骤S141)。当复制目的地更新信息23的对应比特为导通,即变成未更新时,多拷贝生成程序20进一步确认复制源保存信息22的对应比特(步骤S142)。如果复制源保存信息22的对应比特为导通,即变成未保存时,多拷贝生成程序20将复制源卷M的对应数据保存到保存卷S(步骤S143),并将复制源保存信息22的对应比特从导通更新为关断(步骤S144)。进一步,多拷贝生成程序20从保存卷S读取对应的已保存数据(前更新数据)并将其返回到处理器4(步骤S145)。如果复制源保存信息22的对应比特在上述步骤S142为关断时,由于该数据已经保存,多拷贝生成程序20不执行保存处理,而从保存卷S读取并返回该已保存数据(步骤S145)。如果复制目的地更新信息23的对应比特在上述步骤S141为关断,即变成已更新时,多拷贝生成程序20读取指定复制目的地卷R的读取目标数据并将其返回到处理器4(步骤S146)。
图15是当在多拷贝生成处理中进行更新/查询处理52时,复制源保存信息22和复制目的地更新信息23的状态转换图。该图中“导通—导通”状态表示:左侧的复制源保存信息22的比特为导通,且同时右侧的复制目的地更新信息23的对应比特为关断。类似地,另一状态同样表示:复制源保存信息22的比特和复制目的地更新信息23的比特的“导通—关断”组合。图中的箭头标志表示,来自处理器4的访问的发生以及与更新/查询处理54相关的状态转换。例如,对处于“导通—导通”状态的复制源卷M的查询访问保持不变,对复制源卷M的更新访问和对复制目的地卷R的查询访问变成“关断—导通”状态,以及对复制目的地卷R的更新访问变成“关断—关断”状态。其他的状态同样根据更新/查询处理54如图所示地改变。
(多拷贝生成处理的流程)
图16是第一实施例中存储系统1中的多拷贝生成处理的流程图,特别地,表示当对多个指定的对依次进行拷贝处理52时的处理过程的示例。在这个处理过程中,基于指示接收信息21依次对属于一致性组的多个对中的每个对进行拷贝处理52。通过执行从复制源到复制目的地的必要的数据复制处理以及通过进行生成拷贝卷的拷贝处理52将每个对依次变成为“分离”状态。多拷贝生成程序20查询控制信息,例如为复制目的地保存信息22、复制目的地更新信息23、对控制信息31和组控制信息32,判断在复制源卷M或复制目的地卷R中数据的保存或更新状态,并在其判断期间对该多个对依次执行拷贝处理52。可以根据更新/查询处理52等的发生适当地选择连续的拷贝处理52的对处理顺序。
首先,在控制单元5上的多拷贝生成程序20从处理器4接收拷贝指示并进行在存储系统1中存储指示接收信息21的指示接收处理(步骤S1)。例如,已从处理器4接收拷贝指示的CHA7,进行在共享存储器9中存储指示接收信息21的处理,该指示接收信息21包括指定的复制源和复制目的地信息等。然后,多拷贝生成程序20基于指示接收信息21以组控制信息32建立一致性组,该一致性组包括复制源卷M和多个复制目的地卷R。进一步,多拷贝生成程序20将该组的指示接收标记改变为导通。此外,必要时,多拷贝生成程序20生成相应于该组的控制信息,例如复制源保存信息22和复制目的地更新信息23,并将其存储在共享的存储器9中(步骤S2)。
当指示接收标记改变为导通时,多拷贝生成程序20开始多拷贝生成处理(步骤S3)。例如,当共享存储器9中存储新的指示接收信息21时,DKA 10通过查询指示接收信息21开始多拷贝生成处理。在随后的步骤(步骤S4到步骤S8)中,多拷贝生成程序20对包含在该一致性组中的多个对的每一对依次执行拷贝处理52。
在接收拷贝指示之后并且在多拷贝生成程序20对每个对执行拷贝处理52之前,多拷贝生成程序20检查复制源卷M或复制目的地卷R是否发生了任何更新/查询访问(步骤S4)。如果发生任何的更新/查询访问(步骤S4,是),则多拷贝生成程序20根据在各种访问发生时相关LU的数据状态执行更新/查询处理54,以保证一致性组中数据的一致性(步骤S5)。例如,当通过CHA7从处理器4接收写指示或读指示并且上述指示存储在共享存储器9中时,DKA 10执行更新/查询处理54。
当没有发生更新/查询访问时(步骤S4,否),多拷贝生成程序20对随机选择的一个对执行拷贝处理52(步骤S6)。在拷贝处理52中,具有复制源卷M的存储系统1基于表示复制处理位置的指针在预定的数据单元例如首(track)单元中依次将复制源卷M中的拷贝目标数据复制到复制目的地卷R中的对应位置。例如,DKA 10在高速缓冲存储器8上首先从与存储设备6上的复制源卷M对应的LDEV读取拷贝目标数据,然后将读取的数据写入与存储设备6上的复制目的地卷R对应的LDEV中。如果复制目的地卷R位于不同于存储系统2中的复制源的任何区域时,通过转移处理53经由CHA 7和网络3转移拷贝目标数据,并在CHA 7临时地将该数据缓存在转移站的存储系统2之后,将该数据写入存储系统2中的复制目的地卷R中。
在拷贝处理52中,当完成对一个对的数据复制处理并且生成拷贝卷时,多拷贝生成程序20在对控制信息31中将对应对的对控制状态从“转换状态”改变为分离状态(步骤S7)。
在拷贝处理52后,多拷贝生成程序20通过例如查询对控制状态,检查属于该一致性组的所有对的拷贝处理52是否已经完成(步骤S8),并重复拷贝处理52直到完成了对所有对的处理。在完成对所有对的拷贝处理52后(步骤S8,是),多拷贝生成程序20将组控制信息32中的指示接收标记改变为关断(步骤S9)。通过将指示接收标记改变成关断识别在对应的一致性组中的多拷贝生成处理的完成。并且,多拷贝生成程序20例如通过CHA 7将用于报告指定数量的拷贝的生成已经完成的响应返回到作为指示源的处理器4(步骤S10)。
注意,关于更新/查询处理54(步骤S5),即使在拷贝处理52期间发生任何的更新/查询访问,也可以在完成对所有对的拷贝处理52后控制有关数据的更新/查询处理,而无需有关数据的更新/查询处理。在这种控制情况下,为了控制而延迟到处理器4的数据的更新/查询的响应。
通过前述处理,在第一实施例的存储系统中,在从处理器4的拷贝控制程序46发出生成多个拷贝指令的时候,建立多个LU的对的多个对生成指令不再是必要的。仅仅通过单个拷贝指令来指定多个复制源和复制目的地,在存储系统1中建立该多个对并且生成分离状态,即副卷,该副卷变成主卷的多个拷贝卷,变成可与主卷无关地访问。此外,即使在多拷贝生成处理期间的相同时间对相关的LU进行任何更新/查询访问,以保证数据一致性处理该数据的更新/查询。进一步,可以通过由多拷贝生成功能所生成的多个拷贝完成有效的处理,例如备份处理。
(使用多拷贝的处理示例)
图17是通过使用由多拷贝生成功能所生成的多个拷贝卷将备份处理作为存储卷的处理数据的示例来进行描述的说明图。例如,处理器4a和4b通过网络3连接到存储系统1。处理器4a使用存储系统1中的复制源卷M连续不断地执行连续的联机服务。即,处理器4a访问数据,例如在生成多个拷贝之前和之后执行对复制源卷M的数据读/写。当希望将复制源卷M中的多个拷贝生成到正在复制(copy-on)卷R中时,将拷贝指令从任何一个处理器4例如处理器4b发出到具有复制源卷M的存储系统1。并且,通过涵盖存储系统1或者存储系统1和另一存储系统2的多拷贝生成处理,为复制源卷M生成多个拷贝卷#1至#n。例如,将多个拷贝卷#1至#n生成在存储系统1的存储区域中。在这个多拷贝生成处理期间,处理器4a和4b可以具有对复制源卷M进行更新/查询访问。对于处理器4b,使由多拷贝生成处理所生成的多个拷贝卷#1至#n的每一个拷贝可以独立于复制源卷M而利用。例如,处理器4b可以使用拷贝卷#1执行到备份设备900的数据备份处理。此外,可以适当地将其他的拷贝卷#2至#n用作其他处理,例如测试或者分批处理。
作为备份处理,例如可以通过连接备份设备900到处理器4b,在处理器4b的外围进行备份处理。在这种情况下,可以由处理器4b获得存储在存储系统1中的拷贝卷#1的备份数据并将该备份数据从处理器4b存储到备份设备900。此外,例如,也可能将该数据从存储系统1直接通过网络3而无需介入处理器4b转移到备份设备900。而且,例如,利用存储系统1或者复制源卷M的处理器4a,通知执行该备份处理的处理器4b的LU号,并使处理器4b能进行该备份处理。
关于多拷贝生成功能,除了期望执行例如上述备份处理的各种处理的情况之外,对由于写数据具有不能存储在单个存储卷而通过多个存储卷存储写数据的情况或者对在该多个存储卷中自动地存储一段文件数据的控制的情况,多拷贝生成功能是有效的。
(第二实施例)
接下来,说明根据本发明的第二实施例。图18至27是用于说明第二实施例的存储系统1B的图。第二实施例的存储系统1B是一种处理形式,该处理形式支持在多拷贝生成处理期间不执行保存处理并且不将保存卷S提供到复制源卷M的数据这种情况。在第二实施例的存储系统1B中,不对复制源卷M的数据执行数据存储处理,并且,甚至在任何更新和查询访问发生到复制源卷M或复制目的地卷R的数据时,处理更新和查询。该存储系统1B的硬件配置以及包含第二实施例中的存储系统1B的计算机系统与图2中所示的第一实施例相同。
图18是说明在存储系统1B中和包含第二实施例的存储系统1B的计算机系统中的多拷贝生成功能相关的功能模块配置的图。在包括处理器4和网络3的计算机系统中,存储系统1B位于主站点,存储系统2B位于副站点。存储系统1B通过控制单元5执行多拷贝生成程序20B。多拷贝生成程序20B运行的处理包括:指令接收处理51B;拷贝处理52B;转移处理53B;以及更新/查询处理54B。在存储系统1B的共享存储器9中,将指令接收信息21B、对控制信息31、组控制信息32、其他控制信息以及复制信息24等存储作为多拷贝生成程序20B所处理的信息。此外,在存储设备6提供的存储区域60B中包括组61B,该组61B是在多拷贝生成处理中的处理目标并由多个有关的LU组成。在组61B中,包括复制源卷M和复制目的地卷R{R1--Rn}。即,组61包括一致性组。处理器4将读/写指令(R/W指示)发给存储系统1,也从拷贝控制程序46B发出多拷贝生成指令(拷贝指令)。与第一实施例主要不同在于:复制信息24存储在共享存储器9中;未保存卷S提供在存储设备6的存储区域中等等。多拷贝生成程序20B执行多拷贝生成处理而无需使用保存卷S。复制信息24是用于识别从与拷贝处理52B相关的复制源卷M到复制目的地卷R的数据复制状态的控制信息。
由多拷贝生成程序20B执行的处理的概况与第一实施例中的相同。即,多拷贝生成程序20B从处理器4的拷贝控制程序46B接收单个拷贝指令,执行指令接收处理51B,并将包含指定复制源卷M和复制目的地卷R的信息的指令接收信息21B存储在共享存储器9中。此外,基于上述复制源和复制目的地的指定,多拷贝生成程序20B在组控制信息32和对控制信息31中建立包括多个LU的一致性组。进一步,多拷贝生成程序20B在组控制信息32中将指令接收标记变成导通。并且,多拷贝生成程序20B将对控制信息31中所有对控制状态都设置为“转换”状态。当指令接收标记变成导通时,多拷贝生成程序20B开始多拷贝生成处理,并通过拷贝处理52B和转移处理53B执行将多个拷贝卷生成为多个对的处理。此后,在多拷贝生成处理期间,如果来自处理器4的更新或查询访问发生在作为拷贝处理目标的LU,则在该指定的复制目的地生成了多个拷贝,同时通过执行保证数据一致性的更新/查询处理54B来保证相关LU的数据中的数据的一致性。在完成拷贝指令接收后,在接收对相关对的LU的更新/查询访问时,多拷贝生成程序20B开始每个对的拷贝处理52。此外,在指令接收信息21B的基础上对包含在相关一致性组中的多个对中的每个对依次进行拷贝处理52B,也可以执行生成拷贝卷的内容的处理。
图19是显示在由第二实施例的存储系统1B进行多拷贝生成处理期间作为处理目标的LU和控制信息的说明图。作为与多拷贝生成处理相关的LU,有复制源卷M和多个复制目的地卷R{R1,R2,…,,Rn}。多拷贝生成程序20B进行这样的处理,该处理用于一个多拷贝生成处理中,将存储在指定的复制源卷M中的拷贝目标数据的拷贝生成作为处理目标的多个对(对#1至#n)中的多个不同的复制目的地卷R{R1,R2,…,Rn}。一个一致性组是由一个复制源卷M和多个复制目的地卷R形成。基于是否在存储系统1中进行保存处理这样的设置,保证在存储设备6的显示区域中的未保存卷S。该多个对(n对)(对#1,#2,…,#n}由该复制源卷M和多个复制目的地卷R形成。通过对每一对的复制源卷M和复制目的地卷R的拷贝处理52B,对控制状态从两个存储卷的每个“单一”状态经“转换”改变为分离状态。
在图19中,存储系统1B生成复制信息24并将其保持在与复制目的地卷M相应的共享存储器9中,作为生成多个拷贝的控制信息。复制信息24是用于控制和识别以位图形式保存在复制源卷M中的数据的保存状态的控制信息。每个复制源卷M生成并保存一段复制信息24。在这个位图中,一比特导通(“1”)/关断(“0”)相应于复制源卷M中的每一段子数据。该子数据具有作为单元的块,首以及文件等。在控制单元中的拷贝指令接收之后,将指令接收信息21B存储在共享存储器9中时,相应于指定复制源的LU重新生成复制信息24。控制单元5通过查询控制信息(24)判断从复制源转移到与多拷贝生成相关的存储卷的复制目的地的数据复制状态。
图20是显示复制信息24的更新状态的表。多拷贝生成程序20B在从处理器4接收该拷贝指令时,将复制信息24中的比特变成导通(“1”)。即,当重新生成复制信息24时,所有比特都变成导通。当为了复制源卷M中的某子数据而出现到多个复制目的地卷R{R1至Rn}的数据拷贝时,多拷贝生成程序20B更新,即,将相应于复制信息24中的对应子数据的比特变成关断(“0”)。也就是,当有关复制源卷M中的子数据完成将多个复制目的地卷R{R1至Rn}的数据复制到对应区域时,复制信息24中的对应比特变成关断。
在图19中,显示在存储系统1B中接收拷贝指令时的初始情形。作为一个示例,数据“a”在复制源卷M中被存为子数据。如果拷贝处理52B还没有开始,则多个复制目的地卷R处于初始情形,并且在相应于复制源卷M的数据“a”的子数据中处于无数据状态。此外,复制信息24的各个比特都处于导通(“1”)状态。
然后,将对更新/查询处理54B进行说明。图21至27是用于说明更新/查询处理54B的图。当在多拷贝生成处理期间从处理器4到复制源卷M或复制目的地卷R出现数据更新或查询访问时,多拷贝生成程序20B进行更新/查询处理54B。在更新/查询处理54B中,作为基本的处理手段,在一致性组中的拷贝处理52B中,基于在接收该拷贝指令并开始多拷贝生成处理时的复制源卷M的数据状态处理来自处理器4的更新或查询访问。依据作为更新/查询的访问目标的一对(访问目标对)LU是否经历了拷贝处理52B,多拷贝生成程序20B执行如更新/查询处理54B的不同处理。例如,当在对多个对在连续的数据复制处理期间出现更新/查询访问时,进行的控制用于:预先完成对访问目标对的数据复制处理;然后进行相关数据的写/读处理。
在出现到作为处理目标的LU的更新/查询访问时,多拷贝生成程序20B查询控制信息24并判断访问目标对中的LU的数据复制状态。并且,多拷贝生成程序20B依据访问目标的数据状态、访问类型、相关LU(上述组61B)等等在复制源卷M中进行读/写处理、进行从复制源到复制目的地的数据复制处理以及在复制目的地卷R中进行读/写处理等等。此外,基于这些处理更新控制信息24的值。多拷贝生成程序20B根据更新/查询处理54B适当地选择处理目标对,并在执行拷贝处理52B时完成对一致性组中所有对的拷贝处理52B。
图21是显示与更新/查询处理54B有关的多拷贝生成处理的说明图,并指示在相应于图19的多拷贝生成处理期间的一种状态。多拷贝生成程序20B执行拷贝处理52B(P),该拷贝处理52B(P)将存储在多个对(对#1至#n)的指定复制源卷M中的拷贝目标数据的拷贝生成为n个不同的复制目的地卷R{R1至Rn}。多拷贝生成程序20B执行多个拷贝处理(P1至Pn),该多个拷贝处理用于拷贝处理52B(P)中,将指定复制源卷M中的子数据复制到n个复制目的地卷R{R1至Rn}中。在这个处理示例中,执行了:拷贝处理P1,将用于对#1的复制源卷M中的子数据复制到复制目的地卷R1的对应区域;拷贝处理P2,将用于对#2的复制源卷M中的子数据复制到复制目的地卷R2的对应区域;以及类似地,拷贝处理Pn,将用于对#n的复制源卷M中的子数据复制到复制目的地卷Rn的对应区域。当例如选择每次一个对时,多拷贝生成程序20B依次执行拷贝处理(P1至Pn)。
例如,如图19所示,假设当初始数据“a”存储在复制源卷M的某一子数据内时,包含用于将拷贝生成到多个复制目的地卷R的指定的拷贝指令与设置为拷贝目标的复制源卷M中的数据“a”一起发出。在控制单元5的指令接收处理51B之后,作为数据复制处理52B,依次对多个指定的对(对#1至#n)开始数据复制处理(P1至Pn)。通过数据复制处理52B将复制源卷M中的数据“a”复制到复制目的地卷R中的对应区域。例如,如图21所示,在数据复制处理P1至Pn中依次完成将数据“a”复制到复制目的地卷R1至Rn。这样,对#1至#n移动到分离状态。以虚线表示被改变为分离状态的对控制状态。
此外,例如,在数据复制处理(P1至Pn)期间,假设用于写更新数据“b”的写指示作为从处理器4到复制源卷M中的数据“a”更新访问出现。在这种情况下,多拷贝生成程序20B在其接收写指示后等到数据复制处理(P1至Pn)完成。在数据复制处理完成后,多拷贝生成程序20B将复制信息24中的对应比特变成关断(“0”),并在复制源卷M的指定位置改写后更新数据“b”。例如,假设在用于多个对的数据复制处理(P1至Pn)期间以及在对#2的数据复制处理P2期间出现更新复制源卷M的数据“a”的访问。此时,如果立刻以后更新数据“b”更新前更新数据“a”,则使用后更新数据”b”执行到复制目的地卷R的拷贝处理,借此,在复制目的地卷R之间出现数据“a”和数据“b”的不一致性。因此,在等到完成数据复制处理(P1至Pn)之后,如果后更新数据“b”在复制源卷M的指定位置更新,则不出现数据的不一致性。
此外,例如,假设出现写作为更新访问的更新数据“c”的写指示,该写指示作为从处理器4到复制目的地卷R例如复制目的地卷R2中的对应数据(在与拷贝目标数据“a”对应的位置的数据)的更新访问。在这样的情况下,多拷贝生成程序20B在其接收该写指示后等到数据复制处理(P1至Pn)完成。或者,多拷贝生成程序20B等到访问目标的复制目的地卷R(R2)的数据复制处理完成。或者,多拷贝生成程序20B优先地执行访问目标的复制目的地卷R(R2)的数据复制处理。并且,在数据复制处理完成后,因为数据复制处理(P2)在该点完成,多拷贝生成程序20B写更新数据“c”并更新复制目的地卷R(R2)的对应数据(数据“a”),该对应数据为访问目标。
图22A至22D是显示在第二实施例的存储系统1B中的多拷贝生成处理的更新/查询处理54B中控制信息(24)与执行处理的对应关系的表。当出现更新或查询访问时,执行处理依据从复制源卷M到复制目的地卷R的数据复制状态(复制的或者非复制的)而不同。图22中的处理分别相应于图23至26中所示的流程图以及图27中的状态转换图。通过执行相应于存储系统1B中每种情形中的处理可以保证一致性组中数据的一致性。
图22A显示当出现到复制源卷M的更新访问时在存储系统1中执行的更新处理。当控制单元5从处理器4接收更新一个复制源卷M的数据的写指令时,控制单元5确认保存在共享存储器9中的控制信息。如表中所示,如果复制信息24中的对应比特,即通过在复制源卷M中的写指示而与写入指定的位置对应的比特为导通(“1”)时,执行以下处理。复制源保存信息24的比特为导通表示复制源卷M中的对应数据(更新目标数据)变成未复制的状态,即,相关多拷贝生成处理中复制源卷M的对应数据在多个复制目的地卷R的对应位置没有执行或者没有完成数据复制处理。在这种情况下,首先,将复制源卷M中的对应数据复制到多个复制目的地卷R,并将复制信息24的对应比特从导通(“1”)更新为关断(“0”)。并且,在更新目标数据的数据复制处理后,通过后更新数据,即通过来自处理器4的写数据更新并改写复制源卷M的对应数据。另一方面,当复制信息24的对应比特为关断(“0”)时,执行以下处理。复制信息24的对应比特为关断(“0”)表示复制源卷M中的对应数据变成已复制的状态,即,相关的多拷贝生成处理已经在该多个复制目的地卷R的对应位置执行数据复制处理。在这种情况下,通过后更新数据改写并更新复制源卷M中的更新目标数据。复制信息24的对应比特保持为关断。因此,在所有数据复制到该多个复制目的地卷R后,进行复制源卷M到目标数据的更新。
图22B显示当对复制目的地卷R出现更新访问时在存储系统1中所执行的更新处理。当控制单元5从处理器4接收更新一个复制目的地卷R的数据的写指示时,控制单元5确认保存在共享存储器9中的控制信息。当复制信息24的对应比特为导通时,执行以下处理。在这样情况下,首先,将复制源卷M的对应数据复制到多个复制目的地卷R,并将复制信息24的对应比特由导通更新为关断。在对应数据的数据复制处理后,通过后更新数据,即通过来自处理器4的写数据改写并更新指定的复制目的地卷R的对应数据(更新目标数据)。另一方面,如果复制信息24的对应比特为关断,则以后更新数据将复制目的地卷R中的更新目标数据进行改写并更新。复制信息24的对应比特保持为关断。因此,在将所有该数据复制到多个复制目的地卷R后,进行复制目的地卷R到目标数据的更新处理。或者,在到指定的复制目的地卷R的数据复制处理完成后,进行目标数据的更新处理。
图22C显示对复制源卷M出现查询访问时在存储系统1中所执行的查询处理。当控制单元5从处理器4接收查询一个复制源卷M的数据的读指令时,控制单元5读取指定的复制源卷M的数据并将其返回到位于指令源的处理器4,而不考虑复制信息24的状态。
图22D显示当在复制目的地卷R中出现查询访问时,存储系统1所执行的查询处理。当控制单元5从处理器4接收查询一个复制目的地卷R的数据的读指示时候,控制单元5确认保存在共享存储器9中的控制信息。当复制信息24的对应比特为导通时,执行以下的处理。在这种情况下,首先,将复制源卷M中的对应数据复制到多个复制目的地卷R,并将复制信息24的对应比特由导通更新为关断。并且,在对对应数据的数据复制处理后,读取指定的复制目的地卷R的对应数据(读取目标数据)并将其返回到位于指令源的处理器4。另一方面,当复制信息24的对应比特为关断时,读取指定的复制目的地的对应数据本身,并将其返回到位于指令源的处理器4。
现在参考图23至26的流程图说明每种情况下更新/查询处理54B的过程。
图23表示复制源更新处理流程的流程图,相应于图22A。当多拷贝生成程序20B在多拷贝生成处理期间从处理器4接收更新复制源卷M的数据的写指令时,该程序首先确认相应于复制信息24中的更新目标数据的比特(步骤S231)。当复制信息24的对应比特为导通,即,变成未拷贝时,该程序在复制目的地卷的对应位置执行复制源卷M的对应数据的数据复制处理(步骤S232),并将复制信息24的对应比特由导通更新为关断(步骤S233)。并且,通过后更新数据即通过来自处理器4的写数据改写复制源卷M的对应数据(步骤S234)。在上述步骤S231,复制信息24为关断,即变成已复制,通过后更新数据更新复制源卷M的对应数据(步骤S234)。
图24显示复制源更新处理的流程图,其相应于图22B。当多拷贝生成程序20B在多拷贝生成处理期间从处理器4接收更新复制目的地卷R的数据的写指令时,该程序首先确认相应于复制信息24中的更新目标数据的比特(步骤S241)。当复制信息24的对应比特为导通,即,变成为未复制时,该程序执行到多个复制目的地卷R的复制源卷M的对应数据的数据复制处理(步骤S242),并将复制信息24的对应比特由导通更新为关断(步骤S243)。并且,通过后更新数据,即通过来自处理器4的写数据改写并更新复制目的地卷R的对应数据(步骤S244)。在上述步骤S241,复制信息24为关断,即变成已复制,通过后更新数据更新复制目的地卷R的对应数据(步骤S244)。
图25显示复制源查询的流程图,相应于图22C。当在多拷贝生成处理期间从处理器4接收查询复制源卷M的数据的读指令时,多拷贝生成程序20B从指定的复制源卷M读取作为读取目标的数据,并将其返回指令源的处理器4,而不管复制信息24的状态(S251)。
图26是复制目的地查询处理的流程图,相应于图22D。当多拷贝生成程序20B在多拷贝生成处理期间从处理器4接收查询复制目的地卷R的数据的读指令时,该程序确认相应于复制信息24中的读取目标数据的比特(步骤S261)。当复制信息24的对应比特为导通,即,变成为未复制时,复制源卷M的对应数据执行到多个复制目的地卷R的数据复制处理(步骤S262),并将复制信息24的对应比特由导通更新为关断(步骤S263)。并且,从复制源卷M读取对应数据(读取目标数据)并返回到指令源的处理器4(步骤S264)。如果在上述步骤S261,复制信息24的对应比特为关断,则多拷贝生成程序20B读取复制源卷M中的对应数据,并将其返回到处理器4(步骤S265)。
图27是在多拷贝生成处理中进行更新/查询处理52B时复制信息24的转换状态图。图中的“导通”状态表示复制信息24的比特为导通。“关断”状态表示复制信息24的比特处于“关断”状态。图中的箭头标志表示出现来自处理器4的访问以及与更新/查询处理54B相关的状态变化。例如,在对复制源卷M查询访问情况下,保持“导通”状态不变,而在以下情况下变成“关断”状态:对复制源卷M的更新访问;对复制目的地卷R的更新访问;以及对复制目的地卷的查询访问。上述“关断”状态同样根据更新/查询处理54B改变,如图中所示的。
通过前述处理,即使在类似于第一实施例的第二实施例的存储系统1B中,发出多个对生成指令变得不必要。此外,在多拷贝生成处理的时候,处理数据更新/访问,同时保证数据一致性。进一步,通过使用由多拷贝生成功能所生成的多个拷贝可以获得例如备份处理的有用的处理。
(存储卷的布局模式)
接下来,图28A和28B是显示与每个实施例中的多拷贝生成处理有关的LU布局模式的表。图28A相应于第一实施例的情况,表示在通过提供保存卷S到存储系统1进行保存处理情况下的LU布局模式。模式A和模式B表示复制目的地卷R如复制源卷M一样形成在相同的存储系统1(“机架1”)中这样的情况。模式C和模式D表示复制目的地卷R形成在存储系统2(“机架2”)中而不是形成在形成复制源卷M的存储系统中这样的情况。此外,模式A和模式C表示保存卷S如复制源卷M一样形成在相同的存储系统1(“机架1”)中这样的情况。模式B和模式D表示保存卷S形成在存储系统2(“机架2”)中而不是形成在形成复制源卷M的存储系统中这样的情况。在多拷贝生成处理期间,如果复制源卷M和复制目的地卷R的布局涵盖多个存储系统之间的区域,则可以通过转移处理52等控制存储系统之间的数据转移。
在提供保存卷S的处理形式(第一实施例)的情况下,由于这样的处理形式消耗存储资源。然而,可选择的,当复制源卷M的数据出现更新时,前更新数据受到更大地保护,因此,多拷贝生成中的响应时间变快。即,缩短了处理时间。在没有提供保存卷S的处理形式(第二实施例)的情况下,由于这样的处理形式节约存储资源。然而,可选择的,当复制源卷M的数据出现更新时,前更新数据没有保存,因此,多拷贝生成中的响应时间变慢。即,延长了处理时间。
当复制源卷M和复制目的地卷R形成在相同的存储系统中时,在多拷贝生成期间在该存储系统中可以完成LU之间的数据复制,因此,其优点是可以缩短进行这样的处理所花费的时间。当复制源卷M和复制目的地卷R形成在不同的存储系统中时,由于这样的形式花费更多的时间来复制LU的数据。然而,替换地,即使由于故障如灾难出现而使该存储系统的一个中的LU的数据丢失,存在使用另一个存储系统中的LU可以执行数据的恢复的优点。保存卷S的布局是相同的,并且当复制源卷M和保存卷S形成在相同的存储系统中时,在多拷贝生成期间在存储系统中完成数据保存处理,因此可以缩短该处理所要求的时间。当复制源卷M和保存卷S形成在不同的存储系统中时,由于这样的安排需要更长的时间用于保存处理。然而,替代的,即使一个存储系统中出现任何故障并且因此与保存相关的数据丢失,也可以通过使用另一个存储系统中的LU的数据来恢复该数据。
图28B相应于第二实施例,并表示当存储系统1B中没有提供保存卷S且没有执行保存处理时存储卷的布局模式。模式E表示复制目的地卷R如复制源卷M一样形成在相同的存储系统1B(“机架1”)中这样的情况。模式F表示复制目的地卷R形成在存储系统2B(“机架2”)中而不是形成在形成复制源卷M的存储系统中。与图28A类似,每种模式具有其自身的优点。
(处理核对示例)
将对与每个实施例相关的处理核对示例进行说明。首先,在存储系统中,可以混合地执行装备保存卷S的多拷贝生成处理(第一实施例)以及不装备保存卷S的多拷贝生成处理(第二实施例)。例如,基于识别装备保存卷S的多拷贝生成处理和不装备保存卷S的多拷贝生成处理的信息,通过存储系统选择多拷贝生成处理。例如,处理器4的使用者在拷贝控制程序46的用户界面中输入关于是否使用保存卷S来执行多拷贝生成的指令,并通过拷贝控制程序46将相应于这些的指令发到存储系统1。
图29是显示多拷贝生成处理中的一对复制源卷和复制目的地卷的另一种关系的说明图。在上述的每个实施例的多拷贝生成处理中,一对复制源卷M和复制目的地卷R的关系不仅仅限于上述的树形关系,且可以是多对的“一个复制源卷M和一个复制目的地卷R”平行排列这样的形状关系。复制目的地卷R(R1,R2,…,Rn)相应于多个复制源卷M{M1,M2,…,Mn}中的每一个复制源卷,并形成多个对{对#1,对#2,…,对#n}。当对每个复制源卷M进行保存处理时,将一个复制源保存信息22生成到一个复制源卷M,并将一个复制目的地保存信息23生成到一个复制目的地卷R,因此,与第一实施例类似地控制数据保存和更新状态。类似地,当没有对每个复制源卷M进行保存处理时,对每个复制源卷M生成相应于复制信息24的信息,因此,与第二实施例类似地控制从复制源到复制目的地的数据复制状态。
此外,从服务器4侧接收拷贝指令的、作为目标的LU没有必要限于主卷,而且即使接收拷贝指令的目标为副卷,也可以操作该存储系统,因为该拷贝指令中包括指定复制源卷M和复制目的地卷R的信息,即使通过使用副卷作为处理请求目的地将拷贝指令从处理器4发出,多个存储系统也翻译该拷贝指令并执行适当的处理。
此外,作为处理器4的拷贝控制程序46中的用户界面可以采用一种结构,该结构显示关于将成为多拷贝生成处理的目标的数据的、复制源卷M或复制目的地卷R的内容,或者可以不采用未显示该内容的结构。显示该内容的结构意味着在存储系统中表示LU布局、控制信息等以使操作者可操作。此外,不显示该内容的结构意味着在存储系统中不显示真实的数据排列、控制信息等等,而仅表示出信息,例如数据序号和名称以及拷贝号和名称,以使操作者可操作。
此外,对于将成为多拷贝生成处理的目标的LU的容量没有必要将相同的容量提供到复制源卷M和复制目的地卷R。例如,在某一容量的复制源卷中,当以包含在其中的部分数据组、即与具有容量小于用作拷贝目标的复制源卷M的容量的数据生成多个拷贝时,不能将拷贝生成到具有与复制源卷M相同容量的复制目的地卷R,但可以将该拷贝生成到具有不同容量的复制目的地卷R。
(与先决技术比较)
参考图30A和30B,将与根据本发明的实施例进行比较来说明拷贝功能,该拷贝功能是本发明的发明人已作为本发明的先决技术研究的。图30A和30B是显示拷贝功能的要点的说明图,该拷贝功能作为该先决技术。图30A描述当存储卷的数据生成多个拷贝时存储卷的关系。图30B描述了当没有用于生成多个拷贝中保证数据一致性的机制时,处理顺序的一个示例。如图30A所示,作为示例,将说明为一个复制源卷M生成作为其拷贝的两个复制目的地卷R1和R2的情况。
在多个拷贝的生成过程中,首先,有必要建立对#1和对#2,二者是两对“复制源卷和复制目的地卷”。如图30B所示,经执行作为主机的处理器中的相关拷贝功能的控制程序,必须在时间序列中将对生成指令C1、对生成指令C2和对分离指令C3依次发到存储系统。对生成指令C1是用于建立复制源卷M和复制目的地卷R1的对#1的指令。对生成指令C2是用于建立复制源卷M和复制目的地卷R2的对#2的指令。对分离C3是对于通过执行指令C1和C2所指定并建立的对#1和#2执行必要数据复制,而生成拷贝数据的指令。处理器的操作者通过控制程序上的用户界面输入用于发出指令C1至C3的指令。基于该输入从该控制程序发出对应的指令并将该指令传送到存储系统。
从处理器接收对生成指令C1和C2的存储系统执行生成指定对#1和对#2的处理。即,在存储系统中,这些关联作每个对中的主卷和副卷,并且,对控制状态成为一种“对”状态。通过这个对生成处理,“复制源卷和复制目的地卷”的对#1和对#2进入建立状态。
从而,存储系统响应于指令C3的接收进行对分离处理,该对分离处理通过存储系统的复制处理将复制源卷M的数据拷贝生成到两个复制目的地卷R1和R2。即,依次地执行处理1和处理2,其中,处理1用于将必要数据从复制源卷M复制到复制目的地卷R1,处理2将必要数据从复制源卷M复制到复制目的地卷R2。例如,依次分别将存储在复制源卷M中的拷贝目标数据“a”复制到复制目的地卷R1中的对应区域和复制目的地卷R2中的对应区域。
通过指令C1至C3由上述处理生成两个对#1和#2经“对”状态进入分离状态,变成可以单独地用于更新/查询。此后,如果通过将出现在复制源卷M的数据中的更新反映到多个复制目的地卷R1和R2,期望执行使数据内容彼此一致的处理,则基于对此发出的指令(对再考虑指令)进行数据再同步处理。注意,在这个实施例中,尽管已经说明将多个复制目的地卷生成到一个复制源卷的情况,同样也可以应用到将相关的复制目的地卷生成到多个复制源卷的情况。
在这样的情况下,从由指令C3的处理开始,有必要保证组{M,R1,R2}中的数据的一致性,该组中包含多个相关的存储卷。例如,如图30B所示,在发出指令C3之后,假设刚好在通过存储系统中的处理1将复制源卷M的数据“a”复制到复制目的地卷R1之后,通过来自处理器的指令C4使对复制源卷M的数据“a”的更新,例如数据“b”的写入的出现。当没有用于保证数据的一致性的机制时,在响应于用于该更新的指令C4的存储系统中的处理2,复制源卷M的数据“a”写入数据“b”后,通过处理3将复制源卷M的数据“b”复制到复制目的地卷R2。因此,在复制目的地卷R1的数据“a”和复制目的地卷R2的数据“b”之间出现了数据内容的不一致。
同上述的先决技术比较,在本发明的每个实施例的存储系统中,当需要生成多个拷贝时,没有必要以时间序列从处理器4发出用于建立多个对的指令例如指令C1和C2,而且单个多拷贝生成指令的发出是可用的。因此,减少了对操作者和处理器4的负担。此外,在多拷贝生成处理期间,当通过更新/查询处理54等保证数据的一致性时可以生成拷贝。
如上所述,已经基于实施例对发明人做出的本发明进行了清楚地描述。然而,不用说,本发明也不限于上述实施例,并在不脱离其要旨的范围内可以以不同的方式变更和更改。
本发明可以用于与数据存储控制相关的计算机系统和存储系统。
Claims (20)
1.一存储系统,包括:
存储单元;以及
控制单元,用于控制数据存储到所述存储单元的存储区域,该数据作为存储卷存储,且基于来自经通信装置连接的处理器的指令,输入且输出所述数据,
其中从所述处理器的拷贝控制程序发出包括复制源数据和复制源数据的指定信息的单个拷贝指令,
相应于所述指定信息的多对复制源存储卷和复制目的地存储卷,该指定信息是基于所述单个拷贝指令的接收,所述控制单元具有多拷贝生成功能,用于通过将所述复制源存储卷的拷贝目标数据的拷贝生成到所述复制目的地存储卷中,而生成所述复制源数据的多个拷贝,以及
所述多拷贝生成功能执行:
通过所述通信装置接收所述拷贝指令的处理;
对于包括相应于所述指定信息的多对复制源存储卷和复制目的地存储卷的组,通过执行从所述复制源存储卷到所述复制目的地存储卷的数据复制处理,而生成拷贝的处理;
对所述复制源存储卷的数据提供作为保存目的地的存储区域,控制第一控制信息和第二控制信息,且由此按照至少一个保存和更新的出现而更新数值的处理,该第一控制信息用于识别从所述复制源存储卷到所述保存目的地的所述作为保存目的地保存区域的保存数据的状态,该第二控制信息用于识别所述复制目的地存储卷的数据的更新状态;以及
当从所述处理器出现对包括在所述组中的存储卷的数据的更新或查询的访问时,通过查询所述第一和第二控制信息判断每个段数据的状态,该每个段数据包括对所述访问而成为目标的存储卷的数据和相应于作为一对的存储卷的数据,并基于所述判断将该数据从所述复制源存储卷保存到所述保存目的地存储卷区域,以及使用通过所述保存获得的数据,对所述访问作为目标的数据进行更新或查询。
2.根据权利要求1所述的存储系统,
其中所述多拷贝生成功能通过所述通信装置从所述处理器接收所述拷贝指令,将指示接收信息存储到存储系统的存储器中,该指示接收信息包括表示所述拷贝指令的接收的信息和相应于所述指定信息的复制源和复制目的地的信息,将响应传送到指令源处理器,并且基于所述指示接收信息的查询开始生成多个拷贝。
3.根据权利要求1所述的存储系统,
其中所述多拷贝生成功能对于一组包括相应于所述指定信息的多对复制源存储卷和复制目的地存储卷通过执行必要的数据复制处理将“单一”状态的存储卷的数据的拷贝生成到所述复制目的地存储卷,并将复制源和复制目的地的存储卷对的控制状态转变为“分离”状态。
4.根据权利要求1所述的存储系统,
其中在包括所述复制源存储卷和复制目的地存储卷的一组和所述作为保存目的地存储区域的数据的布局涵盖多个存储系统时,所述多拷贝生成功能进行在所述多个存储系统之间生成所述多个拷贝的处理相关的数据转移处理。
5.根据权利要求1所述的存储系统,
其中对于多对所述复制源存储卷和复制目的地存储卷,所述多拷贝生成功能通过从所述复制源存储卷到所述复制目的地存储卷顺次进行数据复制处理,执行生成拷贝的处理,同时选择作为处理目标的一对。
6.根据权利要求1所述的存储系统,
其中所述多拷贝生成功能执行:基于多个拷贝指令的接收,将相应于包括多对所述复制源存储卷和复制目的地存储卷的一组的指示接收标记导通的处理;更新和查询对于所述访问而成为目标的数据,同时基于所述指示接收标记的查询,判断所述拷贝指令和来自所述处理器的更新或查询访问的次序的处理;以及在完成所述多个拷贝的生成之后,用于将所述指示接收标记关断的处理。
7.根据权利要求1所述的存储系统,
其中所述多拷贝生成功能具有以所述复制源存储卷为单元的所述第一控制信息,和以所述复制目的地存储卷为单元的所述第二控制信息,且以位图配置,该位图相应于所述存储卷中的子数据单元,且识别所述数据的状态,由此,基于所述拷贝指令的接收初始化所有比特并且基于对所述子数据的所述保存或更新的出现,更新相应于所述子数据的一比特。
8.根据权利要求1所述的存储系统,
其中所述多拷贝生成功能执行:在对所述复制源存储卷的数据从所述处理器出现如何更新访问时,用于确定所述第一控制信息的处理;
在所述复制源存储卷的相应数据是在未保存状态的情况下,将所述复制源存储卷中的前更新数据保存到所述作为保存目的地存储区域中并且更新所述第一控制信息,以及在所述保存之后由后更新数据写入所述前更新数据;
在所述复制源存储卷的相应数据是在已保存状态的情况下,由后更新数据而不需保存前更新数据将前更新数据写入到所述复制源存储卷中的处理;
在执行相应于所述更新访问的保存处理后,利用在所述作为保存目的地存储区域中保存的数据生成所述对的拷贝的处理。
9.根据权利要求1所述的存储系统,
其中在从所述处理器出现到所述复制目的地存储卷的数据的更新访问时,所述多拷贝生成功能确定所述第一控制信息和第二控制信息,并且执行:
在所述复制源存储卷的相应数据是在未保存状态并且所述复制目的地存储卷的相应数据是在未更新状态的情况下,将所述复制源存储卷的相应数据存储到所述作为保存目的地存储区域以更新所述第一控制信息,并且由后更新数据对所述复制目的地存储卷的相应数据进行写入以更新所述第二控制信息的处理;
在所述复制源存储卷的相应数据是在保存状态并且所述复制目的地存储卷的相应数据是在未更新状态的情况下,由后更新数据对复制目的地存储卷的相应数据进行写入以更新所述第二控制信息的处理;以及
在所述复制目的地存储卷的相应数据是在更新状态的情况下,由后更新数据写入所述复制目的地卷的相应数据。
10.根据权利要求1所述的存储系统,
其中在从所述处理器出现到所述复制目的地存储卷的数据的查询访问时,所述多拷贝生成功能确定所述第一控制信息和第二控制信息,并且执行:
在所述复制源存储卷的相应数据是在未保存状态并且所述复制目的地存储卷的相应数据是在未更新状态的情况下,将所述复制源存储卷的相应数据存储到所述作为保存目的地存储区域以更新所述第一控制信息,并且读取且返回在所述作为保存目的地存储区域中保存的数据的处理;
在所述复制源存储卷的相应数据是在保存状态并且所述复制目的地存储卷的相应数据是在未更新状态的情况下,读取且返回在所述作为保存目的地存储区域中保存的数据的处理;以及
在复制目的地存储卷的相应数据是在更新状态的情况下,读取且返回在所述复制目的地卷中的相应数据的处理。
11.一种存储系统,包括:
存储单元;以及
控制单元,用于控制数据存储到所述存储单元的存储区域,该数据作为存储卷存储,并且基于经通信装置连接的处理器的指令,输入和输出所述数据,
其中从所述处理器的拷贝控制程序发出包括复制源数据和该复制源数据的复制源的指定信息的单个拷贝指令,
对于相应于所述指定信息的多对复制源存储卷和复制目的地存储卷,该指定信息是基于所述单个拷贝指令的接收,所述控制单元具有多拷贝生成功能,用于通过将所述复制源存储卷的拷贝目标数据的拷贝生成到所述复制目的地存储卷中,而生成所述复制源数据的多个拷贝,以及
所述多拷贝生成功能执行:
通过所述通信装置接收所述拷贝指令的处理;
对于包括多对相应于所述指定信息的复制源存储卷和复制目的地存储卷的组,通过执行从所述复制源存储卷到所述复制目的地存储卷的数据复制处理而生成拷贝的处理;
为将所述拷贝生成到复制目的地存储卷,控制用于识别来自所述复制源存储卷的数据的复制状态的第三控制信息并且基于所述复制的出现而更新数值的处理;以及
在从所述处理器出现到包括在所述组包括的存储卷的数据的更新或查询访问时,查询所述第三控制信息和判断包括所述访问作为目标的数据的每个段数据和成为相应对的存储卷的数据的状态,以及基于所述判断对所述成为目标数据的更新或查询,将相应的数据从所述复制源存储卷复制到所述复制目的地存储卷。
12.根据权利要求11所述的存储系统,
其中所述多拷贝生成功能通过所述通信装置从所述处理器接收所述拷贝指令,将包含指示所述拷贝指令接收信息和相应于所述指定信息的复制源和复制目的地的信息的指示接收信息存储到存储系统的存储器中,将响应传送到指令源处理器,并且基于所述指示接收信息的查询开始生成多个拷贝。
13.根据权利要求11所述的存储系统,
其中对于一组包括相应于所述指定信息的多对复制源存储卷和复制目的地存储卷,所述多拷贝生成功能通过执行必要的数据复制处理,将“单一”状态的存储卷的数据的拷贝生成为所述复制目的地存储卷,并将复制源和复制目的地的存储卷对的控制状态转变为“分离”状态。
14.根据权利要求11所述的存储系统,
其中在包括所述复制源存储卷和复制目的地存储卷的一组数据布局和所述作为保存目的地存储区域涵盖多个存储系统时,所述多拷贝生成功能进行在所述多个存储系统之间生成所述多个拷贝的处理相关的数据转移处理。
15.根据权利要求11所述的存储系统,
其中对于多对所述复制源存储卷和复制目的地存储卷,所述多拷贝生成功能通过从所述复制源存储卷到所述复制目的地存储卷顺次地进行数据复制处理来执行生成拷贝的处理,同时选择作为处理目标的一对。
16.根据权利要求11所述的存储系统,
其中所述多拷贝生成功能执行:基于多个拷贝指令的接收,将相应于包括多对所述复制源存储卷和复制目的地存储卷的一组的指示接收标记导通的处理;更新和查询对于所述访问成为目标的数据,同时基于所述指示接收标记的查询,判断所述拷贝指令和来自所述处理器的更新或查询访问的次序的处理;以及在完成所述多个拷贝的生成之后,用于将所述指示接收标记关断的处理。
17.根据权利要求11所述的存储系统,
其中所述多拷贝生成功能具有以所述复制源存储卷为单元的所述第三控制信息,且由位图配置用于识别相应于所述存储卷中的子数据单元的所述数据状态的状态,并且基于到所述子数据的所述复制的出现初始化相应于所述子数据的一比特。
18.根据权利要求11所述的存储系统,
其中在从所述处理器出现到所述复制源存储卷的数据的任何更新访问时,所述多拷贝生成功能确定所述第三控制信息,并且执行:
在所述复制源存储卷的相应数据是非复制状态的情况下,将复制源存储卷的相应数据复制到成为一对的复制目的地存储卷以更新所述第三控制信息数据的处理;以及
在所述复制源存储卷的相应数据是复制状态的情况下,由后更新数据写所述复制源存储卷的相应数据的处理。
19.根据权利要求11所述的存储系统,
其中在从所述处理器出现到所述复制目的地存储卷的数据的任何更新访问时,所述多拷贝生成功能确定所述第三控制信息,并且执行:
在所述复制源存储卷的相应数据是非复制状态的情况下,将复制源存储卷的相应数据复制到成为一对的复制目的地存储卷以更新所述第三控制信息数据,并且由后更新数据写所述复制目的地存储卷的相应数据的处理;以及
在所述复制源存储卷的相应数据是复制状态的情况下,由后更新数据写所述复制目的地存储卷的相应数据的处理。
20.根据权利要求11所述的存储系统,
其中在从所述处理器出现到所述复制目的地存储卷的数据的查询访问时,所述多拷贝生成功能确定所述第三控制信息,并且执行:
在所述复制源存储卷的相应数据是非复制状态的情况下,将所述复制源存储卷的相应数据存储到成为一对的复制目的地存储卷以更新所述第三控制信息,并且读取和返回所述复制目的地存储卷的相应数据;在所述复制源存储卷的相应数据是复制状态的情况下,读取和返回所述复制目的地存储卷的相应数据。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004212501A JP4575059B2 (ja) | 2004-07-21 | 2004-07-21 | ストレージ装置 |
JP2004212501 | 2004-07-21 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1724980A true CN1724980A (zh) | 2006-01-25 |
CN100417922C CN100417922C (zh) | 2008-09-10 |
Family
ID=35106646
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100692431A Expired - Fee Related CN100417922C (zh) | 2004-07-21 | 2005-05-12 | 存储系统 |
Country Status (4)
Country | Link |
---|---|
US (2) | US7243116B2 (zh) |
EP (1) | EP1628200A1 (zh) |
JP (1) | JP4575059B2 (zh) |
CN (1) | CN100417922C (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101799779A (zh) * | 2009-02-06 | 2010-08-11 | 日本电气株式会社 | 数据处理设备和数据处理方法 |
CN101512495B (zh) * | 2006-09-07 | 2011-10-12 | 国际商业机器公司 | 用于改进的同步数据镜像交换的装置、系统和方法 |
CN103902354A (zh) * | 2014-04-11 | 2014-07-02 | 浪潮电子信息产业股份有限公司 | 一种虚拟化应用中快速初始化磁盘的方法 |
CN106716385A (zh) * | 2014-09-04 | 2017-05-24 | 亿欧费博瑞克股份有限公司 | 以应用程序为中心分布式存储系统和方法 |
CN107122127A (zh) * | 2008-05-29 | 2017-09-01 | 威睿公司 | 向存储硬件的存储操作卸载 |
CN107548492A (zh) * | 2015-04-30 | 2018-01-05 | 密克罗奇普技术公司 | 具有增强指令集的中央处理单元 |
CN109460331A (zh) * | 2018-10-24 | 2019-03-12 | 郑州云海信息技术有限公司 | 一种克隆特性测试方法、装置、设备及存储介质 |
CN109725827A (zh) * | 2017-10-27 | 2019-05-07 | 伊姆西Ip控股有限责任公司 | 管理存储系统的方法、系统和计算机程序产品 |
CN110827861A (zh) * | 2018-08-13 | 2020-02-21 | 希捷科技有限公司 | 使用多个卷提供复制的多致动器驱动器 |
Families Citing this family (62)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4454342B2 (ja) * | 2004-03-02 | 2010-04-21 | 株式会社日立製作所 | ストレージシステム及びストレージシステムの制御方法 |
JP4519563B2 (ja) * | 2004-08-04 | 2010-08-04 | 株式会社日立製作所 | 記憶システム及びデータ処理システム |
JP2006106985A (ja) * | 2004-10-01 | 2006-04-20 | Hitachi Ltd | 計算機システム、ストレージ装置及びストレージ管理方法 |
KR100907451B1 (ko) * | 2004-10-25 | 2009-07-13 | 노키아 코포레이션 | 비디오/오디오 플러그를 통하여 전자 장치에 연결된 주변장치의 감지, 식별 및 동작 |
JP4575119B2 (ja) * | 2004-11-25 | 2010-11-04 | 株式会社日立製作所 | ストレージシステム |
JP4842720B2 (ja) * | 2006-06-29 | 2011-12-21 | 株式会社日立製作所 | ストレージシステム及びデータ複製方法 |
JP4920390B2 (ja) * | 2006-12-05 | 2012-04-18 | 株式会社東芝 | ストレージ装置 |
JP2008171032A (ja) | 2007-01-05 | 2008-07-24 | Hitachi Ltd | ストレージ装置、及びこれを用いた記憶制御方法 |
US8238624B2 (en) * | 2007-01-30 | 2012-08-07 | International Business Machines Corporation | Hybrid medical image processing |
US7876940B2 (en) * | 2007-01-30 | 2011-01-25 | International Business Machines Corporation | Universal image processing |
US20080244031A1 (en) * | 2007-03-31 | 2008-10-02 | Devesh Kumar Rai | On-Demand Memory Sharing |
US8331737B2 (en) | 2007-04-23 | 2012-12-11 | International Business Machines Corporation | Heterogeneous image processing system |
JP2008269374A (ja) * | 2007-04-23 | 2008-11-06 | Hitachi Ltd | ストレージシステムおよびその制御方法 |
US8462369B2 (en) * | 2007-04-23 | 2013-06-11 | International Business Machines Corporation | Hybrid image processing system for a single field of view having a plurality of inspection threads |
US8326092B2 (en) | 2007-04-23 | 2012-12-04 | International Business Machines Corporation | Heterogeneous image processing system |
US7917604B1 (en) | 2007-06-29 | 2011-03-29 | Emc Corporation | Techniques for operating a data storage assembly via a series of web pages and a commit-at-the-end, wizard-style behavior |
US7904682B2 (en) * | 2007-07-19 | 2011-03-08 | International Business Machines Corporation | Copying writes from primary storages to secondary storages across different networks |
US7822892B2 (en) * | 2007-07-19 | 2010-10-26 | International Business Machines Corporation | Managing the copying of writes from primary storages to secondary storages across different networks |
JP4990066B2 (ja) * | 2007-08-21 | 2012-08-01 | 株式会社日立製作所 | 論理ボリュームのペアを利用したデータ保存の方式を変更する機能を備えたストレージシステム |
US8077693B2 (en) | 2007-09-19 | 2011-12-13 | Samsung Electronics Co., Ltd. | Resource remapping and regrouping in a wireless communication system |
US8675219B2 (en) * | 2007-10-24 | 2014-03-18 | International Business Machines Corporation | High bandwidth image processing with run time library function offload via task distribution to special purpose engines |
US9135073B2 (en) | 2007-11-15 | 2015-09-15 | International Business Machines Corporation | Server-processor hybrid system for processing data |
US9332074B2 (en) * | 2007-12-06 | 2016-05-03 | International Business Machines Corporation | Memory to memory communication and storage for hybrid systems |
US8028137B2 (en) * | 2007-12-20 | 2011-09-27 | Seagate Technology Llc | System and method of selective data mirroring in a data storage device |
US8229251B2 (en) | 2008-02-08 | 2012-07-24 | International Business Machines Corporation | Pre-processing optimization of an image processing system |
JP2009211401A (ja) | 2008-03-04 | 2009-09-17 | Hitachi Ltd | ストレージ装置及びその制御方法 |
US8379963B2 (en) * | 2008-03-28 | 2013-02-19 | International Business Machines Corporation | Visual inspection system |
JP2009251972A (ja) * | 2008-04-07 | 2009-10-29 | Nec Corp | ストレージシステム |
JP4980288B2 (ja) * | 2008-04-08 | 2012-07-18 | 株式会社日立製作所 | 計算機システム、記憶領域の状態制御方法及び計算機 |
EP2300921B1 (en) * | 2008-10-30 | 2011-11-30 | International Business Machines Corporation | Flashcopy handling |
WO2010113165A1 (en) * | 2009-04-01 | 2010-10-07 | Kaminario Tehnologies Ltd. | System and method for storage unit building while catering to i/o operations |
US8370302B2 (en) * | 2009-06-02 | 2013-02-05 | Hitachi, Ltd. | Method and apparatus for block based volume backup |
JP4871980B2 (ja) * | 2009-08-10 | 2012-02-08 | 株式会社日立製作所 | データ処理方法とデータ処理プログラムおよびデータ処理システム |
WO2011024221A1 (en) * | 2009-08-26 | 2011-03-03 | Hitachi,Ltd. | Remote copy system |
US8788769B2 (en) | 2010-11-16 | 2014-07-22 | Actifio, Inc. | System and method for performing backup or restore operations utilizing difference information and timeline state information |
US8843489B2 (en) | 2010-11-16 | 2014-09-23 | Actifio, Inc. | System and method for managing deduplicated copies of data using temporal relationships among copies |
US9858155B2 (en) | 2010-11-16 | 2018-01-02 | Actifio, Inc. | System and method for managing data with service level agreements that may specify non-uniform copying of data |
US8402004B2 (en) | 2010-11-16 | 2013-03-19 | Actifio, Inc. | System and method for creating deduplicated copies of data by tracking temporal relationships among copies and by ingesting difference data |
US8904126B2 (en) * | 2010-11-16 | 2014-12-02 | Actifio, Inc. | System and method for performing a plurality of prescribed data management functions in a manner that reduces redundant access operations to primary storage |
US8417674B2 (en) | 2010-11-16 | 2013-04-09 | Actifio, Inc. | System and method for creating deduplicated copies of data by sending difference data between near-neighbor temporal states |
CN103392164B (zh) | 2011-05-31 | 2016-08-10 | 株式会社日立制作所 | 存储系统和存储控制方法 |
JP5838652B2 (ja) | 2011-08-23 | 2016-01-06 | 富士通株式会社 | データコピー処理システム |
US9176881B2 (en) | 2012-01-26 | 2015-11-03 | Hitachi, Ltd. | Computer system and storage control method |
US8793452B1 (en) * | 2012-03-30 | 2014-07-29 | Emc Corporation | Method of guaranteeing replication of data written by a mainframe to a virtual tape |
US9032169B2 (en) * | 2012-05-24 | 2015-05-12 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Method for high performance dump data set creation |
US9304815B1 (en) * | 2013-06-13 | 2016-04-05 | Amazon Technologies, Inc. | Dynamic replica failure detection and healing |
US9015062B2 (en) * | 2013-06-20 | 2015-04-21 | Aol Advertising Inc. | Systems and methods for cross-browser advertising ID synchronization |
US9882980B2 (en) | 2013-10-22 | 2018-01-30 | International Business Machines Corporation | Managing continuous priority workload availability and general workload availability between sites at unlimited distances for products and services |
US9465855B2 (en) | 2013-10-22 | 2016-10-11 | International Business Machines Corporation | Maintaining two-site configuration for workload availability between sites at unlimited distances for products and services |
JP6194784B2 (ja) * | 2013-12-13 | 2017-09-13 | 富士通株式会社 | ストレージ制御装置、制御方法および制御プログラム |
US9836515B1 (en) * | 2013-12-31 | 2017-12-05 | Veritas Technologies Llc | Systems and methods for adding active volumes to existing replication configurations |
CN104994135B (zh) * | 2015-05-25 | 2018-09-21 | 华为技术有限公司 | 存储系统中融合san及nas存储架构的方法及装置 |
CN106775456B (zh) | 2016-11-22 | 2019-11-26 | 华为技术有限公司 | 一种数据处理方法、装置及系统 |
US10416922B1 (en) * | 2017-04-28 | 2019-09-17 | EMC IP Holding Company LLC | Block-based backups for large-scale volumes and advanced file type devices |
US10409521B1 (en) * | 2017-04-28 | 2019-09-10 | EMC IP Holding Company LLC | Block-based backups for large-scale volumes |
US10565062B1 (en) * | 2017-08-03 | 2020-02-18 | Veritas Technologies Llc | Systems and methods for managing replication of data to a remote storage device |
JP7230539B2 (ja) * | 2019-01-30 | 2023-03-01 | ヤマハ株式会社 | 音信号処理装置、音信号処理方法およびプログラム |
US10761768B1 (en) * | 2019-02-28 | 2020-09-01 | Netapp Inc. | Method to address misaligned holes and writes to end of files while performing quick reconcile operation during synchronous filesystem replication |
US11138061B2 (en) | 2019-02-28 | 2021-10-05 | Netapp Inc. | Method and apparatus to neutralize replication error and retain primary and secondary synchronization during synchronous replication |
US11055017B1 (en) | 2020-01-27 | 2021-07-06 | International Business Machines Corporation | Throttling a point-in-time snapshot copy operation within a data consistency application |
US11853585B2 (en) | 2020-01-27 | 2023-12-26 | International Business Machines Corporation | Performing a point-in-time snapshot copy operation within a data consistency application |
US20240028241A1 (en) * | 2022-07-22 | 2024-01-25 | Arm Limited | Memcpy micro-operation reduction |
Family Cites Families (54)
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 |
US5555371A (en) * | 1992-12-17 | 1996-09-10 | International Business Machines Corporation | Data backup copying with delayed directory updating and reduced numbers of DASD accesses at a back up site using a log structured array data storage |
US5446871A (en) * | 1993-03-23 | 1995-08-29 | International Business Machines Corporation | Method and arrangement for multi-system remote data duplexing and recovery |
US5692155A (en) | 1995-04-19 | 1997-11-25 | International Business Machines Corporation | Method and apparatus for suspending multiple duplex pairs during back up processing to insure storage devices remain synchronized in a sequence consistent order |
US5799258A (en) * | 1996-02-22 | 1998-08-25 | Fidanza; Andre | Wheelchair monitoring system |
US5906658A (en) * | 1996-03-19 | 1999-05-25 | Emc Corporation | Message queuing on a data storage system utilizing message queuing in intended recipient's queue |
US6052797A (en) * | 1996-05-28 | 2000-04-18 | Emc Corporation | Remotely mirrored data storage system with a count indicative of data consistency |
US6185601B1 (en) | 1996-08-02 | 2001-02-06 | Hewlett-Packard Company | Dynamic load balancing of a network of client and server computers |
JP3821536B2 (ja) * | 1997-05-16 | 2006-09-13 | 沖電気工業株式会社 | 不揮発性半導体ディスク装置 |
US6199074B1 (en) | 1997-10-09 | 2001-03-06 | International Business Machines Corporation | Database backup system ensuring consistency between primary and mirrored backup database copies despite backup interruption |
US6088697A (en) * | 1997-12-18 | 2000-07-11 | International Business Machines Corporation | Dynamic change management in an extended remote copy operation |
JP3667084B2 (ja) | 1998-05-14 | 2005-07-06 | 株式会社日立製作所 | データ多重化制御方法 |
US6269431B1 (en) * | 1998-08-13 | 2001-07-31 | Emc Corporation | Virtual storage and block level direct access of secondary storage for recovery of backup data |
JP2000132343A (ja) * | 1998-08-20 | 2000-05-12 | Hitachi Ltd | 記憶装置システム |
DE69938378T2 (de) * | 1998-08-20 | 2009-04-30 | Hitachi, Ltd. | Kopieren von Daten in Speichersystemen |
US6308284B1 (en) | 1998-08-28 | 2001-10-23 | Emc Corporation | Method and apparatus for maintaining data coherency |
US6370626B1 (en) | 1999-04-30 | 2002-04-09 | Emc Corporation | Method and apparatus for independent and simultaneous access to a common data set |
DE60043873D1 (de) * | 1999-06-01 | 2010-04-08 | Hitachi Ltd | Verfahren zur Datensicherung |
JP3882461B2 (ja) * | 2000-04-10 | 2007-02-14 | 株式会社日立製作所 | 記憶装置システム及びそのバックアップ取得方法 |
US6363385B1 (en) * | 1999-06-29 | 2002-03-26 | Emc Corporation | Method and apparatus for making independent data copies in a data processing system |
US6539462B1 (en) * | 1999-07-12 | 2003-03-25 | Hitachi Data Systems Corporation | Remote data copy using a prospective suspend command |
US6401178B1 (en) | 1999-12-23 | 2002-06-04 | Emc Corporatiion | Data processing method and apparatus for enabling independent access to replicated data |
US6651075B1 (en) | 2000-02-16 | 2003-11-18 | Microsoft Corporation | Support for multiple temporal snapshots of same volume |
US6708227B1 (en) | 2000-04-24 | 2004-03-16 | Microsoft Corporation | Method and system for providing common coordination and administration of multiple snapshot providers |
JP2001318833A (ja) | 2000-05-09 | 2001-11-16 | Hitachi Ltd | ボリューム複製機能を有する記憶装置サブシステム、および、それを用いたコンピュータシステム |
US6754682B1 (en) | 2000-07-10 | 2004-06-22 | Emc Corporation | Method and apparatus for enabling consistent ancillary disk array storage device operations with respect to a main application |
JP2002091807A (ja) * | 2000-09-14 | 2002-03-29 | Hitachi Ltd | 差分データ取得機能 |
US6799258B1 (en) | 2001-01-10 | 2004-09-28 | Datacore Software Corporation | Methods and apparatus for point-in-time volumes |
US7275100B2 (en) | 2001-01-12 | 2007-09-25 | Hitachi, Ltd. | Failure notification method and system using remote mirroring for clustering systems |
US6728736B2 (en) * | 2001-03-14 | 2004-04-27 | Storage Technology Corporation | System and method for synchronizing a data copy using an accumulation remote copy trio |
US6708285B2 (en) | 2001-03-15 | 2004-03-16 | Hewlett-Packard Development Company, L.P. | Redundant controller data storage system having system and method for handling controller resets |
US6697881B2 (en) | 2001-05-29 | 2004-02-24 | Hewlett-Packard Development Company, L.P. | Method and system for efficient format, read, write, and initial copy processing involving sparse logical units |
US6785696B2 (en) * | 2001-06-01 | 2004-08-31 | Hewlett-Packard Development Company, L.P. | System and method for replication of distributed databases that span multiple primary nodes |
US7149787B1 (en) * | 2001-06-07 | 2006-12-12 | Emc Corporation | Apparatus and method for mirroring and restoring data |
US20030014523A1 (en) | 2001-07-13 | 2003-01-16 | John Teloh | Storage network data replicator |
US6721851B2 (en) | 2001-08-07 | 2004-04-13 | Veritas Operating Corporation | System and method for preventing sector slipping in a storage area network |
US7290017B1 (en) * | 2001-09-20 | 2007-10-30 | Emc Corporation | System and method for management of data replication |
US7155463B1 (en) * | 2001-09-20 | 2006-12-26 | Emc Corporation | System and method for replication of one or more databases |
US7433948B2 (en) | 2002-01-23 | 2008-10-07 | Cisco Technology, Inc. | Methods and apparatus for implementing virtualization of storage within a storage area network |
US7139885B2 (en) * | 2001-12-27 | 2006-11-21 | Hitachi, Ltd. | Method and apparatus for managing storage based replication |
US6862668B2 (en) | 2002-02-25 | 2005-03-01 | International Business Machines Corporation | Method and apparatus for using cache coherency locking to facilitate on-line volume expansion in a multi-controller storage system |
US7007046B2 (en) * | 2002-03-19 | 2006-02-28 | Network Appliance, Inc. | Format for transmission file system information between a source and a destination |
US6907505B2 (en) * | 2002-07-31 | 2005-06-14 | Hewlett-Packard Development Company, L.P. | Immediately available, statically allocated, full-logical-unit copy with a transient, snapshot-copy-like intermediate stage |
US7024528B2 (en) * | 2002-08-21 | 2006-04-04 | Emc Corporation | Storage automated replication processing |
JP4318902B2 (ja) * | 2002-10-15 | 2009-08-26 | 株式会社日立製作所 | 記憶装置システムの制御方法、記憶装置システム、およびプログラム |
US7263593B2 (en) | 2002-11-25 | 2007-08-28 | Hitachi, Ltd. | Virtualization controller and data transfer control method |
JP4704660B2 (ja) * | 2002-12-18 | 2011-06-15 | 株式会社日立製作所 | 記憶デバイス制御装置の制御方法、記憶デバイス制御装置、及びプログラム |
JP4393762B2 (ja) * | 2002-12-19 | 2010-01-06 | 株式会社日立製作所 | データベース処理方法及び装置並びにその処理プログラム |
JP4252301B2 (ja) * | 2002-12-26 | 2009-04-08 | 株式会社日立製作所 | 記憶システム及びそのデータバックアップ方法 |
US7080221B1 (en) * | 2003-04-23 | 2006-07-18 | Emc Corporation | Method and apparatus for managing migration of data in a clustered computer system environment |
US7318133B2 (en) * | 2003-06-03 | 2008-01-08 | Hitachi, Ltd. | Method and apparatus for replicating volumes |
US7124128B2 (en) * | 2003-06-17 | 2006-10-17 | International Business Machines Corporation | Method, system, and program for managing requests to tracks subject to a relationship |
US7302536B2 (en) * | 2003-06-17 | 2007-11-27 | Hitachi, Ltd. | Method and apparatus for managing replication volumes |
TWI229478B (en) * | 2003-12-24 | 2005-03-11 | Benq Corp | Detecting apparatus and method for an audio/video plug |
-
2004
- 2004-07-21 JP JP2004212501A patent/JP4575059B2/ja not_active Expired - Fee Related
- 2004-09-22 US US10/946,034 patent/US7243116B2/en not_active Expired - Fee Related
-
2005
- 2005-03-15 EP EP05251562A patent/EP1628200A1/en not_active Withdrawn
- 2005-05-12 CN CNB2005100692431A patent/CN100417922C/zh not_active Expired - Fee Related
- 2005-05-23 US US11/134,421 patent/US7523148B2/en not_active Expired - Fee Related
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101512495B (zh) * | 2006-09-07 | 2011-10-12 | 国际商业机器公司 | 用于改进的同步数据镜像交换的装置、系统和方法 |
CN107122127B (zh) * | 2008-05-29 | 2020-03-10 | 威睿公司 | 向存储硬件的存储操作卸载 |
CN107122127A (zh) * | 2008-05-29 | 2017-09-01 | 威睿公司 | 向存储硬件的存储操作卸载 |
CN101799779B (zh) * | 2009-02-06 | 2014-06-18 | 日本电气株式会社 | 数据处理设备和数据处理方法 |
US8812530B2 (en) | 2009-02-06 | 2014-08-19 | Nec Corporation | Data processing device and data processing method |
CN101799779A (zh) * | 2009-02-06 | 2010-08-11 | 日本电气株式会社 | 数据处理设备和数据处理方法 |
CN103902354A (zh) * | 2014-04-11 | 2014-07-02 | 浪潮电子信息产业股份有限公司 | 一种虚拟化应用中快速初始化磁盘的方法 |
CN106716385A (zh) * | 2014-09-04 | 2017-05-24 | 亿欧费博瑞克股份有限公司 | 以应用程序为中心分布式存储系统和方法 |
US10776292B2 (en) | 2015-04-30 | 2020-09-15 | Microchip Technology Incorporated | Apparatus and method for protecting program memory for processing cores in a multi-core integrated circuit |
CN107548492A (zh) * | 2015-04-30 | 2018-01-05 | 密克罗奇普技术公司 | 具有增强指令集的中央处理单元 |
US10983931B2 (en) | 2015-04-30 | 2021-04-20 | Microchip Technology Incorporated | Central processing unit with enhanced instruction set |
CN107548492B (zh) * | 2015-04-30 | 2021-10-01 | 密克罗奇普技术公司 | 具有增强指令集的中央处理单元 |
CN109725827A (zh) * | 2017-10-27 | 2019-05-07 | 伊姆西Ip控股有限责任公司 | 管理存储系统的方法、系统和计算机程序产品 |
CN109725827B (zh) * | 2017-10-27 | 2022-05-13 | 伊姆西Ip控股有限责任公司 | 管理存储系统的方法、系统和计算机程序产品 |
CN110827861A (zh) * | 2018-08-13 | 2020-02-21 | 希捷科技有限公司 | 使用多个卷提供复制的多致动器驱动器 |
CN110827861B (zh) * | 2018-08-13 | 2021-04-13 | 希捷科技有限公司 | 使用多个卷提供复制的多致动器驱动器 |
CN109460331A (zh) * | 2018-10-24 | 2019-03-12 | 郑州云海信息技术有限公司 | 一种克隆特性测试方法、装置、设备及存储介质 |
CN109460331B (zh) * | 2018-10-24 | 2021-10-29 | 郑州云海信息技术有限公司 | 一种克隆特性测试方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US7523148B2 (en) | 2009-04-21 |
US20060020754A1 (en) | 2006-01-26 |
JP2006031579A (ja) | 2006-02-02 |
EP1628200A1 (en) | 2006-02-22 |
CN100417922C (zh) | 2008-09-10 |
US20060020640A1 (en) | 2006-01-26 |
JP4575059B2 (ja) | 2010-11-04 |
US7243116B2 (en) | 2007-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1724980A (zh) | 存储系统 | |
CN1308851C (zh) | 数据处理系统中执行远程复制的方法和存储数据的方法 | |
CN1241134C (zh) | 存储域管理系统 | |
CN1869914A (zh) | 存储系统及存储系统的运用方法 | |
CN1020811C (zh) | 动态管理输入/输出(i/o)连接的方法和装置 | |
CN1928840A (zh) | 存储装置虚拟化装置的设备控制交接方法 | |
CN1174319C (zh) | 数据结构管理装置、数据结构管理系统和方法 | |
CN1129841C (zh) | 控制输出的方法和装置 | |
CN1280716C (zh) | 计算机处理方法、分布式计算方法和网络计算方法 | |
CN1190741C (zh) | 用于支持数据事务的设备和方法 | |
CN101075203A (zh) | 存储装置以及其恢复卷生成方法 | |
CN101042676A (zh) | 存储系统以及存储区域释放方法以及存储装置 | |
CN1648867A (zh) | 数据处理系统 | |
CN1577236A (zh) | 存储系统 | |
CN1581105A (zh) | 远程复制系统 | |
CN1696913A (zh) | 存储系统内的数据转移 | |
CN1752947A (zh) | 存储装置、存储控制方法,以及计算机产品 | |
CN1779650A (zh) | 用于自动管理计算环境的复制数据的状态的方法和系统 | |
CN1722108A (zh) | 磁盘驱动器、其控制方法以及磁盘伪造的探测方法 | |
CN1250532A (zh) | 数据共享方法和计算机体系结构 | |
CN1795654A (zh) | 网络环境中的内容同步系统及其方法 | |
CN1705934A (zh) | 文件更新设备 | |
CN101042632A (zh) | 控制物理链接分配的计算机系统及方法 | |
CN1547714A (zh) | 提供用于在存储设备的分布式文件系统中进行信息追踪的元数据的系统和方法 | |
CN1161505A (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 |
Granted publication date: 20080910 Termination date: 20180512 |
|
CF01 | Termination of patent right due to non-payment of annual fee |