KR101476018B1 - Buffer disk in flashcopy cascade - Google Patents

Buffer disk in flashcopy cascade Download PDF

Info

Publication number
KR101476018B1
KR101476018B1 KR1020127022443A KR20127022443A KR101476018B1 KR 101476018 B1 KR101476018 B1 KR 101476018B1 KR 1020127022443 A KR1020127022443 A KR 1020127022443A KR 20127022443 A KR20127022443 A KR 20127022443A KR 101476018 B1 KR101476018 B1 KR 101476018B1
Authority
KR
South Korea
Prior art keywords
volume
flashcopy
function
target volume
new
Prior art date
Application number
KR1020127022443A
Other languages
Korean (ko)
Other versions
KR20120140652A (en
Inventor
크리스토퍼 배리 비켄
존 폴 아곰바
Original Assignee
인터내셔널 비지네스 머신즈 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 인터내셔널 비지네스 머신즈 코포레이션 filed Critical 인터내셔널 비지네스 머신즈 코포레이션
Publication of KR20120140652A publication Critical patent/KR20120140652A/en
Application granted granted Critical
Publication of KR101476018B1 publication Critical patent/KR101476018B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2058Error 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2069Management of state, configuration or failover
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/84Using snapshots, i.e. a logical point-in-time copy of the data

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)
  • Colloid Chemistry (AREA)
  • Materials For Photolithography (AREA)
  • Other Investigation Or Analysis Of Materials By Electrical Means (AREA)

Abstract

카피 기능을 동작시키는 방법은 소스 볼륨에서 타겟 볼륨으로 새로운 플래시카피 기능을 개시하는 단계, 상기 새로운 플래시카피 기능의 타겟 볼륨이 기존의 플래시카피 기능을 위한 소스 볼륨임을 검출하는 단계, 상기 기존의 플래시카피 기능의 타겟 볼륨이 2차 볼륨을 갖는 것을 검출하는 단계, 그리고 상기 새로운 플래시카피 기능의 타겟 볼륨에서 새로운 타겟 볼륨으로 버퍼 플래시카피 기능을 생성하는 단계를 포함한다.A method of operating a copy function includes initiating a new flashcopy function from a source volume to a target volume, detecting that the target volume of the new flashcopy function is a source volume for an existing flashcopy function, Detecting that the target volume of the function has a secondary volume, and creating a buffer flashcopy function from the target volume of the new flashcopy function to a new target volume.

Description

플래시카피 캐스케이드내의 버퍼 디스크{BUFFER DISK IN FLASHCOPY CASCADE}BUFFER DISK IN FLASHCOPY CASCADE}

본 발명은 카피 기능을 동작시키기 위한 방법 및 시스템과 관련된 것이다. The present invention relates to a method and system for operating a copy function.

대규모 조직들에서 데이터의 저장은 데이터의 신뢰성 및 하드웨어 고장시 데이터의 복구능력 모두를 위해서 근본적인 중요성을 가지고 있다. 스토리지 에어리어 네트워크 (SAN) 는 매우 많은 양의 데이터가 신뢰할 만하고 안정적인 방식으로 저장될 필요가 있을때 사용되는 아키텍쳐 (architecture) 이다. 이 기술은 서버들에 대해 디스크 어레이들을 접속시키는 것 같이 원격의(remote) 컴퓨터 저장 디바이스들을 서버들에 접속시키되, 운영 체제 (operating system) 에 대해서는, 마치 로컬 접속된 (locally attached) 것처럼 보이도록 하는 방식으로 접속시키도록 지원하는 네트워크들이 생성될 수 있게 한다. 데이터 스토리지 및 개별 소자들 (individual components) 사이의 하드웨어 연결들 (connections) 모두에 있어서, 대량의 리던던시 (redundancy) 를 포함하는 것은 이들 네트워크들에서는 흔한 일이다.
Storage of data in large organizations is of fundamental importance for both data reliability and data recovery in the event of hardware failure. A storage area network (SAN) is an architecture used when very large amounts of data need to be stored in a reliable and stable manner. This technology allows remote computer storage devices to be connected to servers, such as to connect disk arrays to servers, to make them appear to be locally attached to an operating system Networks to be created can be created. It is common in these networks to include a large amount of redundancy, both in terms of hardware connections between data storage and individual components.

데이터 리던던시를 생성하는 데에는 다양한 방법들이 존재한다. 예를 들면, 플래시카피 기능 (a flashcopy function) 과 같은 기능은 관리자가, 어느 시점에서 (포인트-인-타임), 데이터의 전체 볼륨의 카피들 (point-in-time, full volume copies of data) 을 할 수 있도록 하며, 그 카피들은 곧바로 리드 혹은 라이트 접근 (read or write access) 을 위해서 이용 가능하다. 플래시카피는 자기테이프 상에 백업 (backup) 카피들을 생성하는 환경에서 이용 가능한 표준 백업 툴들 (standard backup tools) 과 함께 사용될 수 있다. 플래시카피 기능은 소스 볼륨의 카피를 타겟 볼륨상에 생성한다. 이러한 카피를, 전술한 바와 같이, 포인트-인-타임 카피 (point-in-time copy) 라 부른다. 플래시카피 동작이 개시되면 (initiated), 소스 볼륨과 타겟 볼륨 사이에 관계가 생성된다. 이 관계가 타겟 볼륨과 소스 볼륨 사이의 “맵핑”(mapping) 이다. 이 맵핑은 소스 볼륨의 포인트-인-타임 카피가 관련된 타겟 볼륨으로 카피되도록 해 준다. 이 볼륨쌍 사이의 관계는 플래시카피 동작이 개시된 때로부터 스토리지 유닛 (storage unit) 이 소스 볼륨의 모든 데이터를 타겟 볼륨으로 카피할 때까지 존재하며, 그 외에는 이 관계가 소멸된다.
There are various ways to create data redundancy. For example, a function, such as a flashcopy function, allows an administrator to set a point-in-time, full volume copies of data at some point (point-in-time) , And the copies are available for read or write access immediately. Flashcopy can be used with standard backup tools available in an environment that creates backup copies on magnetic tapes. The FlashCopy function creates a copy of the source volume on the target volume. This copy is referred to as a point-in-time copy, as described above. When the flashcopy operation is initiated, a relationship is created between the source volume and the target volume. This relationship is a "mapping" between the target volume and the source volume. This mapping allows the point-in-time copy of the source volume to be copied to the associated target volume. The relationship between these volume pairs exists from when the flashcopy operation is started until the storage unit copies all of the data of the source volume to the target volume, otherwise this relationship is lost.

데이터가 물리적으로 카피될 때, 백그라운드 프로세스 (background process) 가 소스 볼륨으로부터 트랙들을 (tracks) 타겟 볼륨으로 카피한다. 백그라운드 카피를 완료하는데 걸리는 시간은 다양한 조건들 (criteria) 에 좌우되는데 예를 들면, 카피되는 데이터의 분량, 진행되는 백그라운드 카피 프로세스들의 수, 그리고 현재 진행중에 있는 기타 처리들 (activities) 등이다. 플래시카피 기능이 동작할 때 카피될 데이터가 실제로 즉각적으로 카피될 필요는 없지만, 소스 볼륨 상의 올드 데이터 (old data) 의 오버라이트 (overwrite) 를 가져오는 업데이트가 일어나기 전에는 카피될 필요가 있다. 그래서, 소스 볼륨 상에서 데이터 변경들이 있는 경우, 오리지널 데이터 (the original data) 가 타겟 볼륨에 카피되는데 소스 볼륨상에 오버라이트가 일어나기 전에 카피된다.
When data is physically copied, a background process copies tracks from the source volume to the target volume. The time it takes to complete a background copy depends on various criteria, such as the amount of data to be copied, the number of background copy processes in progress, and other activities currently in progress. The data to be copied does not need to be actually instantly copied when the FlashCopy function is active, but it needs to be copied before an update that results in an overwrite of the old data on the source volume. So, when there are data changes on the source volume, the original data is copied to the target volume, which is copied before overwriting on the source volume.

그러므로, 플래시카피는 다양한 스토리지 디바이스들 상에서 지원되는 기능(feature)이며, 이는 사용자 혹은 자동화된 프로세스가 데이터의 전체 논리적 볼륨의 거의 동시적인 카피들 (nearly instantaneous copies) 을 하는 것이 가능하게 한다. 소스 디스크의 카피(사본)가 타겟 디스크 상에 만들어 진다. 카피들은 리드 및 라이트 액세스(read and write access) 모두를 위해서 곧바로 (immediately) 이용 가능하다. 플래시카피 같은 임플리멘테이션들 (implementations) 의 공통적인 특징은 상기 카피를 리버스하는 능력 (the ability to reverse) 이다. 다시 말하면, 플래시카피 맵의 소스 디스크에 타겟 디스크의 컨텐츠 (contents) 를 가지고 포퓰레이트 (populate)하는 것이다. 또한 캐스케이드된 임플리멘테이션들에서 플래시카피를 사용하는 것도 가능한데, 이 때 타겟 디스크는 나중에 추가의 (further) 플래시카피를 위해 소스 디스크가 되며 혹은 그 반대가 된다.
Thus, FlashCopy is a feature supported on various storage devices, which makes it possible for a user or an automated process to make nearly instantaneous copies of the entire logical volume of data. A copy (copy) of the source disc is created on the target disc. Copies are immediately available for both read and write access. A common feature of implementations, such as flashcopy, is the ability to reverse the copy. In other words, it populates the source disk of the flashcopy map with the contents of the target disk. It is also possible to use FlashCopy in cascaded implementations, where the target disk becomes the source disk for further FlashCopy later, or vice versa.

상기 그러한 캐스케이드된 스토리지 볼륨들과 플래시카피 기능들을 놓치지 않기 위해서 1차 및 2차 “에프디스크” (fdisks) 를 정의하는 데이터 구조를 제공하는 것이 바람직하다. 에프디스크는 그것과 관련된 스토리지 볼륨을 정의하고 캐스케이드 내에서 플래시카피 기능들의 상하 방향들(the up and down directions)을 정의하는 관련 맵들에 링크를 제공하는 색인 (index) 을 포함하는 논리적 콤포넨트 (a logical component) 이다. 플래시카피 기능이 소스 볼륨과 타겟 볼륨간에 생성될 때, 1차 에프디스크들이 타겟 디스크를 위해 이미 존재하는 경우가 아닌 한, 1차 에프디스크들이 각 스토리지 볼륨을 위해 생성되는데, 만일 1차 에프디스크들이 이미 존재하는 경우에는 타겟 볼륨을 위해 존재하는 그 에프디스크는 2차 에프디스크로 변환되고 새로운 1차 에프디스크가 생성된다. 에프디스크들에 의하여 정의된 데이터 구조를 사용하는 것의 장점은 기존의 다수의 캐스케이드들 내의 다른 스토리지 볼륨들에 대한 IO 리드 및 라이트 액세스들 (the IO read and write accesses) 을 놓치지 않기 위해 위해서 그리고 캐스케이드 내의 정확한 위치로 데이터 리드들 (data reads) 을 보내기 (direct) 위해서 에프디스크가 사용될 수 있다는 것이다.
It is desirable to provide a data structure that defines primary and secondary " fdisks " to avoid missing such cascaded storage volumes and flashcopy functions. The FEF disk defines a storage volume associated therewith and contains a logical component (a) that includes an index that provides a link to the associated maps that define the up and down directions of the flashcopy functions within the cascade logical component. When a flashcopy function is created between a source volume and a target volume, primary FEF disks are created for each storage volume, unless primary FEF disks already exist for the target disk, If it already exists, the existing FEF disk for the target volume is converted to a secondary FEF disk and a new primary FEF disk is created. The advantage of using the data structures defined by the FEF disks is that they do not miss the IO read and write accesses to other storage volumes within the existing multiple cascades, An FEP disk can be used to direct data reads to the correct location.

플래시카피 캐스케이드의 한계는 주어진 라이트 동작을 위해 요구되는 클린 동작들 (clean operations) 의 수를 제한하기 위해서 동시발생 회복 동작들 (concurrent restore operations)의 수를 제한하는 것이 요구된다는 것이다. 예를 들어, A↔B↔C↔D 플래시카피 캐스케이드 (여기서 A, B, C 그리고 D는 그래프 내의 디스크들이고 화살표들은 플래시카피 맵들이며, (A,B)는 디스크 A에서 디스크 B로의 플래시카피 매핑을 나타냄)에서, 상기 캐스케이드는 (A, B), (B, C) 그리고 (C, D)의 맵들을 갖는다. 디스크들과 플래시카피 기능들의 이러한 캐스케이드에서, 디스크 A에 대한 라이트는 디스크 B에 대한 스플릿 라이트 (split write) 를 가져오고, 이는 디스크 B 상에 그 이미지 (the image) 를 유지하기 위해 요구되며 그리고 이것은 디스크들 B 및 C의 클린 리드들 (clean reads) 과 디스크 C 다음에 오는 디스크 D에 클린 라이트들 (clean writes) 을 가져온다. 이런 식으로 캐스케이드 내의 탑 (top) 디스크에 대한 하나의 (single) 리드는 스토리지 볼륨들 상에서 더 나아가 캐스케이드 아래로 (further the down the cascade) 대규모의 클린 동작들 (in a large number of clean operations) 을 가져올 수 있다. 따라서, 이러한 종래기술을 개선하려는 것이 본 발명의 목적이다.The limitation of flashcopy cascade is that it is required to limit the number of concurrent restore operations to limit the number of clean operations required for a given write operation. (A, B, C, and D are disks in the graph, arrows are flashcopy maps, and (A, B) is a flashcopy mapping from disk A to disk B , The cascade has maps of (A, B), (B, C) and (C, D). In this cascade of disks and flashcopy functions, a write to disk A results in a split write to disk B, which is required to keep the image on disk B, Clean reads of disks B and C and clean writes to disk D following disk C In this way, a single lead to the top disk in a cascade can go further on the storage volumes to further the down the cascade to a large number of clean operations. Can be imported. It is therefore an object of the present invention to improve such prior art.

본 발명의 제 1 목적은 카피기능을 동작시키는 방법을 제공하는 것이며, 상기 방법은 소스 볼륨으로부터 타겟 볼륨으로 새로운 플래시카피 기능을 개시하는 단계 (initiating), 상기 새로운 플래시카피 기능의 타겟 볼륨이 기존의 플래시카피 기능을 위한 소스 볼륨임을 검출하는 단계 (detecting), 상기 기존의 플래시카피 기능의 타겟 볼륨이 2차 볼륨을 가짐을 검출하는 단계 (detecting), 및 상기 새로운 플래시카피 기능의 타겟 볼륨으로부터 새로운 타겟 볼륨으로 버퍼 플래시카피 기능 (further the down the cascade) 을 생성하는 단계 (creating) 를 포함하는 방법이다.
A first object of the present invention is to provide a method of operating a copy function, the method comprising initiating a new flashcopy function from a source volume to a target volume, Detecting a source volume for a flashcopy function, detecting that the target volume of the existing flashcopy function has a secondary volume, and detecting a new target from the target volume of the new flashcopy function Creating a < / RTI > buffer with a buffer flashcopy function (further the down the cascade).

본 발명의 제 2 목적은 카피 기능을 동작시키는 시스템을 제공하는 것이며, 상기 시스템은 복수의 스토리지 볼륨과 그것에 연결된 스토리지 볼륨 컨트롤러를 포함하고, 상기 스토리지 컨트롤러는 소스 볼륨으로부터 타겟 볼륨으로 새로운 플래시카피 기능을 개시하며, 상기 새로운 플래시카피 기능의 타겟 볼륨이 기존의 플래시카피 기능을 위한 상기 소스 볼륨임을 검출하고, 상기 기존의 플래시카피 기능의 타겟 볼륨이 2차 볼륨을 갖는 것을 검출하며, 그리고 상기 새로운 플래시카피 기능의 타겟 볼륨으로부터 새로운 타겟 볼륨으로 버퍼 플래시카피 기능을 생성하도록 구성된다 (arranged).
A second object of the present invention is to provide a system for operating a copy function, the system comprising a plurality of storage volumes and a storage volume controller coupled thereto, the storage controller having a new flashcopy function from a source volume to a target volume Detecting that the target volume of the new flashcopy function is the source volume for an existing flashcopy function and detecting that the target volume of the existing flashcopy function has a secondary volume, And to create a buffer flashcopy function from the target volume of the function to a new target volume.

본 발명의 제 3 목적은 카피 기능을 동작시키기 위해 컴퓨터 판독가능 매체상에 컴퓨터 프로그램 제품을 제공하는 것이며, 상기 제품은 소스 볼륨으로부터 타겟 볼륨으로 새로운 플래시카피 기능을 개시하며, 상기 새로운 플래시카피 기능의 타겟 볼륨이 기존의 플래시카피 기능을 위한 상기 소스 볼륨임을 검출하고, 상기 기존의 플래시카피 기능의 타겟 볼륨이 2차 볼륨을 갖는 것을 검출하며, 그리고 상기 새로운 플래시카피 기능의 타겟 볼륨으로부터 새로운 타겟 볼륨으로 버퍼 플래시카피 기능을 생성하기 위한 명령들을 포함한다.
A third object of the present invention is to provide a computer program product on a computer readable medium for operating a copy function, said product initiating a new flashcopy function from a source volume to a target volume, Detecting that the target volume is the source volume for an existing flashcopy function, detecting that the target volume of the existing flashcopy function has a secondary volume, and detecting a new target volume of the new flashcopy function And instructions for creating a buffer flashcopy function.

본 발명의 덕택에, 무제한 (unbounded) 의 플래시카피 회복 동작들을 가능하게 하는, 버퍼된 플래시카피 맵들 (buffered flashcopy maps) 을 제공하는 것이 가능하다. 본 발명의 시스템과 방법은 플래시카피 캐스케이드들의 종래기술의 임플리멘테이션들에서 제약 (restriction) 을 제거하는 절차를 기술한다. 캐스케이드들의 종래기술의 임플리멘테이션들에서는 하나의 라이트는 캐스케이드를 내려가면서 대규모의 클린 동작들을 발생시키는데, 이것은 상기 캐스케이드의 탑 (top) 에서 오리지날 라이트 동작 (the original write action) 의 완료를 늦출 것이다 (slow down). 본 발명은 버퍼된 플래시카피의 개념을 도입한다. 다시 말하면, 플래시카피가 타겟이 2차 볼륨을 갖는 다른 활성 맵 (another active map) 의 소스 상에서 시작될 때 (started), 새로운 공간 효율적 (space efficient) 플래시카피가 생성되고 시작되는데, 이것은 클린 동작들이 캐스케이드 전체로 확산되는 것 (spreading) 을 방지한다.
Thanks to the invention it is possible to provide buffered flashcopy maps that enable unbounded flashcopy recovery operations. The system and method of the present invention describe a procedure for removing restrictions in prior art implementations of FlashCopy cascades. In the prior art implementations of the cascades, one light will cause large clean operations to descend cascade, which will slow the completion of the original write action at the top of the cascade (slow down). The present invention introduces the concept of buffered FlashCopy. In other words, a new space efficient FlashCopy is created and started when the FlashCopy is started on the source of another active map with the target having a secondary volume, Thereby preventing spreading to the whole.

이 방법들은, 타겟 볼륨이 이미 기존의 활성 플래시카피 맵의 소스 볼륨인, 플래시카피 맵의 시작 단계에 여분의 (extra) 단계를 추가한다. 이 단계는 시작되는 플래시카피 맵의 타겟, X,가 활성 플래시 맵, 1,의 소스인지, 상기 맵 1의 타겟, Y,가 2차 에프디스크를 갖고 있는 지를 질문하고, 만일 그 답이 그렇다이면 (if so), X로부터 새로운 공간 효율적 브이디스크 (vdisk) X’로 버퍼 플래시카피를 생성하는 것이다.
These methods add an extra step to the beginning of the FlashCopy map, where the target volume is the source volume of an existing active FlashCopy map. This step queries whether the target of the flashcopy map to be started, X, is the source of the active flash map, 1, the target of the map 1, Y, has a secondary EF disk, and if the answer is yes (if so) to create a buffered flash copy from X to the new space efficient vdisk X '.

본 발명의 종래기술의 예와 본 발명의 새로운 구성의 예를 살펴보자, (B, C) 가 시작될 때는, 캐스케이드들 B↔C 및 C↔D 가 발생되는데 (resulting in), 그 이유는 시작되는 맵의 타겟, C는 맵 C↔D 의 일부 이지만 D는 2 차 볼륨을 갖지 못하기 때문이다. 이제, (A, B) 가 시작될 때는 버퍼 플래시카피 기능 (B, B') 이 생성되고, 시작되는데, 그 이유는 타겟 B가 B→C 의 일부분이고 C는 2차 볼륨을 갖기 때문이다. 이 새로운 버퍼 플래시카피 기능은 캐스케이드 A↔B, B↔B'↔C 그리고 C↔D 를 생성한다. 일단 이것이 생성되면, 디스크 A에 대한 새로운 라이트 (a new write to disk A) 는 디스크 B의 클린 리드와 디스크 B’에 대한 클린 라이트를 가져온다. 플래시카피 그래프가 아무리 커진다고 해도, 하나의 라이트는 오직 하나의 클린 동작만을 가져올 것이다. 맵 (B, B') 는 상시 클린 모드에 (in a permanent cleaning mode) 있게 될 것이다. 이것은 디스크들 B' 혹은 C상의 모든 데이터는 백그라운드 에서 클린될 것이라는 것을 의미한다
Considering an example of the prior art of the present invention and a novel configuration of the present invention, when (B, C) starts, the cascades B↔C and C↔D are generated (resulting in) The map's target, C, is part of map C↔D, but D does not have a secondary volume. Now, when (A, B) starts, a buffer flashcopy function (B, B ') is created and started because target B is part of B → C and C has a secondary volume. This new buffer flashcopy function creates cascaded A↔B, B↔B'↔C and C↔D. Once this is created, a new write to disk A will bring the clean lead to disk B and clean light to disk B '. No matter how large the FlashCopy graph is, a single light will bring only one clean operation. The map (B, B ') will be in a permanent cleaning mode. This means that all data on disks B 'or C will be cleaned in the background

상기 버퍼 플래시카피 맵은 적어도 맵 A→B 그리고 B↔C 그리고 C↔D 의 존속기간 (the lifetime) 동안은 존재할 것이다. 만약, A→B 혹은 C↔D 가 중단되거나 완료된다면 맵 B↔B'는 캐스케이드로부터 자신을 클린하고 제거한다. 만약, B↔C 가 중단되거나 완료되면 맵 B↔B'는 즉시 중단될 수 있다. 이것은 캐스케이드들을 유지하는 데 필요한 클린작업 (cleaning) 이 서로 맞물린 (interlocked) 캐스케이드의 수와는 무관함 (independent) 을 의미한다. 물론 서로 맞물린 캐스케이드 당 버퍼 플래시카피 맵들의 수를 줄이기 위하여 상기 아이디어를 확장하여 추가적인 클린 라이트들 (상기 예에서 기술된 것 이상으로) 을 수행하는 것도 가능하다. 이것은 실행상 고려해 볼 수 있는 사항이다.The buffer flash copy map will exist for at least the map A? B and B? C and C? D lifetimes. If A → B or C↔D is interrupted or completed, map B↔B 'cleans itself from the cascade and removes it. If B ↔ C is interrupted or completed, the map B ↔ B 'can be interrupted immediately. This means that the cleaning required to maintain the cascades is independent of the number of interlocked cascades. Of course, it is also possible to extend this idea to perform additional clean writes (beyond that described in the above example) to reduce the number of interlocked per-cascade buffer FlashCopy maps. This is a practical consideration.

본 발명의 실시 예들이 이하에서 첨부된 도면들을 참조하여, 예로서, 기술된다.
도 1은 한 쌍의 스토리지 디스크들의 개략도 (schematic diagram) 이다,
도 2는 플래시카피 캐스케이드의 개략도이다,
도 3은 확장된 플래시카피 캐스케이드의 개략도이다,
도 4는 데이터 라이트를 갖는 확장된 플래시카피 캐스케이드의 개략도이다,
도 5는 카피기능을 동작시키는 방법에 대한 흐름도이다.
BRIEF DESCRIPTION OF THE DRAWINGS Embodiments of the invention will now be described, by way of example, with reference to the accompanying drawings, in which: Fig.
Figure 1 is a schematic diagram of a pair of storage disks,
Figure 2 is a schematic of a flashcopy cascade,
Figure 3 is a schematic of an extended FlashCopy cascade,
Figure 4 is a schematic diagram of an extended FlashCopy cascade with a data light,
5 is a flow chart of a method of operating a copy function.

도 1은 스토리지 컨트롤러 (8) 과 두 개의 스토리지 디스크들 (10) 과 (12) 를 이용하는 플래시카피의 개념을 도시한다. 디스크들 (10) 과 (12) 는 디스크들의 좀 더 큰 어레이의 일부분을 구성할 수 있고, 통상적으로 기업 스토리지 솔루션의 일부분을 구성할 수 있다. 디스크들 (10) 과 (12) 는, 예를 들어, 상업적인 웹사이트와 관련된 스토리지 솔루션의 일부분이 될 수 있다. 만일 어느 때에 (at any time) 브이디스크 1 (vdiskl) 의 컨텐츠로 백업을 만들어야 한다면, 플래시카피 명령이 스토리지 볼륨 컨트롤러 (8) 로부터 소스 디스크 (10) (브이디스크 1) 을 정의하는 디스크 (10) 과 상기 플래시카피의 타겟인 타겟 디스크 (12) (브이디스크 2) 로 보내질 수 있다. 상기 플래시카피 명령은 소스 디스크 (10) 인 특정 브이디스크 (the specific vdisk) 의 이미지의 포인트-인-타임 카피를 생성한다.
Figure 1 illustrates the concept of a flash copy using a storage controller 8 and two storage disks 10 and 12. The disks 10 and 12 may constitute part of a larger array of disks and may typically constitute part of a corporate storage solution. The disks 10 and 12 may, for example, be part of a storage solution associated with a commercial web site. A flashcopy command is issued from the storage volume controller 8 to the disk 10 defining the source disk 10 (Vdisk 1), if the backup is to be made with the contents of vdiskl at any time. And the target disk 12 (V-disk 2), which is the target of the flash copy. The flashcopy command produces a point-in-time copy of the image of the specific vdisk that is source disk 10.

도 1의 예에서, 제 1의 플래시카피 명령의 소스 디스크 (10) 은 브이디스크 1이고 타겟 디스크 (12) 는 브이디스크 2이다. 상기 플래시카피 명령은, 소스 디스크 (10) 에서 타겟 디스크 (12)로 맵 (14)를 생성하는, 플래시카피 프로세스를 시작한다. 이 맵은 도면에서 맵 (1) 로 라벨된다. 이 특정 포인트 인 타임 (this specific point in time) 에서 브이디스크 1의 이미지는 이제 브이디스크 2상에서 이용 가능하게 된다. 이것은 브이디스크 1상 데이터의 백업을 생성하며, 또한, 시험들 (tests) 과 기타 관리작업들 (administration tasks) 을 브이디스크 1의 데이터에 관해서 실행하는 것을, 오리지널 데이터 상실의 부대 위험 (attendant danger) 없이, 가능하게 하는데, 이는 오리지널 데이터가 오리지널 소스 디스크상에 보존되어 있기 때문이다.
In the example of FIG. 1, the source disk 10 of the first flashcopy command is V-disk 1, and the target disk 12 is V-disk 2. The flashcopy command starts a flashcopy process that creates a map 14 from the source disk 10 to the target disk 12. [ This map is labeled as map (1) in the figure. At this specific point in time, the image of Vdisk 1 is now available on Vdisk 2. This creates a backup of the data on the V disk 1 and also allows the execution of tests and other administration tasks on the data of V disk 1 as an attendant danger of the loss of original data, , Since the original data is stored on the original source disc.

플래시카피가 만들어 질 때, 그것은, 맵 (14) 에 의해서 정의된 바와 같이, 두 디스크들 (10) 과 (12) 사이에 링크를 생성한다. 데이터는, 아래의 추가의 요건을 조건으로, 백그라운드로도 카피될 수 있다. 즉 브이디스크 2 (타겟 디스크 (12) 로서) 에의 모든 접근 (any access) 은 즉각 브이디스크 1의 관련부분들의 이미지가 카피되도록 하며, 또한 상기 디스크 (10) 에 의해 저장된 이미지에 변경을 가져다 줄 수 있는 브이디스크 1에의 모든 접근 (any access) 은, 변경이 일어나기 전에, 즉각 변경되지 않은 (unaltered) 데이터가 타겟 디스크 (12)에 카피되도록 한다. 이러한 방법으로, 비록 데이터가 상기 기술된 상황들 아래에서 물리적으로 카피되지만, 브이디스크 2는, 외부 사용자에 대하여, 브이디스크 1의 포인트 인 타임 카피를 저장한다.
When a flash copy is made, it creates a link between the two disks 10 and 12, as defined by the map 14. The data may also be copied in the background, subject to the additional requirements below. That is, any access to Vdisk 2 (as the target disk 12) immediately causes the images of the relevant portions of the Vdisk 1 to be copied, and also to bring changes to the image stored by the disk 10 Any access to V disk 1 causes the unaltered data to be copied to the target disk 12 immediately before the change takes place. In this way, although Vdisk 2 is physically copied under the circumstances described above, Vdisk 2 stores a point-in-time copy of Vdisk 1 for an external user.

플래시카피 기능의 타겟 볼륨인 스토리지 볼륨은 또한 추가의 (further) 플래시카피 기능의 소스 볼륨이 될 수 있으며, 따라서 스토리지 볼륨들의 캐스케이드를 생성할 수 있다. 도 2는 4개 스토리지 볼륨들 (10), (12), (16) 그리고 (18)의 캐스케이드 예를 보여주고 있으며, 이것들은 각각의 플래시카피 맵들 (14) 로 연결되어 있다. 각각의 맵 (14) 는 소스 볼륨에서 타겟 볼륨으로의 플래시카피 기능을 정의한다. 디스크 B는 디스크 A의 백업을 제공하고, 디스크 C는 디스크 B의 백업을 제공하며 그리고 디스크 D는 디스크 C의 백업을 제공한다. 다른 스토리지 볼륨들을 연결하는 플래시카피 기능들 (14) 는 다른 시간들에서 시작되었을 수도 있는데, 이는 각각의 스토리지 볼륨들에 의해 저장된 이미지들의 다른 포인트-인-타임 카피를 생성한다.
The storage volume, which is the target volume of the flashcopy function, can also be the source volume of the further flashcopy function, thus creating a cascade of storage volumes. Figure 2 shows a cascade example of four storage volumes 10, 12, 16 and 18, which are connected to respective FlashCopy maps 14. Each map 14 defines a flashcopy function from a source volume to a target volume. Disk B provides backup of disk A, disk C provides backup of disk B, and disk D provides backup of disk C. The flashcopy functions 14 connecting the other storage volumes may have been started at different times, which creates another point-in-time copy of the images stored by each of the storage volumes.

A↔B↔C↔D 의 플래시카피 캐스케이드에서 (여기서 A, B, C 그리고 D는, 도 2에 도시한 바와 같이, 상기 캐스케이드 내의 디스크들이고, 상기 화살표들은 플래시카피 맵들이며, 따라서 (A, B) 는 디스크 A로부터 디스크 B로의 플래시카피 맵핑을 표시한다), 상기 캐스케이드는 맵들 (A, B), (B, C) 및 (C, D)를 갖는다. 이러한 캐스케이드의 종래기술의 임플리멘테이션에서, 디스크 A에 대한 모든 새로운 데이터 라이트 (any new data write) 는, 각각의 플래시카피 기능마다, 디스크 B에 대한 스플리트 라이트 (a split write) 를 가져올 수 있는데, 이는 디스크 B상에 이미지를 유지하기 위해 요구된다. 디스크 B에 대한 이 라이팅 (this writing to disk B) 은 디스크들 B 및 C의 클린 리드들 (clean reads) 과 디스크 C에 대한 라이트 다음에 디스크 D에 대한 클린 라이트들 (clean writes) 을 추가로 (further) 가져올 것이다. 이런 방식에서는, 상기 캐스케이드 내의 제 1의 스토리지 볼륨 (10) 에 대한 하나의 라이트 (a single write) 는 상기 캐스케이드 전체에 걸쳐 대규모의 클린 동작들을 초래할 수 있다.
(Where A, B, C and D are the disks in the cascade and the arrows are flashcopy maps, as shown in FIG. 2), so that A, B, ) Indicates a flashcopy mapping from disk A to disk B), the cascade has maps A, B, (B, C) and (C, D). In the prior art implementation of such a cascade, any new data write to disk A would result in a split write to disk B for each flashcopy function , Which is required to keep the image on disk B. This writing to disk B adds clean reads to disks B and C followed by clean writes to disk D followed by a write to disk C. < RTI ID = 0.0 > further. In this manner, a single write to the first storage volume 10 in the cascade may result in large-scale clean operations throughout the cascade.

그러므로, 그러한 종래 기술의 플래시카피 캐스케이드의 한계는 주어진 라이트 동작을 위해 요구되는 클린 동작들 (clean operations) 의 수를 제한하기 위해서 컨커런트 리스토어 동작들 (concurrent restore operations) 의 수를 제한하는 것이 필요하다는 것이다. 디스크 A에 대한 라이트들은 스토리지 볼륨 A에 의해 지원되는 서비스의 정상 수행 (the normal running of the service) 이므로, 이들 라이트들이 가능한 한 신속하게 완료되는 것은 사업의 관점에서 중요하다. 도 2의 캐스케이드에서, 디스크 A에 라이트는, 전술한 바와 같이, 모든 종속적인 리드 및 라이트들 (all of the dependent read and writes) 이 완료될 때까지는 완료될 수 없는데, 그 이유는 만약 이 프로세스 동안 어느 것이라도 실패한다면, 전체 트랜잭션 (the whole transaction) 이 백업되어야 할 필요가 있기 때문이다.
Therefore, the limitations of such prior art FlashCopy cascades are that it is necessary to limit the number of concurrent restore operations in order to limit the number of clean operations required for a given write operation will be. Since the writes to disk A are the normal running of the services supported by storage volume A, it is important from a business perspective that these writes are completed as quickly as possible. In the cascade of FIG. 2, the write to disk A can not be completed until all of the dependent reads and writes have been completed, as described above, If either fails, the whole transaction needs to be backed up.

도 3은 브이디스크 A에 초기 라이트를 완료하는데 있어서 지연의 문제 (the problem of the delay) 를 개선하기 위해 도 2의 구성이 어떻게 확장되는지를 보여준다. 스토리지 볼륨 컨트롤러 (8) 은 타겟 볼륨이 이미 활성 플래시 맵의 소스 볼륨인 플래시카피 맵의 시작 (the start) 에 여분의 단계 (an extra step) 를 추가한다. 이 단계는 상기 시작되는 새로운 맵의 타겟 볼륨에 효과적으로 (effectively) 질의 (query) 를 하여 상기 타겟 볼륨이 활성 플래시카피 맵의 소스 볼륨인지, 그리고 상기 활성 맵의 타겟 볼륨이 2차 에프디스크를 가지고 있는지를 알아보고, 만일 그러하다면, 상기 스토리지 볼륨 컨트롤러는 상기 오리지널 플래시카피의 타겟 볼륨으로부터 새로운 공간효율적 브이디스크로 버퍼 플래시카피를 생성할 것이다. 2차 (secondary) 는 상기 정의된 바와 같다. 브이디스크는 그것이 제공할 수 있는 두 개의 이미지들을 갖고 있다. 이들은 에프디스크들로 참조된다. 1차 (primary) 에프디스크는 모든 호스트 시스템에 제공되는 이미지이다. 그것은 리드 동작들을 위해 리턴된 데이터이다. 2차 에프디스크는 자신의 이미지들을 제공하기 위해 다른 브이디스크들에 저장된 (held) 데이터를 요구하는 다른 플래시카피 맵들에 의해 사용된 이미지이다.
FIG. 3 shows how the configuration of FIG. 2 is extended to improve the problem of the delay in completing the initial write to Vdisk A. FIG. The storage volume controller 8 adds an extra step to the start of the flashcopy map, where the target volume is already the source volume of the active flash map. This step effectively queries the target volume of the new map being started to determine whether the target volume is the source volume of the active FlashCopy map and whether the target volume of the active map has a secondary FEP And if so, the storage volume controller will create a buffer flash copy from the target volume of the original flash copy to the new space efficient V disk. Secondary is as defined above. Vdisk has two images that it can provide. These are referred to as FEF disks. A primary FEF disk is an image provided to all host systems. It is the data returned for read operations. A secondary FEF disk is an image used by other FlashCopy maps that require data held on other V disks to provide their own images.

전술한 도 2의 예를 살펴 보면, (B, C) 가 시작되고, 그 결과 캐스케이드들 B↔C 및 C↔D 가 생성되는 때, 상기 새로운 구성 (the new scheme) 에서, 시작되는 상기 맵의 타겟, C는 맵 C↔D 의 일부분이지만 D는 이 포인트에서 (at this point) 2차 볼륨을 갖고 있지 않기 때문에 문제는 없다. 그러나, (A, B) 가 시작될 때는 버퍼 플래시카피기능 (B, B') 이 생성되는데, 그 이유는 타겟 B는 B→C의 일부분이 이고 C는 2차 볼륨을 갖고 있기 때문이다. 이 새로운 버퍼 플래시카피 기능은, 새로운 스토리지 볼륨 (20) 을 사용하여, A↔B, B↔B'↔C 그리고 C↔D를 포함하는 캐스케이드를 생성한다. 일단 이것이 생성되고 나면, 디스크 A에 대한 라이트는 디스크 B의 클린 리드와 디스크 B’에 대한 클린 라이트를 가져온다. 플래시카피 그래프가 아무리 커지더라도, 하나의 라이트 (a single write) 는 하나의 클린 동작만을 가져온다. 맵 (B, B')는 상시 클린 모드에 (in a permanent cleaning mode) 있게 될 것이다. 이것은 디스크 B’ 혹은 디스크 C상의 모든 데이터는 백그라운드에서 클린될 것임을 의미한다.
Referring to the example of FIG. 2 described above, when (B, C) is started, and as a result the cascades B? C and C? D are generated, in the new scheme, The target, C, is part of map C↔D, but there is no problem because D does not have a secondary volume at this point. However, when (A, B) starts, a buffer flashcopy function (B, B ') is created because target B has a portion of B → C and C has a secondary volume. This new buffer flashcopy function uses the new storage volume 20 to create a cascade that includes A↔B, B↔B'↔C and C↔D. Once this is created, the light on disk A will bring a clean lead to disk B and a clean light to disk B '. No matter how large the FlashCopy graph is, a single write will only bring a single clean operation. The map (B, B ') will be in a permanent cleaning mode. This means that all data on disk B 'or disk C will be cleaned in the background.

버퍼 플래시카피 맵 (B, B’) 는 적어도 맵 A→B 및 B↔C 및 C↔D의 존속기간 (the lifetime) 동안 존재할 것이다. 만약 A→B 혹은 C↔D가 중단되거나 완료되면 맵 B↔B'는 상기 캐스케이드로부터 자신을 클린하고 제거한다. 만약 B↔C가 중단되거나 완료되면 맵 B↔B'는 즉시 중단될 수 있다. 이것은 상기 캐스케이드를 유지하기 위해서 필요한 클린작업 (the cleaning) 은 서로 맞물린 캐스케이드들의 수 (the number of interlocked cascades) 와는 무관함을 의미한다. 상기 버퍼 플래시카피 기능의 타겟인 새로운 타겟 디스크 (20) 은 상기 오리지널 캐스케이드 내의 브레이크(break)를 효과적으로 생성하고, 디스크 A에 대한 상기 오리지널 라이트로부터 초래되어 디스크 B로부터 요구된 변경들을 수용할 것이다. 이 라이트는 그 다음 완료되고 B'에서 C로 그리고 상기 캐스케이드 아래로의 클린 작업이 수행될 수 있다.
The buffer FlashCopy map (B, B ') will be present for at least the duration of the map A → B and B → C and C → D. If A → B or C↔D is interrupted or completed, map B↔B 'cleans itself from the cascade and removes it. If B↔C is interrupted or completed, the map B↔B 'can be immediately interrupted. This means that the cleaning required to maintain the cascade is independent of the number of interlocked cascades. A new target disc 20 that is the target of the buffer flashcopy function will effectively create a break in the original cascade and will accept the changes requested from disc B resulting from the original write to disc A. [ This light can then be completed and a clean operation from B 'to C and below the cascade can be performed.

도 4는 버퍼 플래시카피 기능이 일단 셋업 (set up) 되면, 디스크 A에 대한 라이트가 어떻게 처리되는지를 보여준다. 새로운 타겟 디스크 (20), 브이디스크 B'의 존재는 디스크 A에 대한 IO를 위한 경계선 (boundary) 을 생성한다. 디스크 A에 대한 새로운 라이트는 디스크 B에 클린 리드와 디스크 B’에 대한 클린 라이트를 가져온다. 상기 캐스케이드 아래 디스크들 C 혹은 D에 대해 더 이상의 추가의 액션들 (no further actions) 이 이 포인트에서 요구되지 않는다. (그럼에도) 디스크 A에 대한 상기 오리지널 IO는 완료될 수 있는데, 이것은, 직렬로 (in series) 된 다수의 디스크들의 종래기술 캐스케이드들과 비교해 보았을 때, 상기 오리지널 IO를 디스크 A에 대하여 완료시키는데 필요한 시간의 길이에서 개선을 가져온다.
Figure 4 shows how the write to disk A is handled once the buffer flashcopy function is set up. The presence of the new target disk 20, V disk B ', creates a boundary for IO for disk A. A new light on disk A brings the clean lead to disk B and the clean light to disk B '. No further actions are required at this point for discs C or D below the cascade. (Nevertheless) the original IO for disk A can be completed, which means that when compared to prior art cascades of a number of disks in series, the time required to complete the original IO to disk A Lt; RTI ID = 0.0 > length.

버퍼 플래시카피 기능들과 새로운 타겟 스토리지 볼륨 (20) 의 존재는 플래시카피 맵들을 시작하는 순서 상에서의 모든 제한 (any restriction) 이 제거되었음을 의미한다. 스토리지 볼륨 B'는 캐스케이드 내에서 브레이크로서 작용하며, 일단 오리지널 IO가 완료되면, 볼륨 B' 상의 데이터는 통상의 백그라운드 프로세스로서 디스크 C 상으로 클린될 수 있다. 스토리지 볼륨 B'는 디스크 B로부터 쓰여진 데이터를 위한 임시 저장소 (a temporary store ) 이며, 스토리지 볼륨 B'에 제공된 데이터는 그것이 디스크 C로 클린된 후에는 계속 유지되지 않는다 (not persist).
The presence of the buffer flashcopy functions and the new target storage volume 20 means that any restrictions on the order of starting the flashcopy maps have been removed. Storage volume B 'acts as a brake in the cascade, and once the original IO is completed, the data on volume B' can be cleaned onto disk C as a normal background process. Storage volume B 'is a temporary store for data written from disk B, and the data provided to storage volume B' is not persistent after it has been cleaned to disk C.

캐스케이드에서 아래로 더 낮은 (lower) 볼륨들은 정상적으로 작동하며 (function), 이들 스토리지 볼륨들 사이의 맵들 (14) 도 그러하다. 도 3과 4의 예에서, 캐스케이드에서 아래로 더 낮은, 디스크들 C 및 D는 캐스케이드 내에 삽입된 새로운 타겟 디스크 B’의 존재를 인식하지 못하며, 또한 버퍼 플래시카피 기능의 존재도 인식하지 못한다. 이 디스크들 C 및 D에 대한 작업은 정상적으로 진행되며 그리고 새로운 타겟 디스크 B’로부터 디스크 C로 데이터의 클린작업은 그 디스크 C에 대한 데이터의 정상적인 라이트로서 처리되는데, 이는 상기 플래시카피 기능을 트리거하여, C 상의 특정 데이터가 아직 카피되지 않았다면, 디스크 D 상으로 라이트를 수행하게 할 것이다.
In Cascade, the lower volumes below function normally, and so are the maps (14) between these storage volumes. In the examples of FIGS. 3 and 4, discs C and D, which are lower down in the cascade, do not recognize the presence of a new target disc B 'inserted in the cascade and also do not recognize the presence of a buffer flashcopy function. Work on these disks C and D proceeds normally and a clean operation of the data from the new target disk B 'to disk C is processed as a normal write of the data for that disk C, which triggers the flashcopy function, If the specific data on C has not yet been copied, it will cause the write to take place on disk D.

상기 셋업 단계 (set-up stage) 에서, 카피 기능을 동작시키는 프로세스를 요약하는 흐름도가 도 5에 도시되었다. 스토리지 볼륨 컨트롤러 (8) 에 의해 수행되는, 카피 기능을 동작시키는 방법은 제 1의 단계 S1을 포함하며, 단계 S1은 소스 볼륨에서 타겟 볼륨으로 새로운 플래시카피 기능을 개시하는 (initiating) 단계를 포함한다. 도 4의 예에서, 소스 볼륨은 브이디스크 A이고 타겟 볼륨은 브이디스크 B이며, 생성되는 새로운 플래시카피 기능은 브이디스크 A에서 브이디스크 B로의 플래시카피기능 (14)가 된다. 이 새로운 플래시카피 기능은 관리자에 의해 생성될 수도 있고 소프트웨어에 의해 자동적으로 생성될 수도 있다.
In the set-up stage, a flow chart summarizing the process of operating the copy function is shown in FIG. The method of operating the copy function, performed by the storage volume controller 8, comprises a first step S1, wherein step S1 includes initiating a new flashcopy function from a source volume to a target volume . In the example of Fig. 4, the source volume is vdisk A and the target volume is vdisk B, and the new flashcopy function that is created becomes flashcopy function 14 from vdisk A to vdisk B. This new FlashCopy function may be created by the administrator or automatically by software.

상기 방법에서 제 2의 단계 S2는 상기 새로운 플래시카피 기능의 타겟 볼륨 (브이디스크 B) 이 또한 기존의 플래시카피 기능을 위한 소스 볼륨임을 검출하는 (detecting) 단계이다. 도 4의 예의 컨텍스트에서, 상기 기존의 플래시카피 기능은 브이디스크 B로부터 브이디스크C로의 맵핑 기능이다. 그러므로, 이 예에서, 브이디스크 B는, 상기 새로운 플래시카피 기능의 타겟이고, 동시에 기존의 플래시카피 기능의 소스가 된다. 스토리지 볼륨 컨트롤러 (8) 은 이 검출 단계를 수행할 수 있는데, 이것은 소스 볼륨들에서 타겟 볼륨들로의 플래시카피 기능들의 기존 맵핑들과 관련하여 컨트롤러 (8) 이 유지하는 디테일들 (details) 에 기초하여 수행한다.
The second step S2 in the method is a step of detecting that the target volume (Vdisk B) of the new flashcopy function is also the source volume for the existing flashcopy function. In the context of the example of FIG. 4, the existing flashcopy function is a function of mapping from Vdisk B to Vdisk C. Therefore, in this example, Vdisk B is the target of the new flashcopy function, and at the same time becomes the source of the existing flashcopy function. The storage volume controller 8 may perform this detection step, which is based on the details maintained by the controller 8 in relation to existing mappings of flashcopy functions from source volumes to target volumes .

상기 프로세스의 다음 단계는 단계 S3인데, 이는 상기 기존의 플래시카피 기능 (B→C) 의 타겟 볼륨 (브이디스크 C) 이 2차 볼륨 (이 경우에는 브이디스크 D) 을 갖는 것을 검출하는 단계이다. 이것 또한 스토리지 볼륨 컨트롤러 (8) 에 의해 수행될 수 있는데, 플래시카피 기능들과 그들의 소스들 및 타겟들상의 기존 데이터을 이용하여 그렇게 한다. 마지막으로, 단계 S4에서 마무리 단계가 제공되는데, 이는 상기 새로운 플래시카피 기능의 타겟 볼륨 (브이디스크 B) 로부터 상기 새로운 타겟 볼륨 (브이디스크 B’) 로의 버퍼 플래시카피 기능 (B→B’)을 생성하는 단계이다. 이렇게 해서, 브레이크가 브이디스크 B’의 캐스케이드 내로 도입되고, 상기 오리지널 디스크 A에 대한 IO는 이제 제한된다 (bounded).
The next step in the process is step S3, which is the step of detecting that the target volume (Vdisk C) of the existing FlashCopy function (B → C) has a secondary volume (Vdisk D in this case). This can also be done by the storage volume controller 8, using flashcopy functions and existing data on their sources and targets. Finally, a finishing step is provided in step S4, which creates a buffer FlashCopy function (B - > B ') from the target volume (Vdisk B) of the new FlashCopy function to the new target volume . In this way, the brakes are introduced into the cascade of the V-disk B ', and the IO for the original disk A is now bounded.

Claims (15)

카피 기능을 동작시키는 방법에 있어서, 상기 방법은:
소스 볼륨에서 타겟 볼륨으로 새로운 플래시카피 기능을 개시하는 단계 (initiating),
상기 새로운 플래시카피 기능의 타겟 볼륨이 기존의 플래시카피 기능을 위한 소스 볼륨임을 검출하는 단계 (detecting),
상기 기존 플래시카피 기능의 타겟 볼륨이 2차 볼륨을 갖는 것을 검출하는 단계 (detecting), 및
상기 새로운 플래시카피 기능의 타겟 볼륨에서 새로운 타겟 볼륨으로 버퍼 플래시카피 기능을 생성하는 단계 (creating) 를 포함하는
방법.
A method of operating a copy function, the method comprising:
Initiating a new flashcopy function from the source volume to the target volume,
Detecting that the target volume of the new flashcopy function is a source volume for an existing flashcopy function,
Detecting that the target volume of the existing flashcopy function has a secondary volume, and
Creating a buffer flashcopy function from a target volume of the new FlashCopy function to a new target volume
Way.
제 1항에 있어서, 상기 소스 볼륨을 위한 데이터 라이트를 수신하는 단계, 상기 타겟 볼륨의 대응 데이터 리드를 수행하는 단계 및, 상기 타겟 볼륨으로부터 데이터 리드의, 상기 새로운 타겟 볼륨에 대한 데이터 라이트를 수행하는 단계를 더 포함하는
방법.
2. The method of claim 1, further comprising: receiving a data write for the source volume; performing a corresponding data read of the target volume; and performing a data write of the data lead from the target volume to the new target volume Further comprising
Way.
제 2항에 있어서, 상기 소스 볼륨의 대응 데이터 리드를 수행하는 단계, 상기 타겟 볼륨에 대한 데이터 라이트를 수행하는 단계 및 상기 소스 볼륨을 위한 오리지널 데이터 라이트를 완료하는 단계를 더 포함하는
방법.
3. The method of claim 2, further comprising: performing a corresponding data read of the source volume, performing a data write to the target volume, and completing an original data write for the source volume
Way.
제 3항에 있어서, 상기 새로운 타겟 볼륨에 대해 쓰여진 데이터의 상기 기존의 플래시카피기능의 타겟 볼륨 상에 데이터 라이트를 수행하는 단계를 더 포함하는
방법.
4. The method of claim 3, further comprising performing a data write on a target volume of the existing flashcopy function of data written for the new target volume
Way.
제1항에 있어서, 상기 새로운 플래시카피 기능 혹은 기존 플래시카피 기능 중 어느 하나가 중단되었거나 혹은 완료되었음을 검출하는 단계, 상기 새로운 타겟 볼륨을 클린하는 단계 및 상기 카피 기능으로부터 상기 새로운 타겟 볼륨을 제거하는 단계를 더 포함하는
방법.
The method of claim 1, further comprising: detecting that either the new FlashCopy function or the existing FlashCopy function has been interrupted or completed; cleaning the new target volume; and removing the new target volume from the copy function Further comprising
Way.
복수의 스토리지 볼륨들 및 그것에 연결된 스토리지 볼륨 컨트롤러를 포함하는 카피 기능을 동작시키는 시스템에 있어서, 상기 스토리지 볼륨 컨트롤러는:
소스 볼륨에서 타겟 볼륨으로 새로운 플래시카피기능을 개시하고,
상기 새로운 플래시카피 기능의 타겟 볼륨이 기존 플래시카피 기능을 위한 소스 볼륨임을 검출하며,
상기 기존의 플래시카피 기능의 타겟 볼륨은 2차 볼륨을 갖는 것을 검출하고, 그리고
상기 새로운 플래시카피 기능의 타겟 볼륨으로부터 새로운 타겟 볼륨으로 버퍼 플래시카피 기능을 생성하도록 구성되는(arranged)
시스템.
A system for operating a copy function comprising a plurality of storage volumes and a storage volume controller coupled thereto, the storage volume controller comprising:
Initiating a new flashcopy function from the source volume to the target volume,
Detecting that the target volume of the new FlashCopy function is a source volume for an existing FlashCopy function,
The target volume of the existing FlashCopy function detects that it has a secondary volume, and
And to create a buffer flashcopy function from a target volume of the new flashcopy function to a new target volume.
system.
제 6항에 있어서, 상기 스토리지 볼륨 컨트롤러는 상기 소스 볼륨을 위한 데이터 라이트를 수신하고, 상기 타겟 볼륨의 대응 데이터 리드를 수행하며 그리고, 상기 타겟 볼륨으로부터 데이터 리드의, 상기 새로운 타겟 볼륨에 대한 데이터 라이트를 수행하도록 더 구성된
시스템.
7. The method of claim 6, wherein the storage volume controller is configured to receive a data write for the source volume, perform a corresponding data read of the target volume, RTI ID = 0.0 >
system.
제 7항에 있어서, 상기 스토리지 볼륨 컨트롤러는 상기 소스 볼륨의 대응 데이터 리드를 수행하고, 상기 타겟 볼륨에 대한 데이터 라이트를 수행하며 그리고 상기 소스 볼륨을 위한 오리지널 데이터 라이트를 완료하도록 더 구성된
시스템.
8. The method of claim 7, wherein the storage volume controller is further configured to perform a corresponding data read of the source volume, perform a data write to the target volume, and complete an original data write for the source volume
system.
제 8항에 있어서, 상기 스토리지 볼륨 컨트롤러는 상기 새로운 타겟 볼륨에 대하여 쓰여진 상기 데이터의 기존 플래시카피 기능의 상기 타겟 볼륨 상에 데이터 라이트를 수행하도록 더 구성된
시스템.
9. The system of claim 8, wherein the storage volume controller is further configured to perform a data write on the target volume of an existing flashcopy function of the data written to the new target volume
system.
삭제delete 컴퓨터 판독가능 매체에 있어서,
상기 컴퓨터 판독가능 매체는 카피 기능을 동작시키기 위한 컴퓨터 프로그램을 포함하고, 상기 컴퓨터 프로그램은 상기 청구항 제1항 내지 제5항 중 어느 한 항에 기재된 방법의 모든 단계들을 컴퓨터가 수행하도록 하기 위한 컴퓨터 프로그램 코드를 포함하는, 컴퓨터 판독가능 매체.
A computer-readable medium comprising:
The computer readable medium comprising a computer program for operating a copy function, the computer program comprising a computer program for causing a computer to perform all steps of the method recited in any one of claims 1 to 5, ≪ / RTI >
삭제delete 삭제delete 삭제delete 삭제delete
KR1020127022443A 2010-03-11 2011-03-08 Buffer disk in flashcopy cascade KR101476018B1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP10156177.7 2010-03-11
EP10156177 2010-03-11
PCT/EP2011/053440 WO2011110542A1 (en) 2010-03-11 2011-03-08 Buffer disk in flashcopy cascade

Publications (2)

Publication Number Publication Date
KR20120140652A KR20120140652A (en) 2012-12-31
KR101476018B1 true KR101476018B1 (en) 2014-12-23

Family

ID=44357944

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127022443A KR101476018B1 (en) 2010-03-11 2011-03-08 Buffer disk in flashcopy cascade

Country Status (8)

Country Link
US (2) US8285679B2 (en)
JP (1) JP5260802B2 (en)
KR (1) KR101476018B1 (en)
CN (1) CN102792276B (en)
CA (1) CA2786165C (en)
DE (1) DE112011100112B4 (en)
GB (1) GB2491009B (en)
WO (1) WO2011110542A1 (en)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8285679B2 (en) 2010-03-11 2012-10-09 International Business Machines Corporation Creating a buffer point-in-time copy relationship for a point-in-time copy function executed to create a point-in-time copy relationship
US8788770B2 (en) 2010-05-25 2014-07-22 International Business Machines Corporation Multiple cascaded backup process
DE102012203778A1 (en) * 2011-04-04 2012-10-04 Schaeffler Technologies AG & Co. KG Method for controlling a hybrid powertrain and accumulator device in this
US8719523B2 (en) * 2011-10-03 2014-05-06 International Business Machines Corporation Maintaining multiple target copies
US9116726B2 (en) * 2012-09-28 2015-08-25 Vmware, Inc. Virtual disk snapshot consolidation using block merge
JP6194784B2 (en) * 2013-12-13 2017-09-13 富士通株式会社 Storage control device, control method, and control program
US9600188B2 (en) * 2014-04-02 2017-03-21 International Business Machines Corporation Collision avoidance using dynamic target volume allocation from a shared resource pool
US9817718B2 (en) 2014-04-02 2017-11-14 International Business Machines Corporation Efficient flashcopy backup and mount, clone, or restore collision avoidance using dynamic volume allocation from a shared resource pool
US9817719B2 (en) 2014-04-02 2017-11-14 International Business Machines Corporation Efficient Flashcopy backup and mount, clone, or restore collision avoidance using dynamic volume allocation with reuse and from a shared resource pool
US9632710B2 (en) 2014-04-02 2017-04-25 International Business Machines Corporation Efficient use of Flashcopy resources and target volumes for dynamic target volume allocation
US9710339B2 (en) * 2014-04-02 2017-07-18 International Business Machines Corporation Collision avoidance using dynamic volume allocation with reuse
US9672118B2 (en) * 2014-04-02 2017-06-06 International Business Machines Corporation Collision avoidance using dynamic target volume allocation
US9817723B2 (en) 2014-04-02 2017-11-14 International Business Machines Corporation Efficient FlashCopy backup and mount, clone, or restore collision avoidance using dynamic volume allocation with reuse
US9747046B2 (en) * 2014-04-02 2017-08-29 International Business Machines Corporation Collision avoidance using dynamic target volume allocation in a single repository
US9760450B2 (en) 2015-09-16 2017-09-12 International Business Machines Corporation Restoring a clone point-in-time copy
US9747171B2 (en) 2015-09-16 2017-08-29 International Business Machines Corporation Point-in-time copy restore
US9760449B2 (en) 2015-09-16 2017-09-12 International Business Machines Corporation Restoring a point-in-time copy
US9940041B2 (en) 2015-09-21 2018-04-10 International Business Machines Corporation Copy-redirect on write
US9886349B2 (en) 2015-09-21 2018-02-06 International Business Machines Corporation Point-in-time copy on write for golden image
US20180159786A1 (en) 2016-12-02 2018-06-07 Netspeed Systems, Inc. Interface virtualization and fast path for network on chip
US10042581B2 (en) 2016-12-07 2018-08-07 International Business Machines Corporation Releasing space allocated to a space efficient target storage in a copy relationship with a source storage
US9983815B1 (en) 2016-12-07 2018-05-29 International Business Machines Corporation Using a cascade flag to process a copy relationship having a backward cascade copy relationship
US20180157697A1 (en) 2016-12-07 2018-06-07 International Business Machines Corporation Updating change information for current copy relationships when establishing a new copy relationship having overlapping data with the current copy relationships
US10884884B2 (en) * 2017-03-23 2021-01-05 International Business Machines Corporation Reversal of the direction of replication in a remote copy environment by tracking changes associated with a plurality of point in time copies

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100445182B1 (en) * 2004-03-05 2004-08-21 주식회사 넥스토디아이 Data Copy Device
KR100810009B1 (en) * 2005-12-22 2008-03-07 인터내셔널 비지네스 머신즈 코포레이션 Validity of address ranges used in semi-synchronous memory copy operations
KR100844988B1 (en) * 2006-09-07 2008-07-08 주식회사 스타칩 Memory high-speed copy equipment and a method
KR100856774B1 (en) * 2005-12-22 2008-09-05 인터내셔널 비지네스 머신즈 코포레이션 Efficient and flexible memory copy operation

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7047390B2 (en) * 2003-06-17 2006-05-16 International Business Machines Corporation Method, system, and program for managing a relationship between one target volume and one source volume
US7133982B2 (en) * 2003-06-18 2006-11-07 International Business Machines Corporation Method, system, and article of manufacture for consistent copying of storage volumes
US7188272B2 (en) * 2003-09-29 2007-03-06 International Business Machines Corporation Method, system and article of manufacture for recovery from a failure in a cascading PPRC system
US7475204B2 (en) * 2004-11-24 2009-01-06 International Business Machines Corporation Automatically managing the state of replicated data of a computing environment
GB0428108D0 (en) * 2004-12-23 2005-01-26 Ibm Storage system with multiple copy targeting
GB0504390D0 (en) * 2005-03-02 2005-04-06 Ibm Storage system with cascaded copy targeting and enhanced integrity
US7823007B2 (en) * 2006-02-17 2010-10-26 International Business Machines Corporation Apparatus, system, and method for switching a volume address association in a point-in-time copy relationship
US8230185B2 (en) * 2008-10-08 2012-07-24 International Business Machines Corporation Method for optimizing cleaning of maps in FlashCopy cascades containing incremental maps
US8688936B2 (en) 2008-10-30 2014-04-01 International Business Machines Corporation Point-in-time copies in a cascade using maps and fdisks
US8468316B2 (en) 2009-06-15 2013-06-18 International Business Machines Corporation Apparatus and method for data backup
US8285679B2 (en) 2010-03-11 2012-10-09 International Business Machines Corporation Creating a buffer point-in-time copy relationship for a point-in-time copy function executed to create a point-in-time copy relationship
US8533411B2 (en) 2010-03-11 2013-09-10 International Business Machines Corporation Multiple backup processes
US8788770B2 (en) 2010-05-25 2014-07-22 International Business Machines Corporation Multiple cascaded backup process

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100445182B1 (en) * 2004-03-05 2004-08-21 주식회사 넥스토디아이 Data Copy Device
KR100810009B1 (en) * 2005-12-22 2008-03-07 인터내셔널 비지네스 머신즈 코포레이션 Validity of address ranges used in semi-synchronous memory copy operations
KR100856774B1 (en) * 2005-12-22 2008-09-05 인터내셔널 비지네스 머신즈 코포레이션 Efficient and flexible memory copy operation
KR100844988B1 (en) * 2006-09-07 2008-07-08 주식회사 스타칩 Memory high-speed copy equipment and a method

Also Published As

Publication number Publication date
DE112011100112T5 (en) 2013-01-03
US20110225124A1 (en) 2011-09-15
KR20120140652A (en) 2012-12-31
US20120254569A1 (en) 2012-10-04
GB2491009A (en) 2012-11-21
DE112011100112B4 (en) 2015-09-10
WO2011110542A1 (en) 2011-09-15
JP2013518335A (en) 2013-05-20
GB2491009B (en) 2016-09-07
CA2786165C (en) 2020-02-18
CA2786165A1 (en) 2011-09-15
JP5260802B2 (en) 2013-08-14
US8285679B2 (en) 2012-10-09
CN102792276A (en) 2012-11-21
GB201208127D0 (en) 2012-06-20
US8566282B2 (en) 2013-10-22
CN102792276B (en) 2015-03-25

Similar Documents

Publication Publication Date Title
KR101476018B1 (en) Buffer disk in flashcopy cascade
KR101442370B1 (en) Multiple cascaded backup process
JP4800031B2 (en) Storage system and snapshot management method
US8140790B2 (en) Failure management method in thin provisioning technology for storage
US7461201B2 (en) Storage control method and system for performing backup and/or restoration
US7185048B2 (en) Backup processing method
JP2005301497A (en) Storage management system, restoration method and its program
JPH07239799A (en) Method for provision of remote data shadowing and remote data duplex system
JP2007293828A (en) System and method for processing a plurality of kinds of event markers of continuous data protection
JP2006293850A (en) Remote copy system and remote copy method
US8533411B2 (en) Multiple backup processes
US20070033361A1 (en) Apparatus, system, and method for fastcopy target creation
US8275937B2 (en) Storage system and processing efficiency improving method of storage system
CN104750755A (en) Method and system for recovering data after switching between main database and standby database
US8683154B2 (en) Computer system and system control method
JP4074442B2 (en) Method, apparatus, system, program and storage medium for data backup
US8892830B2 (en) Changing ownership of cartridges
JP4390618B2 (en) Database reorganization program, database reorganization method, and database reorganization apparatus
JP2008084327A (en) Method, apparatus, system, program, and recording medium for data backup
JP2006277043A (en) Storage system and load distribution method

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20171128

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20181127

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20191126

Year of fee payment: 6