WO2011125127A1 - 非同期リモートコピーシステム、及び、記憶制御方法 - Google Patents

非同期リモートコピーシステム、及び、記憶制御方法 Download PDF

Info

Publication number
WO2011125127A1
WO2011125127A1 PCT/JP2010/002541 JP2010002541W WO2011125127A1 WO 2011125127 A1 WO2011125127 A1 WO 2011125127A1 JP 2010002541 W JP2010002541 W JP 2010002541W WO 2011125127 A1 WO2011125127 A1 WO 2011125127A1
Authority
WO
WIPO (PCT)
Prior art keywords
storage
journal
storage device
data
written
Prior art date
Application number
PCT/JP2010/002541
Other languages
English (en)
French (fr)
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 株式会社日立製作所
Priority to US12/865,767 priority Critical patent/US8271438B2/en
Priority to PCT/JP2010/002541 priority patent/WO2011125127A1/ja
Publication of WO2011125127A1 publication Critical patent/WO2011125127A1/ja
Priority to US13/572,814 priority patent/US8495014B2/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/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/2071Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using a plurality of controllers
    • G06F11/2074Asynchronous techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2082Data synchronisation

Definitions

  • the present invention relates to storage control in a storage system that performs remote copy, which is a copy of data between storage apparatuses.
  • Remote copy which is a copy of data between the first and second storage devices.
  • remote copy for example, there are synchronous remote copy and asynchronous remote copy.
  • the first storage device receives a write request from the host
  • synchronous remote copy is employed, the data following the write request is transferred from the first storage device to the second storage device, and then the write request is made.
  • Completion response is sent to the host device, but if asynchronous remote copy is employed, the write completion is completed even if the data according to the write request is not transferred from the first storage device to the second storage device.
  • a response is sent to the host device.
  • the first storage device has a first DVOL (data volume that is a logical volume in which data is stored), A first JVOL (a journal volume that is a logical volume in which a journal (hereinafter referred to as JNL) is stored) is included.
  • the second storage device has a second JVOL in addition to the second DVOL.
  • the first storage device stores the data according to the write request in the first DVOL, and stores the JNL of the data in the first JVOL.
  • the first storage device transfers the JNL in the first JVOL to the second storage device, and the second storage device writes the JNL from the first storage device to the second JVOL. Thereafter, the second storage device writes the data held by the JNL in the second JVOL to the second DVOL. As a result, the data written to the first DVOL is copied to the second DVOL.
  • Patent Document 1 discloses a multi-hop (cascade) asynchronous remote copy system.
  • the multi-hop method three or more storage devices are connected in series, the storage device at the start point is the copy source, the storage device at the end point is the copy destination, and the intermediate storage device existing between the start point and the end point is Both the copy source and the copy destination.
  • Patent Document 1 discloses, for example, the following.
  • the first storage device is the copy source
  • the third storage device is the copy destination
  • the second storage device is between the first and third storage devices, and is also the copy source. It is also a copy destination.
  • the first storage device has a first DVOL and a first JVOL.
  • the second storage device has a second DVOL, a first second JVOL, and a second second JVOL.
  • the third storage device has a third DVOL and a third JVOL.
  • the first and second DVOLs are paired.
  • the first DVOL is a primary DVOL (PVOL), and the second DVOL is a secondary DVOL (SVOL).
  • the second and third DVOL are paired.
  • the second DVOL is a primary DVOL (PVOL), and the third DVOL is a secondary DVOL (SVOL). That is, the second DVOL is an SPVOL that is both a PVOL and an SVOL.
  • the first host device writes data to the first DVOL.
  • the first host device updates the update number.
  • the first storage device writes the JNL of data to be written to the first DVOL to the first JVOL.
  • JNL includes an update number in addition to input / output target data of the host device.
  • the JNL in the first JVOL is copied to the first second JVOL.
  • the second storage device reflects one or more unreflected JNLs in the first second JVOL in the second DVOL in the order of the update numbers (the data held by the JNL is reflected in the second DVOL). Write).
  • the second storage device writes the JNL including the data in the JNL reflected in the second DVOL to the second second JVOL.
  • the JNL in the second second JVOL is copied to the third JVOL.
  • the third storage device reflects one or more unreflected JNLs in the third JVOL in the third DVOL in the order of the update numbers.
  • the first pair that is a pair of the first DVOL (PVOL) and the second DVOL (the first pair, and the second pair that is a pair of the second DVOL and the third DVOL).
  • a pair of 2 is in series, and according to the multi-hop asynchronous remote copy, cooperation of three or more storage devices is important.
  • the formation copy is a copy that matches the contents of the PVOL and the contents of the SVOL.
  • the formation copy is also performed when the contents (data) of the PVOL and SVOL constituting the suspended pair are matched.
  • the copy source storage apparatus when a certain pair is suspended, as shown in FIG. 23, even if the copy source storage apparatus writes data to the PVOL, it does not create a JNL having the data.
  • the copy source storage apparatus writes data to a certain write destination block of the PVOL, the write destination block has been updated (the data in the write destination block is the same as the address of the write destination block in the SVOL). This is managed using, for example, a bitmap.
  • the formation copy is performed.
  • the copy source storage device creates a JNL having the data and update number stored in the updated block in the PVOL, and writes the created JNL to the JVOL in the copy destination storage device.
  • the copy destination storage apparatus reflects the JNL in the JVOL in the SVOL.
  • the formation copy is performed for both the first and second pairs.
  • the update number in the JNL created in the formation copy is given by the copy source storage apparatus.
  • the first formation copy is made between the first and second storages.
  • the second formation copy is preferably performed between the second and third storages.
  • the first DVOL is in a write permission state in which data can be written from the first host. Because the first DVOL is in a write-inhibited state (a state in which data writing is prohibited from the first host) during the second formation copy, the start of business can be accelerated. Because it can.
  • the second storage device that is the copy source updates the update number and creates a JNL having the update number (for example, “80”).
  • the update number is updated and a JNL including the data and the update number (for example, “40”) is created.
  • the JNL is transmitted from the first storage device to the second storage device. Therefore, the second storage device updates the third storage device with the JNL including the update number (for example, “80”) updated by the second storage device and the update updated by the first storage device. Both the JNL including the number (eg, “40”) will be transmitted.
  • the third storage device reflects a plurality of JNLs from the second storage device in the SVOL in the order of the update numbers, but the update of the update numbers in the first storage device and the second storage Updating the update number at the device is not relevant. For this reason, the update numbers may be non-consecutive, and therefore JNL cannot be properly reflected in the SVOL.
  • the following cases are another case where cooperation of three or more storage devices becomes a problem. That is, when the second storage device stops due to a failure or the like, the JNL in the first storage device is transmitted to the third storage device, so that the business can be continued, but the third storage device It is possible that the JNL to be transmitted has already been purged from the first storage device.
  • an object of the present invention is to write the first DVOL in the first storage device while the formation copy is being performed between the second and third storage devices in the multi-hop asynchronous remote copy system. It is to enable JNL to be normally reflected in the DVOL in the third storage device even in the permitted state.
  • Another object of the present invention is to prevent a JNL to be sent to a third storage device from being purged from the first storage device after the second storage device is stopped in a multi-hop asynchronous remote copy system. There is.
  • the asynchronous remote copy system which is a storage system that performs asynchronous remote copy, has three or more storage devices in series.
  • the three or more storage devices include a first storage device having a first storage resource group and connected to a host device, and one or more second storage devices each having a second storage resource group, A third storage device having a third storage resource group.
  • the first storage resource group has a first data volume that is a logical volume to which data is written, and a first journal storage resource that is a storage resource to which a data journal is written.
  • the second storage resource group has a second data volume that is a logical volume to which data is written, and a second journal storage resource that is a storage resource to which a data journal is written.
  • the third storage resource group has a third data volume that is a logical volume to which data is written, and a third journal storage resource that is a storage resource to which a data journal is written.
  • the first storage device is the start point in the asynchronous remote copy of the multi-hop method
  • the third storage device is the end point in the asynchronous remote copy
  • one or more second storage devices are the first and third It is an intermediate storage device between the storage devices.
  • the first storage device When data is written from the host device to the first data volume, the first storage device updates an update number that is updated every time data is written to the data volume in the first storage resource group. Then, a journal including the update number and the data is created, and the journal is written to the first journal storage resource.
  • Multi-hop asynchronous remote copy is performed.
  • the journal is sequentially transferred from the first storage device to the third storage device via one or more second storage devices, and reflected at each transfer destination. Data in the first data volume is written to each second data volume and third data volume.
  • the following is performed in multi-hop asynchronous remote copy.
  • the journal is copied from the first journal storage resource to the second journal storage resource.
  • the second storage device reflects one or more unreflected journals in the second journal storage resource to the second data volume in the order of the update numbers.
  • the journal is copied from the second journal storage resource to the third journal storage resource.
  • the third storage device reflects one or more unreflected journals in the third journal storage resource in the third data volume in the order of the update numbers.
  • a first forming copy that is a copy for matching the contents of the first data volume and the contents of the second data volume;
  • a second formation copy which is a copy for matching the contents of the second data volume and the contents of the third data volume, is performed.
  • the second storage device creates a journal including the update number and the data in the second data volume.
  • the created journal is transferred from the second storage device to the third storage device.
  • the third storage device reflects the journal from the second storage device in the second data volume in the order of the update numbers.
  • the update number in the journal created by the second storage device in the second formation copy is an update number updated by the first storage device and acquired from the first storage device.
  • journals including the same update number are sequentially purged from the journal storage resource in the end point storage apparatus to the journal storage resource in the start point storage apparatus.
  • the third storage device purges the journal reflected from the third journal storage resource from the third journal storage resource, and sets the update number in the purged journal to the second journal storage resource.
  • the update notified by each second storage device from one of the two storage devices connected to the second storage device (the third storage device or the second storage device on the end point side)
  • the journal including the number is purged from the journal storage resource in the second storage device, and the update number in the purged journal is replaced with the other of the two storage devices (the second storage device on the start side) Or the first storage device).
  • the first storage device purges the journal including the update number notified from the second storage device from the first journal storage resource.
  • FIG. 1 shows a configuration of an asynchronous remote copy system according to an embodiment of the present invention. Indicates the path between storage devices.
  • the status of the JNL groups 112A, 112B and 112C in FIG. 5 and the validity / invalidity of the mirror are shown.
  • the status of JNL groups 112B and 112C in FIG. 6 and the validity / invalidity of the mirror are shown.
  • An overview of multi-hop asynchronous remote copy is shown below.
  • the JNL transfer and JNL reflection when a failure occurs in the second storage 105B are shown.
  • the configuration of the first storage 105A is shown.
  • the structure of JNL is shown.
  • the structure of JVOL115A is shown.
  • the structure of meta information is shown.
  • the control information which each storage has is shown.
  • the structure of the JVOL effective bitmap 701A is shown.
  • the structure of the DVOL effective bitmap 702A is shown.
  • the structure of the JVOL management table 703A is shown.
  • the structure of the JNL group management table 704A is shown.
  • the structure of the pair management table 705A is shown.
  • the flow of write processing in the first storage 105A is shown.
  • FIG. 18A shows writing data to the PVOL 113A and writing JNL to the first JVOL 115A.
  • FIG. 18B shows the transfer of JNL from the first storage 105A to the second storage 105B and the reflection of JNL in the second storage 105B.
  • FIG. 19A shows the update of meta information in the JNL in the second storage 105B.
  • FIG. 19B shows the transfer of JNL from the second storage 105B to the third storage 105C and the reflection of JNL in the third storage 105C.
  • FIG. 20A shows the purge of JNL in the third storage 105C and the notification of SEQ # in the purged JNL (serial number given in the order of update of DVOL in the JNL group of the first storage 105A).
  • FIG. 20B shows the purge of JNL in the second storage 105B and the notification of SEQ # in the purged JNL.
  • FIG. 20C shows the purge of JNL in the first storage 105A. The processing performed at the time of the 2nd formation copy after the completion of the 1st formation copy is shown.
  • xxx table and “xxx bitmap”, but the various types of information may be expressed in a data structure other than a table or a bitmap. . In order to show that it does not depend on the data structure, “xxx table” and “xxx bitmap” can be called “xxx information”.
  • numbers are mainly used as identification information for various objects, but other types of identification information (for example, names) may be employed instead of numbers.
  • FIG. 1 shows a configuration of an asynchronous remote copy system according to an embodiment of the present invention.
  • a journal is described as “JNL”
  • a data volume that is a logical volume to which data is written is described as “DVOL”
  • a JNL volume that is a logical volume to which JNL is written is described as “JVOL”.
  • the host device is described as “host”
  • the storage device is described as “storage”
  • DKC controller
  • first site 101A There are three or more sites, for example, a first site 101A, a second site 101B, and a third site 101C.
  • the reference numerals of the elements included in the first site 101A are combinations of the parent number and the child code “A”
  • the reference numerals of the elements included in the second site 101B are the parent numbers.
  • the child code “B” and the reference code of the element included in the third site 101B is a combination of the parent number and the child code “C”.
  • the first site 101A has a first storage 105A and a first host 103A connected to the first storage 105A.
  • the first storage 105A includes a first DKC 111A and a first JNL group 112A.
  • One JNL group 112A includes a DVOL 113A and a JVOL 115A.
  • the second and third sites 101B and 101C have the same configuration as the first site 101A.
  • the storages 105A and 105B are physically connected via a dedicated line (or communication network).
  • the storages 105B and 105C are also physically connected via a dedicated line (or communication network).
  • the storages 105A and 105C are also physically connected via a dedicated line (or communication network).
  • control path is a path necessary for transmission / reception of control commands between the storages.
  • the data transfer path is a path through which JNL flows. Both the control path and the data transfer path are paths capable of bidirectional communication.
  • mirror There is a logical connection between JNL groups called “mirror”.
  • the connection between JNL groups 112A and 112B is mirror # 0 (mirror (M0) assigned number “0”)
  • the connection between JNL groups 112A and 112C is mirror # 1 ( The number “1” is a mirror (M1))
  • the connection between the JNL groups 112B and 112C is a mirror # 2 (a mirror (M2) assigned a number “2”).
  • the first site 101A is the operation site.
  • the status of the first JNL group 112A is “master”
  • the status of the third JNL group 112C is “restore”
  • the status of the second JNL group 112BC is “ Master / Restore ".
  • the status “master” means the copy source.
  • the status “restore” means a copy destination.
  • the status “master / restore” means that it is both a copy source and a copy destination.
  • the dotted-line mirror is an invalid mirror
  • the solid-line mirror is an effective mirror.
  • the first DVOL 113A is a primary DVOL (hereinafter referred to as PVOL), and the third DVOL 113C is a secondary DVOL (hereinafter referred to as SVOL).
  • the second DVOL 113B is both a primary DVOL and a secondary DVOL (hereinafter, SPVOL).
  • the first host 103A writes data to the PVOL 113A as the business is executed (S11).
  • the first storage 105A updates the sequence number (hereinafter, SEQ #), creates a JNL having the updated SEQ # and the data written to the PVOL 113A, and writes the created JNL to the first JVOL 115A ( S12).
  • SEQ # is a number updated (for example, incremented (or decremented by 1)) each time data is written to the first JNL group 112A (DVOL in the first JNL group 112A).
  • the second storage 105B reads the JNL from the first JVOL 115A and writes the read JNL to the second JVOL 115B (S21).
  • the second storage 105B reflects one or more unreflected JNLs in the second JVOL 115B to the SVOL 113B in ascending order of SEQ # (S22).
  • the second storage 105B writes the data held in the unreflected JNL in the second JVOL 115B to the SPVOL 113B.
  • the data written to the PVOL 113A is copied to the SPVOL 113B.
  • the third storage 105C reads the JNL from the second JVOL 115B and writes the read JNL to the third JVOL 115C (S31).
  • the third storage 105C reflects one or more unreflected JNLs in the third JVOL 115C to the SVOL 113C in the ascending order of SEQ # (S32).
  • the third storage 105C writes the data held in the unreflected JNL in the third JVOL 115C to the SVOL 113C.
  • the data written to the PVOL 113A is copied to the SVOL 113C.
  • the three or more storage devices are connected in series.
  • the three or more storage devices are constituted by a start point storage device, an end point storage device, and one or more intermediate storage devices between the start point and the end point.
  • the start storage device is the first storage device
  • the end storage device is the third storage device
  • the intermediate storage device is the second storage device.
  • the JVOL included in the second JNL group 112B is common to the copy source JNL group 112A and the copy destination JNL group 112C. This is realized by copying (transferring) the JNL between the storage apparatuses when the copy destination storage apparatus reads the JNL from the JVOL in the copy source storage apparatus. According to this feature, the storage capacity consumed in the second storage 105B can be saved.
  • the mirror # 1 is validated by the storage 105A and / or 105C.
  • the status of the first JNL group 112A is “master”, and the status of the third JNL group 112C is “restore”.
  • the third storage 105C reads the JNL that has not been read from the second JVOL 112B, the JNL from the first JVOL 112A, and writes the read JNL to the third JVOL 115C (S41).
  • the third storage 105C reflects one or more unreflected JNLs in the third JVOL 115C to the SVOL 113C in the order of the SEQ # in ascending order (S42). Even if the second storage 105B is stopped due to a failure or the like, the first storage 105A does not need to put the PVOL 113A in a write-inhibited state (a state in which data writing from the first host 103A is prohibited). .
  • the first storage 105A when the first storage 105A receives a write request designating the PVOL 113A from the first host 103A, the first storage 105A writes the data according to the write request to the PVOL 113A, updates the SEQ #, and updates the data and the updated SEQ #. Is created, and the created JNL is written to the first JVOL 115A.
  • control is performed so that the JNL that the third storage 105C has not read from the second JVOL 115B is not purged from the first JVOL 112A.
  • the order in which JNL is transferred between the storages is in the order of SEQ #, and the JNL is purged in the order of the storages 105C, 105B, and 105A. That is, JNLs having the same SEQ # are purged from the storage 105A after being purged from the storages 105C and 105B.
  • the first formation copy is performed between the storages 105A and 105B, and the second formation copy is performed between the storages 105B and 105C. is there.
  • the PVOL 113A is in a write-permitted state (a state in which data can be written from the first host 103A) while the second formation copy is being performed, the third storage In 105C, the JNL can be normally reflected in the SVOL 113C.
  • the SEQ # included in the JNL created by the second formation copy is not the SEQ # (SEQ # updated by the second storage 105B) of the second storage 105B, but the first # This is SEQ # (SEQ # updated by the first storage 105A) of the storage 105A.
  • the elements in the first site 101A will be described as a representative example, but unless otherwise specified, the elements in the second and third sites 101B and 101C are in the first site 101A. Is essentially the same as
  • FIG. 7 shows the configuration of the first storage 105A.
  • the first storage 105A includes a first DKC 111A and a plurality of RAID (Redundant Array of Independent) (or Inexpensive) Disks) (hereinafter referred to as RG) 900A.
  • the RG 900A is composed of a plurality of HDDs (Hard Disk Disk Drive). Instead of the HDD, another physical storage device such as a flash memory may be employed.
  • One or more logical volumes are based on one RG 900A.
  • the logical volume is, for example, the above-mentioned DVOL or JVOL, but either of them may be a substantive logical volume that is a part of the storage space of the RG900A, and is configured based on one or more RG900. It may be a virtual logical volume (virtual logical volume according to Thin Provisioning technology) to which a real area is dynamically allocated from a pool (storage area composed of a plurality of real areas).
  • the DKC 111A includes a plurality of front-end interface devices (hereinafter referred to as FE-IF) 610A, a back-end interface device (hereinafter referred to as BE-IF) 150A, a cache memory (hereinafter referred to as CM) 620A, and a shared memory (hereinafter referred to as SM). 640A and one or more CPUs (Central Processing Unit) 630A connected to them. The processing of the DKC 111A may be performed by the CPU 630A executing one or more computer programs, but at least a part of the processing may be performed by a hardware circuit.
  • FE-IF front-end interface devices
  • BE-IF back-end interface device
  • CM cache memory
  • SM shared memory
  • 640A and one or more CPUs (Central Processing Unit) 630A connected to them.
  • the processing of the DKC 111A may be performed by the CPU 630A executing one or more computer programs, but at least a part of the processing may be performed by
  • the first host 103A and the second and third storages 105B and 105C are connected to the plurality of FE-IFs 610A.
  • the DKC 111A (CPU 630A) communicates with the first host 103A, the second and third storages 105B and 105C via the FE-IF 610A.
  • a plurality of RG900A are connected to the BE-IF 150A.
  • the DKC 111A (CPU 630A) writes data (or JNL) to the RG 900A that is the basis of the write destination logical volume (for example, the first DVOL 113A or the first JVOL 115A) via the BE-IF 150A.
  • CM 620A stores data (and JNL) written to RG 900A and data (and JNL) read from RG 900A.
  • SM640A stores various control information used for controlling the processing of DKC 111A.
  • the CPU 630A controls processing performed by the DKC 111A.
  • the DKC 111A is not limited to the configuration shown in FIG. 7, and may have other configurations.
  • the configurations of the second and third storages 105B and 105C are substantially the same as the configuration of the first storage 105A.
  • the configuration of the DKC 111B or 111C may be different from the configuration of the DKC 111A.
  • FIG. 8 shows the configuration of JNL
  • FIG. 9 shows the configuration of JVOL 115A.
  • JNL consists of meta information and data.
  • the JVOL 115A includes a meta area 1201A and a data area 1203A.
  • the meta area 1201A stores meta information
  • the data area 1203A stores data. Note that the meta area 1201A may exist in a storage resource other than the RG 900A, such as the CM 620A.
  • FIG. 10 shows the structure of meta information.
  • the meta information is management information regarding data included in the JNL.
  • the meta information is, for example, the following information: (*) SEQ #, (*) Write destination information (information indicating where in the DVOL data is written) (*) PVOL # (copy source DVOL number), (*) SVOL # (copy destination DVOL number), (*) Information indicating the position in the JVOL of the data corresponding to this meta information (this information is included when the JNL is written in the JVOL), including.
  • the first DKC 111A manages SEQ #. SEQ # exists for each JNL group 112A. When the first DKC 111A writes data to the DVOL 113A in a certain JNL group 112A, the first DKC 111A updates the SEQ # corresponding to the JNL group 112A. SEQ # is stored in, for example, SM640A or another storage resource.
  • the SM 640A receives, as control information, for example, a JVOL valid bitmap 701A, a DVOL valid bitmap 702A, a JVOL management table 703A, a JNL group management table 704A, a pair management table 705A, a difference bitmap 706A, and A mirror bitmap 707A is stored.
  • the SM 640B in the second storage 105B stores control information 701B to 707B
  • the SM 640C in the third storage 105C stores control information 701C to 707C.
  • the control information 701A to 707A will be described as a representative.
  • the JNL group can have a maximum of 64 logical volumes, for example. As shown in FIG. 12, the JVOL effective bitmap 701A has 64 bits for each JNL group. If the nth (n is an integer between 0 and 63) logical volume is JVOL115A, the nth bit is on (eg, 1).
  • the DVOL effective bitmap 702A has 64 bits for each JNL group as shown in FIG. If the nth (n is an integer between 0 and 63) logical volume is JVOL115A, the nth bit is on (eg, 1).
  • the JVOL management table 703A exists for each JNL group 112A. As shown in FIG. 14, the table 703A represents the information indicating the start address of the meta area, the information indicating the size of the meta area, the information indicating the start address of the data area, and the size of the data area for each JVOL 115A. Information. That is, the table 703A indicates where from where to where is the meta area and where from where is the data area for each JVOL 115A.
  • the JNL group management table 704A has information regarding the JNL group. Specifically, for example, as shown in FIG. 15, the table 704A includes the following information for each JNL group: (*) JNL group # 1001A representing the number of the JNL group, (*) Status 1002A indicating the status of the JNL group, (*) Mirror # 1003A indicating the number of the mirror existing in the remote copy system according to the present embodiment, (*) Partner JNL group # 1004A representing the partner JNL group number, (*) Partner storage # 1005A indicating the number of the storage device having the partner JNL group, (*) Purged SEQ # 1006A representing SEQ # of recently purged JNL, (*) Purgeable SEQ # 1007A representing SEQ # of JNL that may be purged, (*) Read SEQ # 1008A representing SEQ # of recently read JNL, Have
  • the pair management table 705A has information regarding a pair of DVOLs. Specifically, for example, as shown in FIG. 16, the table 705A includes the following information for each DVOL 113A: (*) DVOL # 1101A representing the number of DVOL113A, (*) JNL group # 1102A representing the number of JNL group 112A including DVOL 113A, (*) Copy destination VOL # 1103A representing the DVOL number of the copy destination of DVOL 113A, (*) For a pair of DVOL 113A and copy destination DVOL, status 1104A indicating the pair status of DVOL 113A, Have
  • the difference bitmap 706A is provided for each DVOL 113A.
  • the DVOL 113A is composed of a plurality of blocks.
  • the difference bitmap 706A represents which block of the DVOL 113A has been updated. That is, the bits included in the difference bitmap 706A correspond to blocks.
  • the difference bitmap 706A is updated when the pair status of the DVOL 113A is a predetermined status. Specifically, for example, when the pair status of a certain DVOL 113A is a predetermined status and data is written to a certain block in the DVOL 113A, the DKC 111A, in the difference bitmap 706A corresponding to the DVOL 113A, The bit corresponding to the block is changed to ON (for example, 1).
  • the mirror bitmap 707A represents which mirror is valid and which mirror is invalid.
  • the mirror bitmap 707A has a plurality of bits corresponding to a plurality of mirrors. For example, normally, mirrors # 0 and # 2 are valid and mirror # 1 is invalid (see FIG. 5). In this case, the bit corresponding to mirrors # 0 and # 2 is on (for example, 1), and the bit corresponding to mirror # 1 is off (for example, 0).
  • mirrors # 0 and # 2 are invalid and mirror # 1 is valid (see FIG. 6). In this case, the bit corresponding to mirrors # 0 and # 2 is off, and the bit corresponding to mirror # 1 is on.
  • the first DKC 111A receives a write request designating the PVOL 113A from the first host 103A (S2201), secures a CM area (cache memory area) in the CM 630A, and secures it in the secured CM area. Then, data according to the write request (data to be written) is written (S2202). At this time, the first DKC 111A may respond to the completion of writing to the first host 103A.
  • the first DKC 111A writes the write target data in the CM 630A to the PVOL 113A (S2203).
  • the first DKC 111A updates the SEQ # corresponding to the JNL group 112A including the PVOL 113A (S2211).
  • the first DKC 111A creates a JNL (S2212), and writes the created JNL to the first JVOL 115A.
  • the JNL created in S2212 has meta information including SEQ # updated in S2211, and data written to the PVOL 113A in S2203.
  • the data may be data read from the PVOL 113A or data remaining in the CM 630A.
  • the first DKC 111A creates a JNL 10 having the data, and writes the created JNL 10 to the first JVOL 115A (S4002).
  • the meta information in the JNL 10 has, as SEQ #, the order “100” in which data included in the JNL is written in the JNL group 112A. Further, the meta information has a number “113A” representing PVOL 113A as PVOL #, and a number “113C” representing SPVOL 113B (a partner of PVOL 113A) as SVOL #.
  • the first DKC 111A specifies that the PVOL # is “113A” and the SVOL # is “113B” based on the pair management table 705A, and creates the JNL including the meta information shown in FIG.
  • the second DKC 111B reads the JNL 10 from the first JVOL 115A, and writes the JNL 10 to the second JVOL 115B (S4003). Specifically, for example, the second DKC 111B sends a read request including SEQ #: 100 and the number of the first JVOL 115A (or a LUN (Logical Unit Number) corresponding thereto) to the first storage 105A. Send to.
  • SEQ #: 100 is a value that is one greater than the value represented by the read SEQ # 1008B (information 1008B in the JNL group management table 704B) corresponding to the JNL group 112B and mirror # 0. That is, SEQ #: 100 is SEQ # calculated based on the read SEQ # 1008B. That is, the second DKC 111B reads the JNL from the first storage 105A in the order of increasing SEQ #.
  • the second DKC 111B identifies the SPVOL 113B from the SVOL # of the JNL 10 in the second JVOL 115B, and writes the data that the JNL 10 has to the SPVOL 113B (S4004).
  • the second DKC 111B updates the PVOL # and SVOL # included in the meta information in the JNL 10, and does not update at least the SEQ # in the meta information (S4005).
  • the second DKC 111B specifies the number of the SVOL 113C that is the pair partner of the SVPOL 113B from the pair management table 705B.
  • the second DKC 11B changes the PVOL # in the meta information of the JNL 10 from “113A” to “113B”, which is the number of the SPVOL 113B, and changes the SVOL # in the meta information to “113B”.
  • To “113C” which is the number of the SVOL 113C.
  • SEQ # remains “100” and is not updated.
  • the second DKC 111B updates the PVOL # and SVOL # in the meta information of the JNL10 after reflecting the JNL10, and does not update the PVOL # and SVOL # before reflecting the JNL10.
  • the second DKC 111B receives a read request (JNL read request) designating SEQ #: 10 included in the JNL 10 from the third storage 105C before updating the PVOL # and SVOL # in the meta information. Also, the JNL 10 is not transmitted to the third storage 105C (for example, a predetermined response (for example, an error) is returned in response to the read request).
  • JNL read request designating SEQ #: 10 included in the JNL 10 from the third storage 105C before updating the PVOL # and SVOL # in the meta information.
  • the JNL 10 is not transmitted to the third storage 105C (for example, a predetermined response (for example, an error) is returned in response to the read request).
  • the JNL 10 may be copied from the second JVOL 115B to the third JVOL 115C (S4006).
  • the third DKC 111C transmits a read request including SEQ #: 100 and the number of the second JVOL 115B (or the LUN corresponding thereto) to the second storage 105B.
  • SEQ #: 100 is a value that is one greater than the value represented by the read SEQ # 1008C (information 1008C in the JNL group management table 704C) corresponding to the JNL group 112C and mirror # 2. That is, SEQ #: 100 is SEQ # calculated based on the read SEQ # 1008C.
  • the third DKC 111C reads the JNL from the second storage 105B in the order of increasing SEQ #.
  • the second DKC 111B receives the read request, if S4005 is performed, the second DKC 111B reads the JNL 10 from the second JVOL 115B and transmits the JNL 10 to the third storage 105C in response to the read request.
  • the third DKC 111C receives the JNL 10, and writes the JNL 10 to the third JVOL 115C.
  • the third DKC 111C identifies the SVOL 113C from the SVOL # of the JNL 10 in the third JVOL 115C, and writes the data that the JNL 10 has to the SVOL 113C (S4007).
  • the third storage 105C is the end point storage device. Therefore, at the time of S4007, the third DKC 111C determines that the value represented by the purgeable SEQ # 1008C (information 1008C in the JNL group management table 704C) corresponding to the JNL group 112C and mirror # 2 is reflected in S4007. The value is changed to “100” represented by SEQ #.
  • the third DKC 111C purges the JNL 10 having the value “100” represented by the updated purgeable SEQ # 1008C as the SEQ # from the third JVOL 115C (S4008). Then, the third DKC 111C notifies the purged SEQ #: 100 in the JNL 10 to the second storage 105B having the SPVOL 113B that is the copy source of the SVOL 113C (S4009).
  • the second DKC 111B receives the notification SEQ #: 100 from the third storage 105C.
  • the second DKC 111B changes the value represented by the purgeable SEQ # 1008B (information 1008B in the JNL group management table 704B) corresponding to the JNL group 112B and mirror # 0 to the value “100” represented by the notified SEQ #. To do.
  • the second DKC 111B purges the JNL 10 having the value “100” represented by the updated purgeable SEQ # 1008B as the SEQ # from the second JVOL 115B (S4010). Then, the second DKC 111B notifies the purged SEQ #: 100 in the JNL 10 to the first storage 105A having the PVOL 113A that is the copy source of the SPVOL 113B (S4011).
  • the first DKC 111A receives a notification of SEQ #: 100 from the second storage 105B.
  • the first DKC 111A changes the value represented by the purgeable SEQ # 1008A (information 1008A in the JNL group management table 704A) corresponding to the JNL group 112A and mirror # 0 to the value “100” represented by the notified SEQ #. To do.
  • the first DKC 111A purges the JNL 10 having the value “100” represented by the updated purgeable SEQ # 1008A as the SEQ # from the first JVOL 115A (S4012).
  • the JNL is sequentially purged from the storage device at the end point (third storage 105C) to the storage device at the start point (first storage 105A). Therefore, the JNL required by the third storage 105C when a failure occurs in the second storage 105B remains in the first storage 105A. Therefore, the business can be continued even if a failure occurs in the second storage 105B.
  • PVOL 113A Before the start of multi-hop asynchronous remote copy, the contents of PVOL 113A, SPVOL 113B, and SVOL 113C must match.
  • the formation copy is performed between the storages 105A and 105B and between the storages 105B and 105C.
  • the first DKC 111A manages the difference from the SPVOL 113B in the PVOL 113A
  • the second DKC 111B manages the difference from the SVOL 113C in the SPVOL 113B.
  • the first formation copy is performed between the storages 105A and 105B (S2101). Specific processing performed in the formation copy is as described with reference to FIG. That is, the first DKC 111A updates the SEQ # for each difference block (updated block) in the PVOL 113A, creates a JNL having the SEQ # and the data in the difference block, and creates the created JNL as the first JNL. Write to the second JVOL 115B without writing to the JVOL 115A. The second DKC 115B reflects one or more unreflected JNLs (JNLs written in the first formation copy) in the second JVOL 115B to the SPVOL 113B in the ascending order of SEQ #.
  • the “difference block” in the PVOL 113A is a block that stores data different from the data in the block corresponding to that block (a block in the SPVOL 11BC (for example, a block having the same address as the address of the difference block)).
  • the second DKC 111B manages the JNL reflection destination block in the SPVOL 113B as a difference block.
  • a second formation copy is performed between the storages 105B and 105C (S2103).
  • the JNL written in the second JVOL 115B in the first formation copy (JNL having the data in the difference block in the PVOL 113A) is not transferred from the second JVOL 115B to the third JVOL 115C. That is, in the second storage 105B, a new JNL is created for each differential block in the SPVOL 113B, and the created JNL is written in the third JVOL 115C without being written in the second JVOL 115B.
  • the “difference block” in the SPVOL 113B is a block that stores data different from data in a block corresponding to the difference block (a block in the SVOL 113C (for example, a block having the same address as the address of the difference block)).
  • the second DKC 111B transmits a dummy JNL request to the first storage 105A (S2103-V).
  • “Dummy JNL” is a JNL having meta information but no data.
  • the first DKC 111A receives the dummy JNL request, and in response to the request, updates the SEQ # managed by the first DKC 111A and creates a dummy JNL including the updated SEQ #. To do.
  • the first DKC 111A transmits the created dummy JNL to the second storage 105B (S2103-W).
  • the second DKC 111B receives the dummy JNL, writes the dummy JNL into the CM 630B, and makes a decision 50.
  • the determination 50 is that the SEQ # of the received dummy JNL is the SEQ # next to the SEQ # of the JNL that the second DKC 111B has recently transferred to the third storage 105C (in the description of FIGS. 21 and 22 below). It is determined whether or not it is referred to as “target SEQ #”.
  • the second DKC 111B creates a JNL by including the data in the difference block in the received dummy JNL. This JNL is stored in the CM 630B, and is not written in the second JVOL 115B.
  • the second DKC 111B writes the created JNL into the third JVOL 115C (S2103-X). Specifically, the second DKC 111B transmits a write request (JNL write request) specifying the third JVOL 115C to the third storage 105B. The third DKC 111C receives the write request, and writes the JNL to the third JVOL 115C in response to the write request.
  • JNL write request JNL write request
  • the third DKC 111C reflects the unreflected JNL written in the third JVOL 115C in S2103-X to the SVOL 113C (S2103-Y). At that time, the third DKC 111C may purge the JNL reflected in S2103-Y from the third JVOL 115C. The third DKC 111C may notify the second DKC 111B of the SEQ # in the purged JNL. The second DKC 111B may purge the JNL having the notified SEQ # from the CM 630B.
  • the SEQ # in the JNL created by the second DKC 111B during the second formation copy is the SEQ # updated by the first DKC 111B. Therefore, the SEQ # included in the JNL transferred between the storage apparatuses is the same as the SEQ # updated by the first DKC 111B in both the first formation copy and the second formation copy. For this reason, the continuity of SEQ # is guaranteed.
  • the first DKC 111A executes a write process (see FIG. 17) in response to the write request (S2112).
  • the first DKC 111A updates the SEQ # managed by itself, creates a JNL having the data written to the PVOL 113A and the updated SEQ #, and creates the created JNL (hereinafter, new differential JNL).
  • new differential JNL are written into the first JVOL 115A.
  • the second DKC 111B reads the new difference JNL from the first JVOL 115A and writes the new difference JNL to the second JVOL 115B (S2121). Specifically, for example, the second DKC 111B transmits a read request designating the SEQ # included in the new difference JNL and the first JVOL 115A to the first storage 105A. The first DKC 111A receives the read request. In response to the read request, the first DKC 111A reads a new difference JNL including the same SEQ # as the SEQ # included in the read request from the first JVOL 115A. The first DKC 111A transmits the read new difference JNL to the second storage 105B. The second DKC 111B receives the new difference JNL and writes it into the CM 630B. The second DKC 111B may write the new difference JNL into the second JVOL 115B.
  • the second DKC 111B reflects the new difference JNL (new difference JNL including the target SEQ #) in the SPVOL 113B (S2122).
  • the new difference JNL may be reflected in the SPVOL 113B at an arbitrary timing until the second formation copy is completed (for example, before performing S2141 described later).
  • the second DKC 111B writes the new difference JNL (new difference JNL including the target SEQ #) in the third JVOL 115C (S2123).
  • the second DKC 111B sends a notification of no difference block to the third storage 105C when there is no difference block in the SPVOL 113B (S2141). Upon receiving the notification, the third DKC 111C knows that there is no difference block in SPVOL 113B.
  • the second formation copy is performed when all the JNL written in the third JVOL 115C is reflected in the SVOL 113B during the second formation copy (that is, when there is no unreflected JNL in the third JVOL 115C). ) Complete. For this reason, the third DKC 111C periodically replaces the unreflected JNLs in the third JVOL 115C (reflects the unreflected JNLs in the order of SEQ #) in place of S2103-X. Or may be performed only when the notification of S2141 is received.
  • the second DKC 111B sends a dummy JNL request to the first storage 105A in order to create a JNL for the first differential block in the SVPVOL 113B.
  • the first DKC 111A transmits a dummy JNL having SEQ #: 40 to the second storage 105B.
  • the second DKC 111B creates a JNL by including the data in the first difference block in the dummy JNL, and writes the JNL (JNL including SEQ #: 40) to the third JVOL 115C.
  • the SEQ # in the first storage 105A is changed from “40” to “41”. ”.
  • the first DKC 111A creates a JNL including SEQ #: 41 and writes the JNL to the first JVOL 115A.
  • the second DKC 111B transmits a dummy JNL request for the second differential block to the first storage 105A.
  • the first DKC 111A updates SEQ # from “41” to “42”, and transmits a dummy JNL having the updated SEQ #: 42 to the second storage 105B.
  • the second DKC 111B creates a JNL by including the data in the second difference block in the dummy JNL.
  • SEQ #: 42 which the created JNL has is object SEQ #: 41 (SEQ #: 41 next to SEQ #: 40 in JNL recently written in 3rd JVOL115C) Detect not. That is, the second DKC 111B detects that SEQ # is not continuous.
  • the second DKC 111B reads the JNL having the target SEQ #: 41 from the first JVOL 115A, and writes the read JNL to the second JVOL 115B.
  • the second DKC 111B reflects the JNL (JNL having the target SEQ #: 41) written in the second JVOL 115B in the SPVOL 113B and writes it in the third JVOL 115C.
  • the second DKC 111B writes the JNL having SEQ #: 42 (JNL in the CM 630B) to the third JVOL 115B.
  • the plurality of SEQ # s in the plurality of JNLs written in the third JVOL 115C are continuous. For this reason, even if the PVOL 113A is in a write-permitted state during the second formation copy, the JNL can be normally reflected in the SVOL 113C in the third storage 105C.
  • a JNL without data called dummy JNL is used to transfer SEQ # from the first storage 105A to the second storage 105B. . Therefore, the SEQ # for JNL created in the second formation copy can be notified from the first storage 105A to the second storage 105B without making a major design change.
  • sequence number (SEQ #) is employed as the update number, but other types of numbers that increase or decrease regularly may be employed.
  • all JNLs have the updated SEQ #, but may have the pre-update SEQ # instead.
  • the JNL transferred from the second storage 105B to the third storage 105C in the second formation copy is written to the CM 630C and written from the CM 630C to the third JVOL 115C. Instead, it is stored in the CM 630. Although it is written, it does not have to be written in the third JVOL 115C.
  • the second DKC 111B sends a dummy JNL request regardless of whether or not the processing of the dummy JNL sent in response to the recently transmitted dummy JNL request is completed. , You may send.
  • the second DKC 111B purges the dummy JNL request from the CM 630B with the JNL created based on the dummy JNL sent in response to the recently transmitted dummy JNL request. It may be sent after being done.
  • the second DKC 111B may make the determination 50 when a JNL based on the dummy JNL is created.
  • At least one of the storages 105A to 105C may have a plurality of JNL groups.
  • At least one of the storages 105A to 105C may have a logical volume other than the logical volumes included in the JNL group.
  • JNL transfer between storage devices is performed by a copy destination storage device reading JNL from a JVOL in the copy source storage device, and a JVOL transfer in the copy destination storage device by the copy source storage device. Either transfer by writing the JNL to the JNL may be used.
  • the copy-destination second storage 105B may acquire SEQ # (dummy journal including SEQ) from the first storage 105A via the copy-source second storage 105B.
  • purging may be performed as follows.
  • the third storage 105C purges the JNL reflected from the third JVOL 115C from the third JVOL 115C, and the SEQ # in the purged JNL is connected to the third storage 105C. May be notified to the storage 105B.
  • Each second storage 105B receives the SEQ notified from one of the two storages connected to the second storage 105B (the third storage 105C or the second storage 105B on the end point side).
  • the included JNL is purged from the JVOL 115B in the second storage 105B, and the SEQ # in the purged JNL is replaced with the other one of the two storages (the second storage 105B on the starting point side or the first To the storage 105A).
  • the first storage 105A may purge the JNL including the SEQ # notified from the second storage 105B connected to the first storage 105A from the first JVOL 115A.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

 マルチホップ方式の非同期リモートコピー(第1から第2、第2から第3への非同期リモートコピー)の開始前に、第1のストレージ装置内の第1のデータボリュームの内容と第2のストレージ装置内の第2のデータボリュームの内容とを一致させるためのコピーである第1の形成コピーと、第2のデータボリュームの内容と第3のストレージ装置内の第3のデータボリュームの内容とを一致させるためのコピーである第2の形成コピーが行われる。第2の形成コピーにおいて、第2のストレージ装置が、更新番号と第2のデータボリューム内のデータとを含んだジャーナルを作成し、そのジャーナルが、第2のストレージ装置から第3のストレージ装置に転送される。その作成されたジャーナル内の更新番号は、第1のストレージ装置で更新され第1のストレージ装置から取得された更新番号である。

Description

非同期リモートコピーシステム、及び、記憶制御方法
 本発明は、ストレージ装置間のデータのコピーであるリモートコピーを行うストレージシステムでの記憶制御に関する。
 第1及び第2のストレージ装置間でのデータのコピーであるリモートコピーが知られている。リモートコピーとしては、例えば、同期リモートコピーと非同期リモートコピーがある。第1のストレージ装置がホストからライト要求を受信した場合、同期リモートコピーが採用されているならば、そのライト要求に従うデータが第1のストレージ装置から第2のストレージ装置に転送された後に、ライトの完了応答がホスト装置に送信されるが、非同期リモートコピーが採用されているならば、そのライト要求に従うデータが第1のストレージ装置から第2のストレージ装置に転送されなくても、ライトの完了応答がホスト装置に送信される。
 非同期リモートコピーが採用されたリモートコピーシステム(以下、非同期リモートコピーシステム)では、例えば、第1のストレージ装置が、第1のDVOL(データが格納される論理ボリュームであるデータボリューム)の他に、第1のJVOL(ジャーナル(以下、JNL)が格納される論理ボリュームであるジャーナルボリューム)を有する。同様に、第2のストレージ装置が、第2のDVOLの他に、第2のJVOLを有する。第1のストレージ装置は、ライト要求を受信した場合、ライト要求に従うデータを第1のDVOLに格納し、且つ、そのデータのJNLを第1のJVOLに格納する。第1のストレージ装置が、第1のJVOL内のJNLを、第2のストレージ装置に転送し、第2のストレージ装置が、第1のストレージ装置からのJNLを、第2のJVOLに書き込む。その後、第2のストレージ装置が、第2のJVOL内のJNLが有するデータを、第2のDVOLに書き込む。これにより、第1のDVOLに書き込まれたデータが、第2のDVOLにコピーされたことになる。
 特許文献1には、マルチホップ(カスケード)方式の非同期リモートコピーシステムが開示されている。マルチホップ方式では、3以上のストレージ装置が直列に接続され、始点のストレージ装置がコピー元であり、終点のストレージ装置がコピー先であり、始点と終点の間に存在する中間のストレージ装置が、コピー元でもありコピー先でもある。
 具体的には、特許文献1には、例えば下記のことが開示されている。
(*)第1のストレージ装置、第2のストレージ装置、及び第3のストレージ装置がある。
(*)第1のストレージ装置がコピー元であり、第3のストレージ装置が、コピー先であり、第2のストレージ装置が、第1及び第3のストレージ装置の間にあり、コピー元でもありコピー先でもある。
(*)第1のストレージ装置が、第1のDVOLと、第1のJVOLとを有する。
(*)第2のストレージ装置が、第2のDVOLと、第1の第2JVOLと、第2の第2JVOLとを有する。
(*)第3のストレージ装置が、第3のDVOLと、第3のJVOLとを有する。
(*)第1及び第2のDVOLがペアになっている。第1のDVOLが、プライマリのDVOL(PVOL)であり、第2のDVOLが、セカンダリのDVOL(SVOL)である。
(*)第2及び第3のDVOLがペアになっている。第2のDVOLが、プライマリのDVOL(PVOL)であり、第3のDVOLが、セカンダリのDVOL(SVOL)である。つまり、第2のDVOLが、PVOLでもありSVOLでもあるSPVOLである。
(*)第1のホスト装置が、第1のDVOLにデータを書き込む。
(*)第1のホスト装置が、更新番号を更新する。
(*)第1のストレージ装置が、第1のDVOLに書き込まれるデータのJNLを、第1のJVOLに書き込む。JNLは、ホスト装置の入出力対象のデータの他に、更新番号を含む。
(*)第1のJVOL内のJNLは、第1の第2JVOLにコピーされる。
(*)第2のストレージ装置が、第1の第2JVOL内の1以上の未反映のJNLを、更新番号の順に、第2のDVOLに反映する(JNLが有するデータを、第2のDVOLに書き込む)。
(*)第2のストレージ装置が、第2のDVOLに反映されたJNL内のデータを含んだJNLを、第2の第2JVOLに書き込む。
(*)第2の第2JVOL内のJNLは、第3のJVOLにコピーされる。
(*)第3のストレージ装置が、第3のJVOL内の1以上の未反映のJNLを、更新番号の順に、第3のDVOLに反映する。
特開2006-65629号公報
 マルチホップ方式の非同期リモートコピーによれば、第1のDVOL(PVOL)と第2のDVOL(とのペアである第1のペアと、第2のDVOLと第3のDVOLとのペアである第2のペアとが直列になっている。マルチホップ方式の非同期リモートコピーによれば、3以上のストレージ装置の連携が重要である。
 連携が問題になるケースとして、形成コピーが行われるケースが考えられる。形成コピーとは、PVOLの内容とSVOLの内容を一致させるコピーである。形成コピーは、サスペンドされていたペアを構成するPVOL及びSVOL同士の内容(データ)を一致させる場合にも行われる。
 具体的には、例えば、或るペアがサスペンドされている場合、図23に示すように、コピー元のストレージ装置は、PVOLにデータを書き込んでも、そのデータを有するJNLを作成しない。コピー元のストレージ装置は、PVOLの或るライト先ブロックにデータを書き込んだ場合、そのライト先ブロックが更新済みであること(ライト先ブロック内のデータが、SVOLにおける、ライト先ブロックのアドレスと同じアドレスのブロック内のデータと異なっていること)を、例えばビットマップを用いて管理する。その後、形成コピーが行われる。形成コピーでは、コピー元のストレージ装置が、PVOL内の更新済みブロックに記憶されているデータと更新番号とを有するJNLを作成し、作成したJNLを、コピー先のストレージ装置内のJVOLに書き込む。コピー先のストレージ装置が、そのJVOL内のJNLをSVOLに反映する。この一連の処理により、サスペンドされていたが故にPVOLの内容とSVOLの内容が不一致であっても、それらを一致させることができる。
 第1及び第2のペアのいずれについても形成コピーが行われる。形成コピーにおいて作成されるJNL内の更新番号は、コピー元のストレージ装置が付与する。
 ここで、マルチホップ方式の非同期リモートコピーシステムにおいて、第1及び第2のストレージ装置間と第2及び第3のストレージ装置間の両方で形成コピーが行われることを考察する。
 第1、第2及び第3のストレージ装置が直列に接続されており、且つ、コピー元が第1のストレージ装置であるので、まず、第1及び第2のストレージ間で第1の形成コピーが行われ、第1の形成コピーの完了後に、第2及び第3のストレージ間で第2の形成コピーが行われることが望ましい。
 また、第2の形成コピーの間、第1のDVOL(PVOL)は、第1のホストからデータが書込み可能なライト許可状態となっていることが望ましい。なぜなら、第2の形成コピーの間に第1のDVOLがライト禁止状態(第1のホストからデータを書き込むことが禁止された状態)となっていることに比べて、業務の開始を早めることができるからである。
 しかし、そうすると、次のような問題が生じる。
 すなわち、図24に示すように、第2の形成コピーでは、コピー元である第2のストレージ装置が、更新番号を更新し、更新番号(例えば「80」)を有するJNLを作成する。一方、第1のストレージ装置が、第2の形成コピーの間に、PVOLにデータを書き込んだ場合、更新番号を更新し、そのデータと更新番号(例えば「40」)とを含んだJNLを作成する。JNLは、第1のストレージ装置から第2のストレージ装置に送信される。このため、第2のストレージ装置は、第3のストレージ装置に、第2のストレージ装置で更新される更新番号(例えば「80」)を含んだJNLと、第1のストレージ装置で更新される更新番号(例えば「40」)を含んだJNLとの両方を送信することになる。第3のストレージ装置は、第2のストレージ装置からの複数のJNLを、更新番号の順にSVOLに反映するようになっているが、第1のストレージ装置での更新番号の更新と第2のストレージ装置での更新番号の更新は関連していない。このため、更新番号が非連続になることがあり、故に、JNLを正常にSVOLに反映することができない。
 3以上のストレージ装置の連携が問題になる別のケースとして、次のケースがある。すなわち、第2のストレージ装置が障害等の原因で停止した場合、第1のストレージ装置内のJNLが第3のストレージ装置に送信されることで業務の継続が図れるが、第3のストレージ装置に送信されるべきJNLが第1のストレージ装置から既にパージされてしまっていることがあり得る。
 そこで、本発明の目的は、マルチホップ方式の非同期リモートコピーシステムにおいて、第2及び第3のストレージ装置間で形成コピーが行われている間に第1のストレージ装置内の第1のDVOLがライト許可状態になっていても、第3のストレージ装置内のDVOLに正常にJNLを反映できるようにすることにある。
 本発明の別の目的は、マルチホップ方式の非同期リモートコピーシステムにおいて、第2のストレージ装置が停止した後に第3のストレージ装置に送信されるべきJNLが第1のストレージ装置からパージされないようにすることにある。
 非同期リモートコピーを行うストレージシステムである非同期リモートコピーシステムが、直列の3以上のストレージ装置を有する。3以上のストレージ装置は、第1の記憶資源グループを有しホスト装置に接続されている第1のストレージ装置と、それぞれが第2の記憶資源グループを有する1以上の第2のストレージ装置と、第3の記憶資源グループを有する第3のストレージ装置である。
 第1の記憶資源グループが、データが書き込まれる論理ボリュームである第1のデータボリュームと、データのジャーナルが書き込まれる記憶資源である第1のジャーナル記憶資源とを有する。
 第2の記憶資源グループが、データが書き込まれる論理ボリュームである第2のデータボリュームと、データのジャーナルが書き込まれる記憶資源である第2のジャーナル記憶資源とを有する。
 第3の記憶資源グループが、データが書き込まれる論理ボリュームである第3のデータボリュームと、データのジャーナルが書き込まれる記憶資源である第3のジャーナル記憶資源とを有する。
 第1のストレージ装置が、マルチホップ方式の非同期リモートコピーにおける始点であり、第3のストレージ装置が、その非同期リモートコピーにおける終点であり、1以上の第2のストレージ装置が、第1及び第3のストレージ装置間にある中間のストレージ装置である。
 第1のストレージ装置が、ホスト装置から前記第1のデータボリュームにデータが書き込まれる場合、第1の記憶資源グループ内のデータボリュームにデータが書き込まれる都度に更新される番号である更新番号を更新し、その更新番号とそのデータとを含んだジャーナルを作成し、そのジャーナルを第1のジャーナル記憶資源に書き込む。
 マルチホップ方式の非同期リモートコピーが行われる。その非同期リモートコピーでは、ジャーナルが、第1のストレージ装置から第3のストレージ装置へ1以上の第2のストレージ装置を順次に経由して転送され、且つ、各転送先で反映されることで、第1のデータボリューム内のデータが各第2のデータボリューム及び第3のデータボリュームに書き込まれる。具体的には、例えば、第2のストレージ装置の数を1とした場合、マルチホップ方式の非同期リモートコピーでは、下記が行われる。
(A)第1のジャーナル記憶資源から第2のジャーナル記憶資源にジャーナルがコピーされる。
(B)第2のストレージ装置が、第2のジャーナル記憶資源における1以上の未反映のジャーナルを、更新番号の順に、第2のデータボリュームに反映する。
(C)第2のジャーナル記憶資源から第3のジャーナル記憶資源にジャーナルがコピーされる。
(D)第3のストレージ装置が、第3のジャーナル記憶資源における1以上の未反映のジャーナルを、更新番号の順に、第3のデータボリュームに反映する。
 本発明の第1の観点によれば、非同期リモートコピーの開始前に、第1のデータボリュームの内容と第2のデータボリュームの内容とを一致させるためのコピーである第1の形成コピーと、第2のデータボリュームの内容と第3のデータボリュームの内容とを一致させるためのコピーである第2の形成コピーとが行われる。第2の形成コピーにおいて、第2のストレージ装置が、更新番号と第2のデータボリューム内のデータとを含んだジャーナルを作成する。作成されたジャーナルが、第2のストレージ装置から第3のストレージ装置に転送される。第3のストレージ装置が、更新番号の順に、第2のストレージ装置からのジャーナルを第2のデータボリュームに反映する。第2の形成コピーにおいて第2のストレージ装置が作成したジャーナル内の更新番号は、第1のストレージ装置で更新され第1のストレージ装置から取得された更新番号である。
 本発明の第2の観点によれば、同一の更新番号を含んだジャーナルが、終点のストレージ装置内のジャーナル記憶資源から始点のストレージ装置内のジャーナル記憶資源にかけて、順次に、パージされる。具体的には、例えば、第3のストレージ装置が、第3のジャーナル記憶資源から反映したジャーナルを、第3のジャーナル記憶資源からパージし、且つ、パージしたジャーナル内の更新番号を、第2のストレージ装置に通知する。各第2のストレージ装置が、その第2のストレージ装置に接続されている2つのストレージ装置のうちの一方(第3のストレージ装置、又は、終点側の第2のストレージ装置)から通知された更新番号を含むジャーナルを、その第2のストレージ装置内のジャーナル記憶資源からパージし、且つ、パージしたジャーナル内の更新番号を、上記2つのストレージ装置のうちの他方(始点側の第2のストレージ装置、又は、第1のストレージ装置)に通知する。第1のストレージ装置が、第2のストレージ装置から通知された更新番号を含むジャーナルを、第1のジャーナル記憶資源からパージする。
本発明の一実施例に係る非同期リモートコピーシステムの構成を示す。 ストレージ装置間のパスを示す。 図5におけるJNLグループ112A、112B及び112Cのステータス及びミラーの有効/無効を示す。 図6におけるJNLグループ112B及び112Cのステータス及びミラーの有効/無効を示す。 マルチホップ方式の非同期リモートコピーの概要を示す。 第2のストレージ105Bで障害が生じた場合のJNL転送及びJNL反映を示す。 第1のストレージ105Aの構成を示す。 JNLの構成を示す。 JVOL115Aの構成を示す。 メタ情報の構成を示す。 各ストレージが有する制御情報を示す。 JVOL有効ビットマップ701Aの構成を示す。 DVOL有効ビットマップ702Aの構成を示す。 JVOL管理テーブル703Aの構成を示す。 JNLグループ管理テーブル704Aの構成を示す。 ペア管理テーブル705Aの構成を示す。 第1のストレージ105Aにおけるライト処理の流れを示す。 図18Aは、PVOL113Aに対するデータの書込み、及び、第1のJVOL115Aに対するJNLの書込みを示す。図18Bは、第1のストレージ105Aから第2のストレージ105BへのJNLの転送と、第2のストレージ105BにおけるJNLの反映とを示す。 図19Aは、第2のストレージ105BにおけるJNL内のメタ情報の更新を示す。図19Bは、第2のストレージ105Bから第3のストレージ105CへのJNLの転送と、第3のストレージ105CにおけるJNLの反映とを示す。 図20Aは、第3のストレージ105CにおけるJNLのパージと、パージされたJNL内のSEQ#(第1のストレージ105AのJNLグループ内のDVOLの更新順に付与された通し番号)の通知とを示す。図20Bは、第2のストレージ105BにおけるJNLのパージと、パージされたJNL内のSEQ#の通知とを示す。図20Cは、図20Aは、第1のストレージ105AにおけるJNLのパージを示す。 第1の形成コピーの完了後の第2の形成コピーの際に行われる処理を示す。 第2の形成コピーにおいて転送されるJNL内のSEQ#と、PVOL113Aに書き込まれたデータを有するJNL内のSEQ#との関係の一例を示す。 ストレージ装置間の形成コピーの流れを示す。 マルチホップ方式の非同期リモートコピーシステムにおいて生じ得る問題の一例を示す。
 以下、図面を参照して、本発明の一実施例を説明する。
 なお、以下の説明では、「xxxテーブル」、「xxxビットマップ」の表現にて各種情報を説明することがあるが、各種情報は、テーブル或いはビットマップ以外のデータ構造で表現されていてもよい。データ構造に依存しないことを示すために「xxxテーブル」、「xxxビットマップ」を「xxx情報」と呼ぶことができる。
 また、以下の説明では、種々の対象の識別情報として、番号が主に使用されるが、番号に代えて他種の識別情報(例えば、名称)が採用されても良い。
 図1は、本発明の一実施例に係る非同期リモートコピーシステムの構成を示す。なお、以下の説明では、ジャーナルを「JNL」と記載し、データが書き込まれる論理ボリュームであるデータボリュームを「DVOL」と記載し、JNLが書き込まれる論理ボリュームであるJNLボリュームを「JVOL」と記載し、ホスト装置を「ホスト」と記載し、ストレージ装置を「ストレージ」と記載し、コントローラを「DKC」と記載する。
 3つ以上のサイト、例えば、第1のサイト101A、第2のサイト101B、及び第3のサイト101Cがある。以下、説明を分かりやすくするため、第1のサイト101Aが有する要素の参照符号は、親番号と子符号「A」の組合せであり、第2のサイト101Bが有する要素の参照符号は、親番号と子符号「B」の組合せであり、第3のサイト101Bが有する要素の参照符号は、親番号と子符号「C」の組合せである。
 第1のサイト101Aは、第1のストレージ105Aと、第1のストレージ105Aに接続された第1のホスト103Aとを有する。第1のストレージ105Aは、第1のDKC111Aと、第1のJNLグループ112Aとを有する。1つのJNLグループ112Aは、DVOL113Aと、JVOL115Aとを含む。
 第2及び第3のサイト101B及び101Cは、第1のサイト101Aと同様の構成を有する。
 ストレージ105A及び105B同士は、専用線(又は通信ネットワーク)を介して、物理的に接続されている。ストレージ105B及び105C同士も、専用線(又は通信ネットワーク)を介して、物理的に接続されている。ストレージ105A及び105C同士も、専用線(又は通信ネットワーク)を介して、物理的に接続されている。
 ストレージ同士を接続するパスとして、図2に示すように、制御パスと、データ転送パスがある。制御パスは、ストレージ間の制御コマンドの送受信に必要なパスである。データ転送パスは、JNLが流れるパスである。制御パス及びデータ転送パスは、いずれも、双方向通信が可能なパスである。
 再び図1を参照する。
 「ミラー」というJNLグループ同士の論理的な接続がある。図1によれば、JNLグループ112A及び112B同士の接続が、ミラー#0(番号「0」が割り当てられたミラー(M0))であり、JNLグループ112A及び112C同士の接続が、ミラー#1(番号「1」が割り当てられたミラー(M1))であり、JNLグループ112B及び112C同士の接続が、ミラー#2(番号「2」が割り当てられたミラー(M2))である。
 以下、本実施例に係る処理の概要を説明する。なお、以下の説明では、JNLグループ112A、112B及び112Cは、特段の説明が無い限り、それぞれ1つであるとする。
 本実施例に係るリモートコピーシステムでは、マルチホップ方式の非同期リモートコピーが行われるようになっていて、第1のサイト101Aが運用サイトである。この場合、図3に示すように、第1のJNLグループ112Aのステータスが「マスター」であり、第3のJNLグループ112Cのステータスが「リストア」であり、第2のJNLグループ112BCのステータスが「マスター/リストア」である。ステータス「マスター」は、コピー元であることを意味する。ステータス「リストア」は、コピー先であることを意味する。ステータス「マスター/リストア」は、コピー元でもありコピー先でもあることを意味する。なお、図3(及び、後の図4)において、点線のミラーは、無効なミラーであり、実線のミラーは、有効なミラーである。
 従って、図5に示すように、第1のDVOL113Aは、プライマリのDVOL(以下、PVOL)であり、第3のDVOL113Cは、セカンダリのDVOL(以下、SVOL)である。第2のDVOL113Bは、プライマリのDVOLでもありセカンダリのDVOLでもある(以下、SPVOL)。
 図5に示すように、運用サイトである第1のサイト101Aにおいて、第1のホスト103Aが、業務の実行に伴い、PVOL113Aにデータを書き込む(S11)。第1のストレージ105Aが、シーケンス番号(以下、SEQ#)を更新し、更新後のSEQ#とPVOL113Aに書き込まれたデータとを有するJNLを作成し、作成したJNLを第1のJVOL115Aに書き込む(S12)。SEQ#は、第1のJNLグループ112A(第1のJNLグループ112A内のDVOL)にデータが書き込まれる都度に更新される(例えば1インクリメント(又は1デクリメント)される)番号である。
 第2のストレージ105Bが、第1のJVOL115AからJNLを読み出し、読み出したJNLを第2のJVOL115Bに書き込む(S21)。第2のストレージ105Bは、第2のJVOL115B内の1以上の未反映のJNLを、SEQ#の小さい順に、SVOL113Bに反映する(S22)。具体的には、第2のストレージ105Bは、第2のJVOL115B内の未反映のJNLが有するデータをSPVOL113Bに書き込む。これにより、PVOL113Aに書き込まれたデータが、SPVOL113Bにコピーされたことになる。
 第3のストレージ105Cが、第2のJVOL115BからJNLを読み出し、読み出したJNLを第3のJVOL115Cに書き込む(S31)。第3のストレージ105Cは、第3のJVOL115C内の1以上の未反映のJNLを、SEQ#の小さい順に、SVOL113Cに反映する(S32)。具体的には、第3のストレージ105Cは、第3のJVOL115C内の未反映のJNLが有するデータをSVOL113Cに書き込む。これにより、PVOL113Aに書き込まれたデータが、SVOL113Cにコピーされたことになる。
 マルチホップ方式の非同期リモートコピーシステムによれば、3以上のストレージ装置が直列に接続されている。言い換えれば、それら3以上のストレージ装置は、始点のストレージ装置と、終点のストレージ装置と、始点と終点の間にある1以上の中間のストレージ装置とで構成されている。本実施例では、始点のストレージ装置が第1のストレージ装置であり、終点のストレージ装置が第3のストレージ装置であり、中間のストレージ装置が第2のストレージ装置である。
 本実施例によれば、第2のJNLグループ112Bに含まれるJVOLが、コピー元のJNLグループ112Aとコピー先のJNLグループ112Cとに共通である。これは、ストレージ装置間のJNLのコピー(転送)が、コピー先のストレージ装置がコピー元のストレージ装置内のJVOLからJNLを読み出すことにより、実現される。この特徴によれば、第2のストレージ105Bにおいて消費される記憶容量を節約することができる。
 さて、図6に示すように、中間のサイトである第2のサイト101Bにおいて、第2のストレージ105Bに障害が発生したとする(S40)。この場合、図4に示すように、ストレージ105A及び/又は105Cによってミラー#1が有効とされる。第1のJNLグループ112Aのステータスは、「マスター」であり、第3のJNLグループ112Cのステータは、「リストア」である。
 第3のストレージ105Cが、第2のJVOL112Bから読出していないJNLを、第1のJVOL112AからJNLを読み出し、読み出したJNLを第3のJVOL115Cに書き込む(S41)。第3のストレージ105Cは、第3のJVOL115C内の1以上の未反映のJNLを、SEQ#の小さい順に、SVOL113Cに反映する(S42)。なお、第2のストレージ105Bが障害等により停止しても、第1のストレージ105Aは、PVOL113Aをライト禁止状態(第1のホスト103Aからデータが書き込まれることを禁止した状態)とする必要は無い。従って、第1のストレージ105Aは、PVOL113Aを指定したライト要求を第1のホスト103Aから受信した場合、そのライト要求に従うデータをPVOL113Aに書込み、SEQ#を更新し、そのデータと更新後のSEQ#とを含んだJNLを作成し、作成したJNLを第1のJVOL115Aに書き込む。
 本実施例によれば、第3のストレージ105Cが第2のJVOL115Bから読み出していないJNLが第1のJVOL112Aからパージされないよう制御される。具体的には、ストレージ間でJNLが転送される順序は、SEQ#の小さい順であり、且つ、JNLは、ストレージ105C、105B、105Aの順に、パージされる。つまり、同一のSEQ#を有するJNLは、ストレージ105C及び105Bからパージされた後に、ストレージ105Aからパージされる。
 また、本実施例では、第2のストレージ105Bが稼働している場合、ストレージ105A及び105B間で第1の形成コピーが行われ、ストレージ105B及び105C間で第2の形成コピーが行われることがある。本実施例によれば、第2の形成コピーが行われている間にPVOL113Aがライト許可状態(第1のホスト103Aからデータを書き込むことが可能な状態)になっていても、第3のストレージ105CにおいてSVOL113Cに正常にJNLを反映できる。具体的には、第2の形成コピーで作成されるJNLに含まれるSEQ#は、第2のストレージ105Bが有するSEQ#(第2のストレージ105Bによって更新されるSEQ#)ではなく、第1のストレージ105Aが有するSEQ#(第1のストレージ105Aによって更新されるSEQ#)である。
 以下、本実施例を詳細に説明する。その際、第1のサイト101A内の要素を代表的に例に採り説明するが、特段の説明が無ければ、第2及び第3のサイト101B及び101C内の要素は、第1のサイト101A内の要素と実質的に同じである。
 図7は、第1のストレージ105Aの構成を示す。
 第1のストレージ105Aは、第1のDKC111Aと、複数のRAID(Redundant Array of Independent (or Inexpensive) Disks)グループ(以下、RG)900Aとを有する。RG900Aは、複数のHDD(Hard Disk Drive)で構成されている。HDDに代えて、フラッシュメモリ等の別の物理記憶デバイスが採用されても良い。1又は複数の論理ボリュームが、1つのRG900Aに基づいている。論理ボリュームは、例えば、前述したDVOL又はJVOLであるが、そのどちらも、RG900Aの記憶空間の一部である実体的な論理ボリュームであっても良いし、1以上のRG900を基に構成されたプール(複数の実領域で構成される記憶領域)から実領域が動的に割り当てられる仮想的な論理ボリューム(Thin Provisioningの技術に従う仮想的な論理ボリューム)であっても良い。
 DKC111Aは、複数のフロントエンドインターフェイス装置(以下、FE-IF)610Aと、バックエンドインターフェイス装置(以下、BE-IF)150Aと、キャッシュメモリ(以下、CM)620Aと、共有メモリ(以下、SM)640Aと、それらに接続された1以上のCPU(Central Processing Unit)630Aとを有する。DKC111Aの処理は、CPU630Aが1以上のコンピュータプログラムを実行することにより行われて良いが、その処理の少なくとも一部が、ハードウェア回路によって行われても良い。
 複数のFE-IF610Aに、第1のホスト103A、第2及び第3のストレージ105B及び105Cが接続される。DKC111A(CPU630A)は、FE-IF610Aを介して、第1のホスト103A、第2及び第3のストレージ105B及び105Cと通信する。
 BE-IF150Aに、複数のRG900Aが接続される。DKC111A(CPU630A)は、BE-IF150Aを介して、書込み先の論理ボリューム(例えば、第1のDVOL113A又は第1のJVOL115A)の基になっているRG900Aにデータ(又はJNL)を書き込む。
 CM620Aは、RG900Aに書き込まれるデータ(及びJNL)、RG900Aから読み出されたデータ(及びJNL)を記憶する。
 SM640Aは、DKC111Aの処理の制御に使用される種々の制御情報を記憶する。
 CPU630Aは、DKC111Aが行う処理を制御する。
 以上が、第1のストレージ105Aの構成の説明である。なお、DKC111Aは、図7に示す構成に限らず、他の構成を有していても良い。また、第2及び第3のストレージ105B及び105Cの構成は、第1のストレージ105Aの構成と実質的に同じである。DKC111B又は111Cの構成は、DKC111Aの構成と違っていても良い。
 図8は、JNLの構成を示し、図9は、JVOL115Aの構成を示す。
 JNLは、メタ情報とデータで構成されている。
 JVOL115Aは、メタ領域1201Aと、データ領域1203Aとで構成される。メタ領域1201Aは、メタ情報を記憶し、データ領域1203Aは、データを記憶する。なお、メタ領域1201Aは、CM620A等、RG900Aとは別の記憶資源に存在しても良い。
 図10は、メタ情報の構成を示す。
 メタ情報は、JNLに含まれるデータに関する管理情報である。メタ情報は、例えば、下記の情報、
(*)SEQ#、
(*)ライト先情報(DVOLのどこにデータが書き込まれるかを表す情報)
(*)PVOL#(コピー元のDVOLの番号)、
(*)SVOL#(コピー先のDVOLの番号)、
(*)このメタ情報に対応したデータのJVOLにおける位置を表す情報(この情報は、JNLがJVOLに書き込まれる際に含まれる)、
を含む。
 第1のDKC111Aが、SEQ#を管理する。SEQ#は、JNLグループ112A毎にある。第1のDKC111Aは、或るJNLグループ112A内のDVOL113Aにデータを書き込んだ場合、そのJNLグループ112Aに対応するSEQ#を更新する。SEQ#は、例えば、SM640A又は他の記憶資源に記憶されている。
 図11に示すように、SM640Aが、制御情報として、例えば、JVOL有効ビットマップ701A、DVOL有効ビットマップ702A、JVOL管理テーブル703A、JNLグループ管理テーブル704A、ペア管理テーブル705A、差分ビットマップ706A、及びミラービットマップ707Aを記憶する。同様に、第2のストレージ105B内のSM640Bは、制御情報701B~707Bを記憶し、第3のストレージ105C内のSM640Cは、制御情報701C~707Cを記憶する。以下、制御情報701A~707Aを代表して説明する。
 JNLグループは、例えば、最大64個の論理ボリュームを有することができる。JVOL有効ビットマップ701Aは、図12に示すように、JNLグループ毎に、64個のビットを有する。n番目(nは0以上63以下の整数)の論理ボリュームがJVOL115Aであれば、n番目のビットがオン(例えば1)である。
 DVOL有効ビットマップ702Aは、図13に示すように、JNLグループ毎に、64個のビットを有する。n番目(nは0以上63以下の整数)の論理ボリュームがJVOL115Aであれば、n番目のビットがオン(例えば1)である。
 JVOL管理テーブル703Aは、JNLグループ112A毎に存在する。テーブル703Aは、図14に示すように、JVOL115A毎に、メタ領域の先頭アドレスを表す情報と、メタ領域のサイズを表す情報と、データ領域の先頭アドレスを表す情報と、データ領域のサイズを表す情報とを有する。つまり、テーブル703Aは、JVOL115A毎に、どこからどこまでがメタ領域でどこからどこまでがデータ領域であるかを表す。
 JNLグループ管理テーブル704Aは、JNLグループに関する情報を有する。具体的には、例えば、テーブル704Aは、図15に示すように、JNLグループ毎に、下記の情報、
(*)JNLグループの番号を表すJNLグループ#1001A、
(*)JNLグループのステータスを表すステータス1002A、
(*)本実施例に係るリモートコピーシステムに存在するミラーの番号を表すミラー#1003A、
(*)相手のJNLグループの番号を表す相手JNLグループ#1004A、
(*)相手のJNLグループを有するストレージ装置の番号を表す相手ストレージ#1005A、
(*)最近パージされたJNLが有するSEQ#を表すパージ済みSEQ#1006A、
(*)パージされて良いJNLが有するSEQ#を表すパージ可能SEQ#1007A、
(*)最近読み出したJNLが有するSEQ#を表すリード済みSEQ#1008A、
を有する。
 ペア管理テーブル705Aは、DVOL同士のペアに関する情報を有する。具体的には、例えば、テーブル705Aは、図16に示すように、DVOL113A毎に、下記の情報、
(*)DVOL113Aの番号を表すDVOL#1101A、
(*)DVOL113Aを含んだJNLグループ112Aの番号を表すJNLグループ#1102A、
(*)DVOL113Aのコピー先のDVOLの番号を表すコピー先VOL#1103A、
(*)DVOL113Aとコピー先のDVOLとのペアについて、DVOL113Aのペアステータスを表すステータス1104A、
を有する。
 差分ビットマップ706Aは、DVOL113A毎に有する。DVOL113Aは、複数のブロックで構成されている。差分ビットマップ706Aは、DVOL113Aのどのブロックが更新されたかを表す。すなわち、差分ビットマップ706Aが有するビットは、ブロックに対応している。差分ビットマップ706Aは、DVOL113Aのペアステータスが所定のステータスの場合に、更新される。具体的には、例えば、DKC111Aは、或るDVOL113Aのペアステータスが所定のステータスであり、且つ、そのDVOL113A内の或るブロックにデータを書き込んだ場合、そのDVOL113Aに対応した差分ビットマップ706Aにおける、そのブロックに対応したビットを、オン(例えば1)に変更する。
 ミラービットマップ707Aは、どのミラーが有効でどのミラーが無効になっているかを表す。具体的には、ミラービットマップ707Aは、複数のミラーに対応した複数のビットを有する。例えば、通常は、ミラー#0及び#2が有効でありミラー#1が無効である(図5参照)。この場合、ミラー#0及び#2に対応したビットがオン(例えば1)であり、ミラー#1に対応したビットがオフ(例えば0)である。また、第2のストレージ105Bに障害が生じた場合、ミラー#0及び#2が無効でありミラー#1が有効である(図6参照)。この場合、ミラー#0及び#2に対応したビットがオフであり、ミラー#1に対応したビットがオンである。
 以下、本実施形態で行われる幾つかの処理を説明する。
 <ライト処理、及び、JNL作成処理>。
 図17に示すように、第1のDKC111Aは、PVOL113Aを指定したライト要求を第1のホスト103Aから受信し(S2201)、CM630AにCM領域(キャッシュメモリ領域)を確保し、確保したCM領域に、そのライト要求に従うデータ(ライト対象のデータ)を書き込む(S2202)。第1のDKC111Aは、この時点で、第1のホスト103Aに書込み完了を応答して良い。
 第1のDKC111Aは、CM630A内のライト対象のデータを、PVOL113Aに書き込む(S2203)。
 第1のDKC111Aは、そのPVOL113Aを含んだJNLグループ112Aに対応するSEQ#を更新する(S2211)。第1のDKC111Aは、JNLを作成し(S2212)、作成したJNLを第1のJVOL115Aに書き込む。S2212で作成されたJNLは、S2211で更新されたSEQ#を含んだメタ情報と、S2203でPVOL113Aに書き込まれたデータとを有する。そのデータは、PVOL113Aから読み出されたデータでも良いし、CM630Aに残っているデータでも良い。
 <マルチホップ方式の非同期リモートコピー、及び、JNLをパージするタイミングの制御>。
 図18Aに示すように、第1のDKC111Aは、PVOL113Aにデータが書き込まれた場合(S4001)、そのデータを有するJNL10を作成し、作成したJNL10を第1のJVOL115Aに書き込む(S4002)。JNL10内のメタ情報は、SEQ#として、そのJNLが有するデータがJNLグループ112Aに書き込まれた順番「100」を有する。また、そのメタ情報は、PVOL#として、PVOL113Aを表す番号「113A」を有し、SVOL#として、SPVOL113B(PVOL113Aの相手)を表す番号「113C」を有する。第1のDKC111Aは、ペア管理テーブル705Aを基に、PVOL#が「113A」であり、SVOL#が「113B」であることを特定し、図18に示したメタ情報を含むJNLを作成する。
 図18Bに示すように、第2のDKC111Bが、JNL10を第1のJVOL115Aから読み出し、JNL10を、第2のJVOL115Bに書き込む(S4003)。具体的には、例えば、第2のDKC111Bが、SEQ#:100と、第1のJVOL115Aの番号(又はそれに対応するLUN(Logical Unit Number))とを含んだリード要求を、第1のストレージ105Aに送信する。SEQ#:100は、JNLグループ112B及びミラー#0に対応したリード済みSEQ#1008B(JNLグループ管理テーブル704B内の情報1008B)が表す値より1大きい値である。つまり、SEQ#:100は、そのリード済みSEQ#1008Bを基に算出されたSEQ#である。すなわち、第2のDKC111Bは、SEQ#の小さい順にJNLを第1のストレージ105Aから読み出すようになっている。
 図18Bに示すように、第2のDKC111Bは、第2のJVOL115B内のJNL10が有するSVOL#から、SPVOL113Bを特定し、そのJNL10が有するデータを、SPVOL113Bに書き込む(S4004)。
 次に、図19Aに示すように、第2のDKC111Bは、JNL10内のメタ情報が有するPVOL#及びSVOL#を更新し、少なくとも、そのメタ情報内のSEQ#を更新しない(S4005)。具体的には、第2のDKC111Bは、ペア管理テーブル705Bから、SVPOL113Bのペア相手であるSVOL113Cの番号を特定する。そして、第2のDKC11Bは、JNL10が有するメタ情報内のPVOL#を、「113A」から、SPVOL113Bの番号である「113B」に変更し、且つ、そのメタ情報内のSVOL#を、「113B」から、SVOL113Cの番号である「113C」に変更する。SEQ#は、「100」のままであり更新されない。
 第2のDKC111Bは、JNL10を反映した後で、JNL10が有するメタ情報内のPVOL#及びSVOL#を更新し、JNL10を反映しないうちに、それらPVOL#及びSVOL#を更新しない。
 また、第2のDKC111Bは、メタ情報内のPVOL#及びSVOL#を更新する前に、JNL10が有するSEQ#:10を指定したリード要求(JNLのリード要求)を第3のストレージ105Cから受けても、JNL10を第3のストレージ105Cに送信しない(例えば、そのリード要求に対して、所定の応答(例えばエラー)を返す)。
 図19Bに示すように、S4005の後であれば、JNL10が第2のJVOL115Bから第3のJVOL115Cにコピーされて良い(S4006)。具体的には、第3のDKC111Cが、SEQ#:100と、第2のJVOL115Bの番号(又はそれに対応するLUN)とを含んだリード要求を、第2のストレージ105Bに送信する。SEQ#:100は、JNLグループ112C及びミラー#2に対応したリード済みSEQ#1008C(JNLグループ管理テーブル704C内の情報1008C)が表す値より1大きい値である。つまり、SEQ#:100は、そのリード済みSEQ#1008Cを基に算出されたSEQ#である。すなわち、第3のDKC111Cは、SEQ#の小さい順にJNLを第2のストレージ105Bから読み出すようになっている。第2のDKC111Bは、そのリード要求を受信した場合、S4005が行われていれば、そのリード要求に応答して、第2のJVOL115BからJNL10を読出し、JNL10を第3のストレージ105Cに送信する。第3のDKC111Cが、JNL10を受信し、JNL10を第3のJVOL115Cに書き込む。
 図19Bに示すように、第3のDKC111Cは、第3のJVOL115C内のJNL10が有するSVOL#から、SVOL113Cを特定し、そのJNL10が有するデータを、SVOL113Cに書き込む(S4007)。
 第3のストレージ105Cが、終点のストレージ装置である。このため、S4007の時点で、第3のDKC111Cは、JNLグループ112C及びミラー#2に対応したパージ可能SEQ#1008C(JNLグループ管理テーブル704C内の情報1008C)が表す値を、S4007で反映したJNL10内のSEQ#が表す値「100」に変更する。
 その後、図20Aに示すように、第3のDKC111Cは、更新後のパージ可能SEQ#1008Cが表す値「100」をSEQ#として有するJNL10を、第3のJVOL115Cからパージする(S4008)。そして、第3のDKC111Cは、パージしたJNL10内のSEQ#:100を、SVOL113Cのコピー元であるSPVOL113Bを有する第2のストレージ105Bに通知する(S4009)。
 第2のDKC111Bが、第3のストレージ105Cから、SEQ#:100という通知を受信する。第2のDKC111Bは、JNLグループ112B及びミラー#0に対応したパージ可能SEQ#1008B(JNLグループ管理テーブル704B内の情報1008B)が表す値を、通知されたSEQ#が表す値「100」に変更する。
 その後、図20Bに示すように、第2のDKC111Bは、更新後のパージ可能SEQ#1008Bが表す値「100」をSEQ#として有するJNL10を、第2のJVOL115Bからパージする(S4010)。そして、第2のDKC111Bは、パージしたJNL10内のSEQ#:100を、SPVOL113Bのコピー元であるPVOL113Aを有する第1のストレージ105Aに通知する(S4011)。
 第1のDKC111Aが、第2のストレージ105Bから、SEQ#:100という通知を受信する。第1のDKC111Aは、JNLグループ112A及びミラー#0に対応したパージ可能SEQ#1008A(JNLグループ管理テーブル704A内の情報1008A)が表す値を、通知されたSEQ#が表す値「100」に変更する。
 その後、図20Cに示すように、第1のDKC111Aは、更新後のパージ可能SEQ#1008Aが表す値「100」をSEQ#として有するJNL10を、第1のJVOL115Aからパージする(S4012)。
 図20A~図20Cを参照した説明によれば、JNLは、終点のストレージ装置(第3のストレージ105C)から始点のストレージ装置(第1のストレージ105A)へかけて順次にパージされていく。このため、第2のストレージ105Bに障害が生じた場合に第3のストレージ105Cが必要とするJNLは、第1のストレージ105Aに残っている。それ故、第2のストレージ105Bに障害が生じても業務を継続することができる。
 <第1の形成コピーの完了後の第2の形成コピーの際に行われる処理>。
 マルチホップ方式の非同期リモートコピーの開始前に、PVOL113Aの内容、SPVOL113Bの内容、SVOL113Cの内容が一致している必要がある。ストレージ105A及び105B間と、ストレージ105B及び105C間において、形成コピーが行われる。
 例えば、PVOL113AとSPVOL113Bとのペアのステータスも、SPVOL113BとSVOL113Cとのペアのステータスも、サスペンドであるとする。このため、第1のDKC111Aは、PVOL113AにおけるSPVOL113Bとの差分を管理しており、第2のDKC111Bは、SPVOL113BにおけるSVOL113Cとの差分を管理している。
 ここで、図21に示すように、ストレージ105A及び105B間で、第1の形成コピーが行われたとする(S2101)。形成コピーで行われる具体的な処理は、図23を参照して説明した通りである。すなわち、第1のDKC111Aが、PVOL113Aにおける差分ブロック(更新済みブロック)毎に、SEQ#を更新し、SEQ#と差分ブロック内のデータとを有するJNLを作成し、作成したJNLを、第1のJVOL115Aに書き込まず、第2のJVOL115Bに書き込む。第2のDKC115Bが、第2のJVOL115B内の1以上の未反映のJNL(第1の形成コピーにおいて書き込まれたJNL)を、SEQ#の小さい順に、SPVOL113Bに反映する。これにより、PVOL113Aの内容とSPVOL113Bの内容が互いに一致する。なお、PVOL113Aにおける「差分ブロック」は、そのブロックに対応したブロック(SPVOL11BCにおけるブロック(例えば、差分ブロックのアドレスと同じアドレスのブロック))内のデータと異なっているデータを記憶しているブロックである。また、第1の形成コピーにおいて、第2のDKC111Bは、SPVOL113Bにおける、JNLの反映先のブロックを、差分ブロックとして管理する。
 第1の形成コピーが完了した後、ストレージ105B及び105C間で、第2の形成コピーが行われる(S2103)。第2の形成コピーでは、第1の形成コピーで第2のJVOL115Bに書き込まれたJNL(PVOL113Aにおける差分ブロック内のデータを有するJNL)は、第2のJVOL115Bから第3のJVOL115Cには転送されない。すなわち、第2のストレージ105Bにおいて、SPVOL113Bにおける差分ブロック毎に新たにJNLが作成され、作成されたJNLが、第2のJVOL115Bに書き込まれること無く、第3のJVOL115Cに書き込まれる。SPVOL113Bにおける「差分ブロック」は、差分ブロックに対応したブロック(SVOL113Cにおけるブロック(例えば、差分ブロックのアドレスと同じアドレスのブロック))内のデータと異なっているデータを記憶しているブロックである。
 具体的には、第2の形成コピー(S2103)では、SPVOL113Bにおける差分ブロック毎に、以下の処理が行われる。
(*)第2のDKC111Bが、第1のストレージ105Aに、ダミーJNL要求を送信する(S2103-V)。「ダミーJNL」は、メタ情報を有するがデータを有しないJNLである。
(*)第1のDKC111Aは、ダミーJNL要求を受信し、その要求に応答して、第1のDKC111Aが管理しているSEQ#を更新し、更新後のSEQ#を含んだダミーJNLを作成する。
(*)第1のDKC111Aは、作成したダミーJNLを、第2のストレージ105Bに送信する(S2103-W)。
(*)第2のDKC111Bは、ダミーJNLを受信し、ダミーJNLをCM630Bに書き込み、判断50を行う。判断50は、受信したダミーJNLが有するSEQ#が、第2のDKC111Bが最近第3のストレージ105Cに転送したJNLが有するSEQ#の次のSEQ#(以下、図21及び図22の説明において、「対象SEQ#」と言う)であるか否かの判断である。
(*)第2のDKC111Bは、判断50の結果が肯定的であれば、差分ブロック内のデータを上記受信したダミーJNLに含めることでJNLを作成する。このJNLは、CM630Bに記憶されており、第2のJVOL115Bには書き込まれない。なお、判断50の結果が否定的であれば、例えば、後述のS2121(新差分JNLの読出し)が行われる。なぜなら、対象SEQ#を有するJNLが第1のJVOL115Aに存在しているからである。
(*)第2のDKC111Bは、その作成したJNLを、第3のJVOL115Cに書き込む(S2103-X)。具体的には、第2のDKC111Bは、第3のJVOL115Cを指定したライト要求(JNLのライト要求)を、第3のストレージ105Bに送信する。第3のDKC111Cが、そのライト要求を受信し、そのライト要求に応答して、JNLを第3のJVOL115Cに書き込む。
(*)第3のDKC111Cは、S2103-Xで第3のJVOL115Cに書き込まれた未反映のJNLを、SVOL113Cに反映する(S2103-Y)。その際、第3のDKC111Cは、S2103-Yで反映したJNLを第3のJVOL115Cからパージして良い。また、第3のDKC111Cは、そのパージされたJNL内のSEQ#を、第2のDKC111Bに通知してよい。第2のDKC111Bは、通知されたSEQ#を有するJNLを、CM630Bからパージして良い。
 つまり、本実施例によれば、第2の形成コピーの最中に第2のDKC111Bが作成するJNL内のSEQ#は、第1のDKC111Bが更新するSEQ#である。従って、第1の形成コピーでも第2の形成コピーでも、ストレージ装置間で転送されるJNLが有するSEQ#は、第1のDKC111Bが更新するSEQ#という点で共通している。このため、SEQ#の連続性が保証される。
 これは、第2の形成コピーの最中にPVOL113Aに第1のホスト103Aからデータが書き込まれる場合(PVOL113Aを指定したライト要求を第1のDKC111Aが第1のホスト103Aから受信した場合)(S2111:YES)も、同様である。
 すなわち、この場合、PVOL113Aはライト許可状態となっているので、第1のDKC111Aが、そのライト要求に応答して、ライト処理(図17参照)を実行する(S2112)。ライト処理において、第1のDKC111Aは、自身が管理するSEQ#を更新し、PVOL113Aに書き込まれたデータと更新後のSEQ#とを有するJNLを作成し、作成したJNL(以下、新差分JNL)を、第1のJVOL115Aに書き込む。
 判断50の結果が否定的であることを契機に、第2のDKC111Bが、新差分JNLを第1のJVOL115Aから読み出し、その新差分JNLを第2のJVOL115Bに書き込む(S2121)。具体的には、例えば、第2のDKC111Bは、その新差分JNLが有するSEQ#と第1のJVOL115Aとを指定したリード要求を、第1のストレージ105Aに送信する。第1のDKC111Aが、そのリード要求を受信する。第1のDKC111Aが、そのリード要求に応答して、そのリード要求が有するSEQ#と同じSEQ#を含んだ新差分JNLを第1のJVOL115Aから読み出す。第1のDKC111Aが、その読み出した新差分JNLを、第2のストレージ105Bに送信する。第2のDKC111Bが、新差分JNLを受信し、CM630Bに書き込む。第2のDKC111Bは、その新差分JNLを、第2のJVOL115Bに書き込んでも良い。
 第2のDKC111Bは、その新差分JNL(対象SEQ#を含んだ新差分JNL)を、SPVOL113Bに反映する(S2122)。なお、その新差分JNLは、第2の形成コピーが完了するまでの(例えば、後述のS2141を行う前までの)、任意のタイミングで、SPVOL113Bに反映されれば良い。
 第2のDKC111Bは、その新差分JNL(対象SEQ#を含んだ新差分JNL)を、第3のJVOL115Cに書き込む(S2123)。
 第2のDKC111Bは、SPVOL113Bに差分ブロックが無くなった場合に、差分ブロック無しの通知を第3のストレージ105Cに送信する(S2141)。第3のDKC111Cは、その通知を受けて、SPVOL113Bに差分ブロックが無いことを知る。
 第2の形成コピーは、第2の形成コピーの最中に第3のJVOL115Cに書き込まれた全てのJNLがSVOL113Bに反映された場合に(つまり第3のJVOL115Cに未反映のJNLが無い場合に)、完了する。このため、第3のDKC111Cは、第3のJVOL115C内の未反映JNLの反映(SEQ#の小さい順に未反映JNLを反映すること)を、S2103-Xの都度に行うことに代えて、定期的に行っても良いし、S2141の通知を受領したときにのみ行っても良い。
 図21を参照した説明によれば、第3のストレージ105Cにおいて反映されるJNLのSEQ#の連続性が保証される。そのことを、図22に示す具体例を用いて説明する。
 図22に示すように、例えば、第2の形成コピーにおいて、第2のDKC111Bが、SVPVOL113B内の第1の差分ブロックについてのJNLを作成するために、ダミーJNL要求を第1のストレージ105Aに送信する。その要求に応答して、第1のDKC111Aが、SEQ#:40を有するダミーJNLを第2のストレージ105Bに送信する。第2のDKC111Bが、そのダミーJNLに第1の差分ブロック内のデータを含めることでJNLを作成し、そのJNL(SEQ#:40を含んだJNL)を、第3のJVOL115Cに書き込む。
 第2の差分ブロックのためのダミーJNL要求が送信される前に、第1のホスト103AからPVOL113Aにデータが書き込まれ、それ故、第1のストレージ105A内のSEQ#が「40」から「41」に更新されたとする。この場合、第1のDKC111Aが、SEQ#:41を含んだJNLを作成して、そのJNLを第1のJVOL115Aに書き込む。
 第2のDKC111Bは、第2の差分ブロックのためのダミーJNL要求を第1のストレージ105Aに送信する。その要求に応答して、第1のDKC111Aが、SEQ#を「41」から「42」に更新し、更新後のSEQ#:42を有するダミーJNLを第2のストレージ105Bに送信する。第2のDKC111Bが、そのダミーJNLに第2の差分ブロック内のデータを含めることでJNLを作成する。
 ここで、第2のDKC111Bは、その作成したJNLが有するSEQ#:42が、対象SEQ#:41(第3のJVOL115Cに最近書き込んだJNL内のSEQ#:40の次のSEQ#:41)ではないことを検出する。つまり、第2のDKC111Bは、SEQ#が連続していないことを検出する。
 その場合、第2のDKC111Bは、対象SEQ#:41を有するJNLを第1のJVOL115Aから読み出し、読み出したJNLを、第2のJVOL115Bに書き込む。第2のDKC111Bは、第2のJVOL115Bに書き込んだJNL(対象SEQ#:41を有するJNL)を、SPVOL113Bに反映し、且つ、第3のJVOL115Cに書き込む。
 第2のDKC111Bは、SEQ#:42を有するJNL(CM630BにあるJNL)を、第3のJVOL115Bに書き込む。
 結果として、図22に示すように、第3のJVOL115Cに書き込まれた複数のJNL内の複数のSEQ#は連続する。このため、第2の形成コピーが行われている間にPVOL113Aがライト許可状態になっていても、第3のストレージ105CにおいてSVOL113Cに正常にJNLを反映することができる。
 また、図21を参照した説明によれば、第2の形成コピーにおいて、第1のストレージ105Aから第2のストレージ105BへのSEQ#の転送には、ダミーJNLというデータ無しのJNLが利用される。このため、大きな設計変更をすることなく、第2の形成コピーにおいて作成されるJNLのためのSEQ#を第1のストレージ105Aから第2のストレージ105Bに通知することができる。
 以上、本発明の一実施例を説明したが、本発明は、この実施例に限定されるものでなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
 例えば、上述の説明では、更新番号として、シーケンス番号(SEQ#)が採用されているが、規則的に大きく或いは小さくなっていく他種の番号が採用されても良い。
 また、例えば、全てのJNLは、更新後のSEQ#を有するが、それに代えて、更新前のSEQ#を有しても良い。
 また、例えば、第2の形成コピーにおいて第2のストレージ105Bから第3のストレージ105Cに転送されたJNLは、CM630Cに書き込まれ、CM630Cから第3のJVOL115Cに書き込まれるが、それに代えて、CM630に書き込まれるものの第3のJVOL115Cには書き込まれなくても良い。
 また、例えば、第2の形成コピーにおいて、第2のDKC111Bは、ダミーJNL要求を、最近送信されたダミーJNL要求に応答して送られて来るダミーJNLの処理が完了したか否かに関わらず、送信しても良い。
 また、例えば、第2の形成コピーにおいて、第2のDKC111Bは、ダミーJNL要求を、最近送信されたダミーJNL要求に応答して送られて来るダミーJNLを基に作成されたJNLがCM630Bからパージされた後に、送信しても良い。
 また、例えば、第2の形成コピーにおいて、第2のDKC111Bは、判断50を、ダミーJNLに基づくJNLを作成したときに行っても良い。
 また、例えば、ストレージ105A~105Cの少なくとも1つが、複数のJNLグループがあっても良い。
 また、例えば、ストレージ105A~105Cの少なくとも1つが、JNLグループに含まれる論理ボリューム以外の論理ボリュームを有していても良い。
 また、例えば、ストレージ装置間のJNLの転送は、コピー先のストレージ装置がコピー元のストレージ装置内のJVOLからJNLを読み出すことによる転送と、コピー元のストレージ装置がコピー先のストレージ装置内のJVOLにJNLを書き込むことによる転送のどちらであっても良い。
 また、例えば、中間のストレージである第2のストレージ101Bが2以上あっても良い。その場合、第2のストレージ105B間での形成コピーが行われて良い。その形成コピーは、実質的に、第2の形成コピーと見做されて良い。その形成コピーでは、コピー先の第2のストレージ105Bが、コピー元の第2のストレージ105Bを介して、第1のストレージ105AからSEQ#(SEQを含んだダミージャーナル)を取得して良い。また、パージは、次のように行われても良い。例えば、第3のストレージ105Cが、第3のJVOL115Cから反映したJNLを、第3のJVOL115Cからパージし、且つ、パージしたJNL内のSEQ#を、第3のストレージ105Cに接続されている第2のストレージ105Bに通知して良い。各第2のストレージ105Bは、その第2のストレージ105Bに接続されている2つのストレージのうちの一方(第3のストレージ105C、又は、終点側の第2のストレージ105B)から通知されたSEQを含むJNLを、その第2のストレージ105B内のJVOL115Bからパージし、且つ、パージしたJNL内のSEQ#を、上記2つのストレージのうちの他方(始点側の第2のストレージ105B、又は、第1のストレージ105A)に通知して良い。第1のストレージ105Aが、その第1のストレージ105Aに接続されている第2のストレージ105Bから通知されたSEQ#を含むJNLを、第1のJVOL115Aからパージして良い。
 101A…第1のストレージ装置 101B…第2のストレージ装置 101C…第3のストレージ装置

Claims (9)

  1.  非同期リモートコピーを行うストレージシステムである非同期リモートコピーシステムであって、
     直列の3以上のストレージ装置を有し、
     前記3以上のストレージ装置は、第1の記憶資源グループを有しホスト装置に接続されている第1のストレージ装置と、それぞれが第2の記憶資源グループを有する1以上の第2のストレージ装置と、第3の記憶資源グループを有する第3のストレージ装置であり、
     前記第1の記憶資源グループが、データが書き込まれる論理ボリュームである第1のデータボリュームと、データのジャーナルが書き込まれる記憶資源である第1のジャーナル記憶資源とを有し、
     前記第2の記憶資源グループが、データが書き込まれる論理ボリュームである第2のデータボリュームと、データのジャーナルが書き込まれる記憶資源である第2のジャーナル記憶資源とを有し、
     前記第3の記憶資源グループが、データが書き込まれる論理ボリュームである第3のデータボリュームと、データのジャーナルが書き込まれる記憶資源である第3のジャーナル記憶資源とを有し、
     前記第1のストレージ装置が、マルチホップ方式の非同期リモートコピーにおける始点であり、前記第3のストレージ装置が、その非同期リモートコピーにおける終点であり、前記1以上の第2のストレージ装置が、前記第1及び第3のストレージ装置間にある中間のストレージ装置であり、
     前記第1のストレージ装置が、前記ホスト装置から前記第1のデータボリュームにデータが書き込まれる場合、前記第1の記憶資源グループ内のデータボリュームにデータが書き込まれる都度に更新される番号である更新番号を更新し、その更新番号とそのデータとを含んだジャーナルを作成し、そのジャーナルを前記第1のジャーナル記憶資源に書き込み、
     マルチホップ方式の非同期リモートコピーが行われ、その非同期リモートコピーでは、前記ジャーナルが、前記第1のストレージ装置から前記第3のストレージ装置へ前記1以上の第2のストレージ装置を順次に経由して転送され、且つ、各転送先で反映されることで、前記第1のデータボリューム内のデータが各第2のデータボリューム及び前記第3のデータボリュームに書き込まれ、
     前記非同期リモートコピーの開始前において、
     (P)前記第1のデータボリュームの内容と前記第2のデータボリュームの内容とを一致させるためのコピーである第1の形成コピーと、
     (Q)前記第2のデータボリュームの内容と前記第3のデータボリュームの内容又は別の第2のデータボリュームの内容とを一致させるためのコピーである1以上の第2の形成コピーと
    が行われ、前記第2の形成コピーにおいて、
    (q1)前記第2のストレージ装置が、更新番号と前記第2のデータボリューム内のデータとを含んだジャーナルを作成し、
    (q2)作成されたジャーナルが前記第2のストレージ装置から前記第3のストレージ装置又は転送先の第2のストレージ装置に転送され、
    (q3)前記第3のストレージ装置又は前記転送先の第2のストレージ装置が、更新番号の順に、前記第2のストレージ装置からのジャーナルを、前記第3のデータボリューム、又は前記転送先の第2のストレージ装置内の第2のデータボリュームに、反映し、
     前記(q1)で作成されたジャーナル内の更新番号は、前記第1のストレージ装置で更新され前記第1のストレージ装置から取得された更新番号である、
    非同期リモートコピーシステム。
  2.  請求項1記載のシステムであって、
     前記(q1)において、
    (q1-a)前記第2のストレージ装置が、前記第1のストレージ装置に、データ無しのジャーナルであるダミージャーナルの要求であるダミージャーナル要求を送信し、
    (q1-b)前記第1のストレージ装置が、前記ダミージャーナル要求を受信し、更新番号を含んだダミージャーナルを前記第2のストレージ装置に送信し、
    (q1-c)前記第2のストレージ装置が、ダミージャーナルを受信し、前記ダミージャーナルに前記第2のデータボリューム内のデータを含めたジャーナルを作成する、
    非同期リモートコピーシステム。
  3.  請求項1記載のシステムであって、
     (R)前記(Q)において、前記第1のストレージ装置が、前記第1のホスト装置からデータを受信した場合、
    (r1)前記第1のストレージ装置が、受信したデータを前記第1のデータボリュームに書き込み、
    (r2)前記第1のストレージ装置が、更新番号を更新し、
    (r3)前記第1のストレージ装置が、前記更新番号と前記(r1)のデータとを含んだジャーナルを作成し、
     前記(q1)において、
     (q1-p)前記第2のストレージ装置が、前記第1のストレージ装置からの更新番号が、最近前記第3のストレージ装置に転送されたジャーナル内の更新番号の次の更新番号である対象更新番号であるか否かを判断し、
     (q1-q)前記(q1-p)の判断の結果が否定的の場合に、前記対象更新番号を含んだジャーナルが、前記第1のストレージ装置から前記第2のストレージ装置に転送され、前記第2のデータボリュームに反映され、且つ、前記第2のストレージ装置から前記第3のストレージ装置又は前記転送先の第2のストレージ装置に転送される、
    非同期リモートコピーシステム。
  4.  請求項1記載のシステムであって、
     同一の更新番号を含んだジャーナルが、前記終点のストレージ装置内のジャーナル記憶資源から前記始点のストレージ装置内のジャーナル記憶資源にかけて、順次に、パージされる、
    非同期リモートコピーシステム。
  5.  請求項4記載のシステムであって、
     前記第3のストレージ装置が、前記第3のジャーナル記憶資源から反映したジャーナルを、前記第3のジャーナル記憶資源からパージし、且つ、パージしたジャーナル内の更新番号を、前記第2のストレージ装置に通知し、
     各第2のストレージ装置が、その第2のストレージ装置に接続されている2つのストレージ装置のうちの一方から通知された更新番号を含むジャーナルを、その第2のストレージ装置内のジャーナル記憶資源からパージし、且つ、パージしたジャーナル内の更新番号を、前記2つのストレージ装置のうちの他方に通知し、
     前記第1のストレージ装置が、前記第2のストレージ装置から通知された更新番号を含むジャーナルを、前記第1のジャーナル記憶資源からパージする、
    非同期リモートコピーシステム。
  6.  非同期リモートコピーを行うストレージシステムである非同期リモートコピーシステムであって、
     直列の3以上のストレージ装置を有し、
     前記3以上のストレージ装置は、第1の記憶資源グループを有しホスト装置に接続されている第1のストレージ装置と、それぞれが第2の記憶資源グループを有する1以上の第2のストレージ装置と、第3の記憶資源グループを有する第3のストレージ装置であり、
     前記第1の記憶資源グループが、データが書き込まれる論理ボリュームである第1のデータボリュームと、データのジャーナルが書き込まれる記憶資源である第1のジャーナル記憶資源とを有し、
     前記第2の記憶資源グループが、データが書き込まれる論理ボリュームである第2のデータボリュームと、データのジャーナルが書き込まれる記憶資源である第2のジャーナル記憶資源とを有し、
     前記第3の記憶資源グループが、データが書き込まれる論理ボリュームである第3のデータボリュームと、データのジャーナルが書き込まれる記憶資源である第3のジャーナル記憶資源とを有し、
     前記第1のストレージ装置が、マルチホップ方式の非同期リモートコピーにおける始点であり、前記第3のストレージ装置が、その非同期リモートコピーにおける終点であり、前記1以上の第2のストレージ装置が、前記第1及び第3のストレージ装置間にある中間のストレージ装置であり、
     前記第1のストレージ装置が、前記ホスト装置から前記第1のデータボリュームにデータが書き込まれる場合、前記第1の記憶資源グループ内のデータボリュームにデータが書き込まれる都度に更新される番号である更新番号を更新し、その更新番号とそのデータとを含んだジャーナルを作成し、そのジャーナルを前記第1のジャーナル記憶資源に書き込み、
     マルチホップ方式の非同期リモートコピーが行われ、その非同期リモートコピーでは、前記ジャーナルが、前記第1のストレージ装置から前記第3のストレージ装置へ前記1以上の第2のストレージ装置を順次に経由して転送され、且つ、各転送先で反映されることで、前記第1のデータボリューム内のデータが各第2のデータボリューム及び前記第3のデータボリュームに書き込まれ、
     同一の更新番号を含んだジャーナルが、前記終点のストレージ装置内のジャーナル記憶資源から前記始点のストレージ装置内のジャーナル記憶資源にかけて、順次に、パージされる、
    非同期リモートコピーシステム。
  7.  請求項6記載のシステムであって、
     前記第3のストレージ装置が、前記第3のジャーナル記憶資源から反映したジャーナルを、前記第3のジャーナル記憶資源からパージし、且つ、パージしたジャーナル内の更新番号を、前記第2のストレージ装置に通知し、
     各第2のストレージ装置が、その第2のストレージ装置に接続されている2つのストレージ装置のうちの一方から通知された更新番号を含むジャーナルを、その第2のストレージ装置内のジャーナル記憶資源からパージし、且つ、パージしたジャーナル内の更新番号を、前記2つのストレージ装置のうちの他方に通知し、
     前記第1のストレージ装置が、前記第2のストレージ装置から通知された更新番号を含むジャーナルを、前記第1のジャーナル記憶資源からパージする、
    非同期リモートコピーシステム。
  8.  非同期リモートコピーを行うストレージシステムである非同期リモートコピーシステムでの記憶制御方法であって、
     前記非同期リモートコピーシステムが、
     直列の3以上のストレージ装置を有し、
     前記3以上のストレージ装置は、第1の記憶資源グループを有しホスト装置に接続されている第1のストレージ装置と、それぞれが第2の記憶資源グループを有する1以上の第2のストレージ装置と、第3の記憶資源グループを有する第3のストレージ装置であり、
     前記第1の記憶資源グループが、データが書き込まれる論理ボリュームである第1のデータボリュームと、データのジャーナルが書き込まれる記憶資源である第1のジャーナル記憶資源とを有し、
     前記第2の記憶資源グループが、データが書き込まれる論理ボリュームである第2のデータボリュームと、データのジャーナルが書き込まれる記憶資源である第2のジャーナル記憶資源とを有し、
     前記第3の記憶資源グループが、データが書き込まれる論理ボリュームである第3のデータボリュームと、データのジャーナルが書き込まれる記憶資源である第3のジャーナル記憶資源とを有し、
     前記第1のストレージ装置が、マルチホップ方式の非同期リモートコピーにおける始点であり、前記第3のストレージ装置が、その非同期リモートコピーにおける終点であり、前記1以上の第2のストレージ装置が、前記第1及び第3のストレージ装置間にある中間のストレージ装置であり、
     前記第1のストレージ装置が、前記ホスト装置から前記第1のデータボリュームにデータが書き込まれる場合、前記第1の記憶資源グループ内のデータボリュームにデータが書き込まれる都度に更新される番号である更新番号を更新し、その更新番号とそのデータとを含んだジャーナルを作成し、そのジャーナルを前記第1のジャーナル記憶資源に書き込み、
     マルチホップ方式の非同期リモートコピーが行われ、その非同期リモートコピーでは、前記ジャーナルが、前記第1のストレージ装置から前記第3のストレージ装置へ前記1以上の第2のストレージ装置を順次に経由して転送され、且つ、各転送先で反映されることで、前記第1のデータボリューム内のデータが各第2のデータボリューム及び前記第3のデータボリュームに書き込まれ、
     前記記憶制御方法が、
     前記非同期リモートコピーの開始前に、
     (P)前記第1のデータボリュームの内容と前記第2のデータボリュームの内容とを一致させるためのコピーである第1の形成コピーと、
     (Q)前記第2のデータボリュームの内容と前記第3のデータボリュームの内容又は別の第2のデータボリュームの内容とを一致させるためのコピーである1以上の第2の形成コピーと
    を行い、前記第2の形成コピーにおいて、
    (q1)前記第2のストレージ装置が、更新番号と前記第2のデータボリューム内のデータとを含んだジャーナルを作成し、
    (q2)作成されたジャーナルが前記第2のストレージ装置から前記第3のストレージ装置又は転送先の第2のストレージ装置に転送され、
    (q3)前記第3のストレージ装置又は前記転送先の第2のストレージ装置が、更新番号の順に、前記第2のストレージ装置からのジャーナルを、前記第3のデータボリューム、又は前記転送先の第2のストレージ装置内の第2のデータボリュームに、反映し、
     前記(q1)で作成されたジャーナル内の更新番号は、前記第1のストレージ装置で更新され前記第1のストレージ装置から取得された更新番号である、
    記憶制御方法。
  9.  非同期リモートコピーを行うストレージシステムである非同期リモートコピーシステムでの記憶制御方法であって、
     前記非同期リモートコピーシステムが、
     直列の3以上のストレージ装置を有し、
     前記3以上のストレージ装置は、第1の記憶資源グループを有しホスト装置に接続されている第1のストレージ装置と、それぞれが第2の記憶資源グループを有する1以上の第2のストレージ装置と、第3の記憶資源グループを有する第3のストレージ装置であり、
     前記第1の記憶資源グループが、データが書き込まれる論理ボリュームである第1のデータボリュームと、データのジャーナルが書き込まれる記憶資源である第1のジャーナル記憶資源とを有し、
     前記第2の記憶資源グループが、データが書き込まれる論理ボリュームである第2のデータボリュームと、データのジャーナルが書き込まれる記憶資源である第2のジャーナル記憶資源とを有し、
     前記第3の記憶資源グループが、データが書き込まれる論理ボリュームである第3のデータボリュームと、データのジャーナルが書き込まれる記憶資源である第3のジャーナル記憶資源とを有し、
     前記第1のストレージ装置が、マルチホップ方式の非同期リモートコピーにおける始点であり、前記第3のストレージ装置が、その非同期リモートコピーにおける終点であり、前記1以上の第2のストレージ装置が、前記第1及び第3のストレージ装置間にある中間のストレージ装置であり、
     前記第1のストレージ装置が、前記ホスト装置から前記第1のデータボリュームにデータが書き込まれる場合、前記第1の記憶資源グループ内のデータボリュームにデータが書き込まれる都度に更新される番号である更新番号を更新し、その更新番号とそのデータとを含んだジャーナルを作成し、そのジャーナルを前記第1のジャーナル記憶資源に書き込み、
     マルチホップ方式の非同期リモートコピーが行われ、その非同期リモートコピーでは、前記ジャーナルが、前記第1のストレージ装置から前記第3のストレージ装置へ前記1以上の第2のストレージ装置を順次に経由して転送され、且つ、各転送先で反映されることで、前記第1のデータボリューム内のデータが各第2のデータボリューム及び前記第3のデータボリュームに書き込まれ、
     前記記憶制御方法が、
     前記終点のストレージ装置内のジャーナル記憶資源から前記始点のストレージ装置内のジャーナル記憶資源にかけて、順次に、パージする、
    記憶制御方法。
PCT/JP2010/002541 2010-04-07 2010-04-07 非同期リモートコピーシステム、及び、記憶制御方法 WO2011125127A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US12/865,767 US8271438B2 (en) 2010-04-07 2010-04-07 Asynchronous remote copy system and storage control method
PCT/JP2010/002541 WO2011125127A1 (ja) 2010-04-07 2010-04-07 非同期リモートコピーシステム、及び、記憶制御方法
US13/572,814 US8495014B2 (en) 2010-04-07 2012-08-13 Asynchronous remote copy system and storage control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2010/002541 WO2011125127A1 (ja) 2010-04-07 2010-04-07 非同期リモートコピーシステム、及び、記憶制御方法

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US12/865,767 A-371-Of-International US8271438B2 (en) 2010-04-07 2010-04-07 Asynchronous remote copy system and storage control method
US13/572,814 Continuation US8495014B2 (en) 2010-04-07 2012-08-13 Asynchronous remote copy system and storage control method

Publications (1)

Publication Number Publication Date
WO2011125127A1 true WO2011125127A1 (ja) 2011-10-13

Family

ID=44761653

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/002541 WO2011125127A1 (ja) 2010-04-07 2010-04-07 非同期リモートコピーシステム、及び、記憶制御方法

Country Status (2)

Country Link
US (2) US8271438B2 (ja)
WO (1) WO2011125127A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105518641A (zh) * 2014-05-05 2016-04-20 华为技术有限公司 点对点数据复制方法、设备和系统以及主节点切换方法、设备和系统
WO2016084156A1 (ja) * 2014-11-26 2016-06-02 株式会社日立製作所 ストレージシステム
JP2018163520A (ja) * 2017-03-27 2018-10-18 Necプラットフォームズ株式会社 ストレージ装置、レプリケーションシステム及びレプリケーション方法

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8479210B2 (en) * 2009-10-20 2013-07-02 International Business Machines Corporation Evenly distributing workload and providing a predictable failover scenario in a data replication system
US9910739B1 (en) * 2011-03-31 2018-03-06 EMC IP Holding Company LLC Inverse star replication
US9519555B2 (en) 2011-05-23 2016-12-13 Microsoft Technology Licensing, Llc Synchronous replication in a distributed storage environment
US9251021B2 (en) * 2011-05-23 2016-02-02 Bradley Gene Calder Asynchronous replication in a distributed storage environment
US20140164323A1 (en) * 2012-12-10 2014-06-12 Transparent Io, Inc. Synchronous/Asynchronous Storage System
WO2014106871A1 (en) * 2013-01-07 2014-07-10 Hitachi, Ltd. Storage system which realizes asynchronous remote copy using cache memory composed of flash memory, and control method thereof
WO2015155824A1 (ja) * 2014-04-07 2015-10-15 株式会社日立製作所 ストレージシステム
WO2016024994A1 (en) * 2014-08-15 2016-02-18 Hitachi, Ltd. Method and apparatus to virtualize remote copy pair in three data center configuration
JP6262879B2 (ja) * 2014-11-28 2018-01-17 株式会社日立製作所 ストレージシステム
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
US20200409556A1 (en) * 2019-06-25 2020-12-31 International Business Machines Corporation Enhanced cascaded global mirror

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005267216A (ja) * 2004-03-18 2005-09-29 Hitachi Ltd ストレージリモートコピー方法および情報処理システム
JP2006065629A (ja) * 2004-08-27 2006-03-09 Hitachi Ltd データ処理システム及び方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030014523A1 (en) * 2001-07-13 2003-01-16 John Teloh Storage network data replicator
US20050050115A1 (en) * 2003-08-29 2005-03-03 Kekre Anand A. Method and system of providing cascaded replication
US7395265B2 (en) 2004-08-27 2008-07-01 Hitachi, Ltd. Data processing system and storage subsystem provided in data processing system
JP4618777B2 (ja) 2004-08-27 2011-01-26 株式会社日立製作所 データ処理システム及びそのデータ処理システムに備えられる記憶サブシステム
JP2006119745A (ja) * 2004-10-19 2006-05-11 Hitachi Ltd コンピュータシステム及びコンピュータシステムの制御方法
US7412576B2 (en) * 2004-12-08 2008-08-12 Hitachi, Ltd. Remote copy system having multiple data centers
JP2007066162A (ja) * 2005-09-01 2007-03-15 Hitachi Ltd ストレージシステム及びストレージシステムの管理方法
JP2008243138A (ja) * 2007-03-29 2008-10-09 Hitachi Ltd ストレージシステム及びデータ復元方法
US8296358B2 (en) * 2009-05-14 2012-10-23 Hewlett-Packard Development Company, L.P. Method and system for journaling data updates in a distributed file system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005267216A (ja) * 2004-03-18 2005-09-29 Hitachi Ltd ストレージリモートコピー方法および情報処理システム
JP2006065629A (ja) * 2004-08-27 2006-03-09 Hitachi Ltd データ処理システム及び方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105518641A (zh) * 2014-05-05 2016-04-20 华为技术有限公司 点对点数据复制方法、设备和系统以及主节点切换方法、设备和系统
JP2016521427A (ja) * 2014-05-05 2016-07-21 ホアウェイ・テクノロジーズ・カンパニー・リミテッド ピアツーピアデータ複製用の方法、デバイス、およびシステム、ならびにマスタノード切替え用の方法、デバイス、およびシステム
US11068499B2 (en) 2014-05-05 2021-07-20 Huawei Technologies Co., Ltd. Method, device, and system for peer-to-peer data replication and method, device, and system for master node switching
WO2016084156A1 (ja) * 2014-11-26 2016-06-02 株式会社日立製作所 ストレージシステム
JP2018163520A (ja) * 2017-03-27 2018-10-18 Necプラットフォームズ株式会社 ストレージ装置、レプリケーションシステム及びレプリケーション方法

Also Published As

Publication number Publication date
US20120311283A1 (en) 2012-12-06
US20110251999A1 (en) 2011-10-13
US8271438B2 (en) 2012-09-18
US8495014B2 (en) 2013-07-23

Similar Documents

Publication Publication Date Title
WO2011125127A1 (ja) 非同期リモートコピーシステム、及び、記憶制御方法
JP5270796B2 (ja) 非同期リモートコピーシステム、及び、記憶制御方法
US7673173B2 (en) System and program for transmitting input/output requests from a first controller to a second controller
US9658798B2 (en) Grouping of tracks for copy source to target destage on global mirror secondary
US8335899B1 (en) Active/active remote synchronous mirroring
JP3958757B2 (ja) カスケード式再同期を利用する障害回復システム
US9678686B2 (en) Managing sequentiality of tracks for asynchronous PPRC tracks on secondary
JP4892185B2 (ja) 分散リモートコピーシステム
JP5285610B2 (ja) グローバルホットスペアディスクが存在するときに、故障したドライブを復元、及びコピーバックする最適化された方法
JP4733431B2 (ja) リモートコピーの初期コピーシステムおよび初期コピー方法ならびに記憶装置
US7685385B1 (en) System and method for satisfying I/O requests before a replica has been fully synchronized
US8219770B2 (en) Storage system and data management method
US20030126388A1 (en) Method and apparatus for managing storage based replication
JP2005301590A (ja) ストレージシステム及びデータ複製方法
US20140122816A1 (en) Switching between mirrored volumes
US8745006B2 (en) Computing system and backup method using the same
JP5286212B2 (ja) ストレージクラスタ環境でのリモートコピー制御方法及びシステム
JP2007086972A (ja) ストレージシステム、二重化制御方法、及びプログラム
KR20060017789A (ko) 저장 장치 카피 방법, 시스템 및 제조품
JP2008287405A (ja) パス管理方法、ホスト計算機及びパス管理プログラム
US7886186B2 (en) Storage system and management method for the same
JP2009163562A (ja) ストレージシステム、ストレージシステムの制御部、ストレージシステムの制御方法
WO2015045149A1 (ja) 情報システム、ホストシステム、及びアクセス制御方法
US20120246423A1 (en) Method and System for Data Replication
JP2020052464A (ja) リモートレプリケーションを行うストレージシステム

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 12865767

Country of ref document: US

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10849374

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10849374

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP