Substitution of a target volume of a secondary storage controller for a source volume of a primary storage controller for executing a write operation
Title: | Substitution of a target volume of a secondary storage controller for a source volume of a primary storage controller for executing a write operation |
---|---|
Patent Number: | 9,244,786 |
Publication Date: | January 26, 2016 |
Appl. No: | 12/965648 |
Application Filed: | December 10, 2010 |
Abstract: | A secondary storage controller receives metadata that uniquely identifies a source volume of a primary storage controller. Data stored in the source volume of the primary storage controller is synchronously copied to a target volume of the secondary storage controller. The secondary storage controller receives a command from a primary host to write selected data to the source volume. In response to receiving the command at the secondary storage controller, the selected data is written to the target volume of the secondary storage controller. |
Inventors: | Crawford, Joshua James (Tucson, AZ, US); Donie, Benjamin J. (Chandler, AZ, US); Koster, Andreas Bernardus Mattias (Vail, AZ, US); Vaterlaus, Leann Armstrong (Tucson, AZ, US) |
Assignees: | INTERNATIONAL BUSINESS MACHINES CORPORATION (Armonk, NY, US) |
Claim: | 1. A system, comprising: a memory; and a processor coupled to the memory, wherein the processor performs operations, the operations comprising: receiving, by a secondary storage controller, a Small Computer Systems interface (SCSI) logical unit (LUN) identifier (ID) that uniquely identifies a source volume controlled by a primary storage controller; synchronously copying data stored in the source volume controlled by the primary storage controller to a target volume controlled by the secondary storage controller, wherein the copied data is consistent between the source volume and the target volume; receiving, at the secondary storage controller, a command from a primary host to write data associated with the command, to the source volume; and in response to receiving the command at the secondary storage controller, an emulator that executes in the secondary storage controller uses the SCSI LUN ID to map the received command to write the data associated with the command to the target volume controlled by the secondary storage controller. |
Claim: | 2. The system of claim 1 , the operations further comprising: synchronizing the target volume controlled by the secondary storage controller to the source volume controlled by the primary storage controller, subsequent to writing the data associated with the command to the target volume. |
Claim: | 3. The system of claim 1 , wherein: the primary host is coupled to the primary storage controller and a path exists from the primary host to the secondary storage controller; and in response to the primary storage controller failing or being overloaded, sending, by the primary host, the command to write the data associated with the command to the source volume controlled by the primary storage controller to the secondary storage controller that controls the target volume. |
Claim: | 4. The system of claim 1 , the operations further comprising: receiving, by the primary host, an indication from the secondary storage controller that the command to write the data associated with the command to the source volume has been executed, even though the data associated with the command has been written to the target volume. |
Claim: | 5. A computer program product, the computer program product comprising: a non-transitory computer readable storage medium having computer readable program code embodied therewith, the computer readable program code configured to perform operations, the operations comprising: receiving, by a secondary storage controller, a Small Computer Systems interface (SCSI) logical unit (LUN) identifier (ID) that uniquely identifies a source volume controlled by a primary storage controller; synchronously copying data stored in the source volume controlled by the primary storage controller to a target volume controlled by the secondary storage controller, wherein the copied data is consistent between the source volume and the target volume; receiving, at the secondary storage controller, a command from a primary host to write data associated with the command, to the source volume; and in response to receiving the command at the secondary storage controller, an emulator that executes in the secondary storage controller uses the SSCI LUN ID to map the received command to write the data associated with the command to the target volume controlled by the secondary storage controller. |
Claim: | 6. The computer program product of claim 5 , the operations further comprising: synchronizing the target volume controlled by the secondary storage controller to the source volume controlled by the primary storage controller, subsequent to writing the data associated with the command to the target volume. |
Claim: | 7. The computer program product of claim 5 , wherein: the primary host is coupled to the primary storage controller and a path exists from the primary host to the secondary storage controller; and in response to the primary storage controller failing or being overloaded, sending, by the primary host, the command to write the data associated with the command to the source volume controlled by the primary storage controller to the secondary storage controller that controls the target volume. |
Claim: | 8. The computer program product of claim 5 , the operations further comprising: receiving, by the primary host, an indication from the secondary storage controller that the command to write the data associated with the command to the source volume has been executed, even though the data associated with the command has been written to the target volume. |
Patent References Cited: | 6442709 August 2002 Beal et al. 7111189 September 2006 Sicola et al. 7269701 September 2007 Shackelford et al. 7404051 July 2008 Shitomi 7603581 October 2009 Boyd et al. 2006/0143413 June 2006 Agombar et al. 2009/0043979 February 2009 Jarvis |
Other References: | U.S. Appl. No. 13/476,659, filed May 21, 2012 for “Substitution of a Target Volume of a Secondary Storage Controller for a Source Volume of a Primary Storage Controller for Executing a Write Operation” by inventors J.J. Crawford, B.J. Donie, A.B. M. Koster and L.A. Vaterlaus. cited by applicant Preliminary Amendment filed May 21, 2012, pp. 1-7, for U.S. Appl. No. 13/476,659, filed May 21, 2012 for “Substitution of a Target Volume of a Secondary Storage Controller for a Source Volume of a Primary Storage Controller for Executing a Write Operation” by inventors J.J. Crawford, B.J. Donie, A. B. M. Koster and L.A. Vaterlaus. cited by applicant A.C. Azagury, et al., “Advanced Functions for Storage Subsystem: Supporting Continuous Availability”, IBM Corporation, IBM Systems Journal vol. 42, No. 2, 2003, pp. 268-279. cited by applicant J. Glorieux, “2 Site and 3 Site Enterprise Disk Mirroring”, IBM Corporation, IBM Systems, Sep. 20, 2006, pp. 1-71. cited by applicant Office Action dated Mar. 20, 2014, pp. 9, for U.S. Appl. No. 13/476,659, filed May 21, 2012. cited by applicant Response dated Jun. 20, 2014, pp. 6, to Office Action dated Mar. 20, 2014, pp. 9, for U.S. Appl. No. 13/476,659, filed May 21, 2012. cited by applicant Office Action dated Mar. 27, 2015, pp. 7, for U.S. Appl. No. 13/476,659, filed May 21, 2012. cited by applicant Response to Office Action, dated Jun. 29, 2015, for U.S. Appl. No. 13/476,659, filed May 21, 2012, invented by Joshua James Crawford et al., Total 7 pages. cited by applicant Notice of Allowance dated Aug. 28, 2015, pp. 11, for U.S. Appl. No. 13/476,659, filed May 21, 2012. cited by applicant |
Primary Examiner: | Bradley, Matthew |
Attorney, Agent or Firm: | Dutta, Rabindranath Konrad Raynes Davda & Victor LLP |
Accession Number: | edspgr.09244786 |
Database: | USPTO Patent Grants |
Language: | English |
---|