Virtualization controller and data transfer control method
First Claim
1. A virtualization system for controlling data transfer, said virtualization system being coupled to a host system and a plurality of storage systems, the host system sending an input request including volume identification information for writing data to a first virtual volume in the virtualization system, each of the storage systems comprising a plurality of disk drives and a plurality of logical volumes related to the disk drives, the virtualization system comprising:
- at least one first port coupled to the host system;
at least one second port coupled to the storage systems; and
at least one processing circuit;
wherein the virtualization system controls to perform first processes of;
receiving a first input request, the first input request being sent from the host system and including the volume identification information, andtransferring data of the first input request to a first logical volume of a first storage system of the storage systems, the first logical volume being related to the first virtual volume having a status, in which data of an input request including the volume identification information is written to the first virtual volume, so that the first storage system can write the data of the first input request to a storage area of the disk drives related to the first logical volume;
wherein the virtualization system controls to perform second processes of;
copying data from the first virtual volume to a second virtual volume in the virtualization system, the second virtual volume being related to a second logical volume of a second storage system of the storage systems,receiving a second input request during the copying process, the second input request being sent from the host system and including the volume identification information, andchanging a status of the second virtual volume to a status, in which data of an input request including the volume identification information is written to the second virtual volume, on a virtual volume basis; and
wherein the virtualization system controls to perform third processes of;
receiving a third input request, the third input request being sent from the host system and including the volume identification information, andtransferring data of the third input request to the second logical volume of the second storage system so that the second storage system can write the data of the third input request to a storage area of the disk drives related to the second logical volume,wherein data of the second input request is written to the second virtual volume.
0 Assignments
0 Petitions
Accused Products
Abstract
Embodiments of the present invention are directed to systems and methods of controlling data transfer between a host system and a plurality of storage devices. One embodiment is directed to a virtualization controller for controlling data transfer between a host system and a plurality of storage devices. The virtualization controller comprises a plurality of first ports for connection with the plurality of storage devices each having a storage area to store data; a second port for connection with the host system; a processor; and a memory configured to store volume mapping information which correlates first identification information used by the host system to access a first storage area in one of the storage devices, with second identification information for identifying the first storage area, the correlation being used by the processor to access the first storage area. When data stored in the first storage area is transferred to a second storage area in one of the storage devices, the processor correlates the first identification information with a third identification information for identifying the second storage area and registers the first identification information and the third identification information in the volume mapping information.
-
Citations
176 Claims
-
1. A virtualization system for controlling data transfer, said virtualization system being coupled to a host system and a plurality of storage systems, the host system sending an input request including volume identification information for writing data to a first virtual volume in the virtualization system, each of the storage systems comprising a plurality of disk drives and a plurality of logical volumes related to the disk drives, the virtualization system comprising:
-
at least one first port coupled to the host system; at least one second port coupled to the storage systems; and at least one processing circuit; wherein the virtualization system controls to perform first processes of; receiving a first input request, the first input request being sent from the host system and including the volume identification information, and transferring data of the first input request to a first logical volume of a first storage system of the storage systems, the first logical volume being related to the first virtual volume having a status, in which data of an input request including the volume identification information is written to the first virtual volume, so that the first storage system can write the data of the first input request to a storage area of the disk drives related to the first logical volume; wherein the virtualization system controls to perform second processes of; copying data from the first virtual volume to a second virtual volume in the virtualization system, the second virtual volume being related to a second logical volume of a second storage system of the storage systems, receiving a second input request during the copying process, the second input request being sent from the host system and including the volume identification information, and changing a status of the second virtual volume to a status, in which data of an input request including the volume identification information is written to the second virtual volume, on a virtual volume basis; and wherein the virtualization system controls to perform third processes of; receiving a third input request, the third input request being sent from the host system and including the volume identification information, and transferring data of the third input request to the second logical volume of the second storage system so that the second storage system can write the data of the third input request to a storage area of the disk drives related to the second logical volume, wherein data of the second input request is written to the second virtual volume. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 157, 158)
-
-
25. A computer program for controlling data transfer, stored on a computer readable storage medium and implemented in a virtualization system, which is coupled to an information processing system and a plurality of storage systems, the information processing system sending a write request including volume identification information, the volume identification information being used to identify a first virtual volume in the virtualization system, each of the storage systems having a plurality of disk drives and a plurality of logical volumes related to the disk drives, the computer program comprising:
-
code controlling to relate the first virtual volume to a first write request, the first write request being sent from the information processing system and including the volume identification information; code controlling transferring data of the first write request to a first logical volume of a first storage system of the storage systems; code controlling to relate a second virtual volume in the virtualization system to a second logical volume of a second storage system of the storage systems; code controlling to transfer data from the first virtual volume to a second virtual volume; and code controlling to cause the second virtual volume, which is assigned the volume identification information, to be written into with data of a write request including the volume identification information, wherein, before the transferring of data from the first virtual volume to the second virtual volume, the virtualization system controls to perform the processes of; receiving a first write request, the first write request being sent from the information processing system and including the volume identification information and transferring data of the first write request to the first logical volume of a first storage system of the storage systems, the first logical volume being related to the first virtual volume, the data of the first write request being written to a storage area of the disk drives related to the first logical volume; and transferring data from the first virtual volume to a second virtual volume in the virtualization system, the second virtual volume being related to a second logical volume of a second storage system of the storage systems; wherein the virtualization system controls to perform the processes of; receiving a second write request during the transferring of data from the first virtual volume to the second virtual volume, the second write request being sent from the information processing system and including the volume identification information, data of the second write request being written to the second virtual volume; and causing the second virtual volume, which is assigned the volume identification information, to be written in with data of a write request including the volume identification information; wherein, after the transferring of data from the first virtual volume to the second virtual volume, the virtualization system controls to perform the processes of; receiving a third write request, the third write request being sent from the information processing system and including the volume identification information; and transferring data of the third write request to the second logical volume of the second storage system, the data of the third write request being written to a storage area of the disk drives related to the second logical volume. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 159, 160)
-
-
49. A virtualization system for controlling data transfer, said virtualization system being coupled to an information processing system and a plurality of storage systems, the information processing system sending an input request related to volume identification information, the volume identification information being used to identify a first virtual volume in the virtualization system, each of the storage systems having a plurality of disk drives forming a plurality of logical volumes each related to at least a portion of the disk drives, the virtualization system comprising:
-
at least one first port coupled to the information processing system; at least one second port coupled to the storage systems; and at least one processing circuit, wherein the virtualization system controls to perform the processes of; receiving a first input request, the first input request being sent from the information processing system and being related to the volume identification information; transferring data of the first input request to a first logical volume of a first storage system of the storage systems, the first logical volume being related to the first virtual volume, so that the first storage system can write the data of the first input request to a storage area of the disk drives related to the first logical volume; maintaining a second virtual volume in said virtualization system, the second virtual volume being related to a second logical volume of a second storage system of the storage systems; transferring data from the first virtual volume to the second virtual volume; receiving a second input request during the transferring of data from the first virtual volume to the second virtual volume, the second input request being sent from the information processing system and being related to the volume identification information, data of the second input request being written to the second virtual volume; causing the second virtual volume, which assumes the volume identification information of the first virtual volume, to be recognized as a volume to the information processing system; receiving a third input request, the third input request being sent from the information processing system and being related to the volume identification information; and transferring data of the third input request to the second logical volume of the second storage system so that the second storage system can write the data of the third input request to a storage area of the disk drives related to the second logical volume. - View Dependent Claims (50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 161, 162)
-
-
73. A virtualization system for controlling data transfer, said virtualization system being coupled to a host system and a plurality of storage systems, the host system sending an input request targeted to volume identification information, the volume identification information being used to identify a first virtual volume in the virtualization system, each of the storage systems comprising a plurality of disk drives and a plurality of logical volumes related to the disk drives, the virtualization system comprising:
-
at least one first port coupled to the host system; at least one second port coupled to the storage systems; and at least one processing circuit, wherein the virtualization system controls to perform the processes of; receiving a first input request, the first input request being sent from the host system and being targeted to the volume identification information; transferring data of the first input request to a first logical volume of a first storage system of the storage systems, the first logical volume being related to the first virtual volume, the data of the first input request being written to a storage area of the disk drives related to the first logical volume; hiding a second virtual volume in the virtualization system from the host system, the second virtual volume being related to a second logical volume of a second storage system of the storage systems; copying data from the first virtual volume to the second virtual volume; receiving a second input request during the copying process, the second input request being sent from the host system and being targeted to the volume identification information, data of the second input request being written to the second virtual volume; causing the second virtual volume to become visible to the host system, the second virtual volume assuming the volume identification information of the first virtual volume, when all data between the first virtual volume and the second virtual volume is synchronized; receiving a third input request, the third input request being sent from the host system and being targeted to the volume identification information; and transferring data of the third input request to the second logical volume of the second storage system, the data of the third input request being written to a storage area of the disk drives related to the second logical volume. - View Dependent Claims (74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 163, 164)
-
-
98. A virtualization system for controlling data transfer, said virtualization system being coupled to an information processing system and a plurality of storage systems, the information processing system sending a read request including volume identification information related to a first virtual volume in the virtualization system, each of the storage systems having a plurality of disk drives and a plurality of logical volumes related to at least a portion of the disk drives, the virtualization system comprising:
-
at least one first port coupled to the information processing system; at least one second port coupled to the storage systems; and at least one processing circuit, wherein the virtualization system controls to perform the processes of; receiving a first read request, the first read request being sent from the information processing system and including the volume identification information; transferring a read request related to the first read request to a first logical volume of a first storage system of the storage systems, the first logical volume being related to the first virtual volume having a status, in which data requested by a read request including the volume identification information is read from the first virtual volume, so that the virtualization system can read data requested by the first read request from the first logical volume; copying data from the first virtual volume to a second virtual volume, the second virtual volume being related to a second logical volume of a second storage system of the storage systems; receiving a second read request during the copying process, the second read request being sent from the information processing system and including the volume identification information, a read request related to the second read request being transferred to the first logical volume; changing a status of the second virtual volume to a status, in which data requested by a read request including the volume identification information is read from the second virtual volume, on a virtual volume basis; receiving a third read request, the third read request being sent from the information processing system and including the volume identification information; and transferring a read request related to the third read request to the second logical volume of the second storage system so that the virtualization system can read data requested by the third read request from the second logical volume. - View Dependent Claims (99, 100, 101, 102, 103, 165, 166)
-
-
104. A virtualization system for controlling data transfer, said virtualization system is coupled to a host system and a plurality of storage systems, the host system sending a write request related to volume identification information, the volume identification information being used to identify a first virtual volume in the virtualization system, each of the storage systems having a plurality of disk drives and forming a plurality of logical volumes each related to at least a portion of the a plurality of disk drives, the virtualization system comprising:
-
at least one first port coupled to the host system; at least one second port coupled to the storage systems; and at least one processing circuit, wherein the virtualization system controls to perform the processes of; receiving a first write request, the first write request being sent from the host system and being related to the volume identification information; transferring data of the first write request to a first logical volume of a first storage system of the storage systems, the first logical volume being related to the first virtual volume, so that the first storage system can write the data of the first write request to a storage area of the disk drives related to the first logical volume; copying data from the first virtual volume to a second virtual volume in the virtualization system, the second virtual volume being related to a second logical volume of a second storage system of the storage systems; receiving a second write request during the copying process, the second write request being sent from the host system and being related to the volume identification information, data of the second write request is written to both the first virtual volume and the second virtual volume; causing the second virtual volume to function as a virtual volume to be written in with data of a write request sent from the host system while the first virtual volume is not to be written in with data of a write request sent from the host system, if all data between the first virtual volume and the second virtual volume is synchronized; receiving a third write request, the third write request being sent from the host system and being related to the volume identification information; and transferring data of the third write request to the second logical volume of the second storage system so that the second storage system can write the data of the third write request to a storage area of the disk drives related to the second logical volume. - View Dependent Claims (105, 106, 107, 108, 109)
-
-
110. A virtualization system for controlling data transfer, said virtualization system being coupled to a host system and a plurality of storage systems, the host system sending a read request including volume identification information identifying a first virtual volume in the virtualization system, each of the storage systems having a plurality of disk drives forming a plurality of logical volumes related to the plurality of disk drives, the virtualization system comprising:
-
at least one first port coupled to the host system; at least one second port coupled to the storage systems; and at least one processing circuit, wherein the virtualization system controls to perform the processes of; receiving a first read request, the first read request being sent from the host system and including the volume identification information; transferring a read request corresponding to the first read request to a first storage system of the storage systems for reading data requested by the first read request from a first logical volume of the first storage system, the first logical volume being related to the first virtual volume; transferring data from the first virtual volume to a second virtual volume, the second virtual volume being related to a second logical volume of a second storage system of the storage systems, receiving a second read request during the transferring of data from the first virtual volume to the second virtual volume, the second read request being sent from the host system and including the volume identification information, data requested by the second read request being read from the first logical volume of the first storage system; causing the second virtual volume, which is assigned the volume identification information, to be read out data requested by a read request including the volume identification information; receiving a third read request, the third read request being sent from the host system and including the volume identification information; and transferring a read request corresponding to the third read request to the second storage system for reading data requested by the third read request from the second logical volume of the second storage system. - View Dependent Claims (111, 112, 113, 114, 115, 167, 168)
-
-
116. A computer program stored on a computer readable storage medium for controlling data transfer in a virtualization system, the virtualization system being coupled to a host system and at least one storage system, the host system sending a read request related to volume identification information, the volume identification information being used to identify a first virtual volume in the virtualization system, the storage system having a plurality of disk drives forming a plurality of logical volumes related to the plurality of disk drives, the computer program comprising:
-
code controlling to map the first virtual volume to a first logical volume of the logical volumes; code controlling to map a second virtual volume in said virtualization system to a second logical volume of the logical volumes; code controlling to transfer data from the first virtual volume to the second virtual volume; and code controlling to causing the second virtual volume, which assumes the volume identification information of the first virtual volume, to be recognized as a volume to the host system, wherein the virtualization system controls to perform the processes of; before causing the second virtual volume to be recognized as the volume to the host system, receiving a first read request, the first read request being sent from the host system and being related to the volume identification information; transferring a read request related to the first read request to the storage system for reading data requested by the first read request from the first logical volume of the logical volumes, the first logical volume being related to the first virtual volume; maintaining a second virtual volume in said virtualization system, the second virtual volume being related to a second logical volume of the logical volumes; controlling to transfer data from the first virtual volume to the second virtual volume; receiving a second read request during the controlling transferring of data from the first virtual volume to the second virtual volume, the second read request being sent from the host system and being related to the volume identification information, data requested by the second read request being read from the first virtual volume; causing the second virtual volume, which assumes the volume identification information of the first virtual volume, to be recognized as a volume to the host system; after the causing the second virtual volume to be recognized as the volume to the host system, receiving a third read request, the third read request being sent from the host system and being related to the volume identification information; and transferring a read request related to the third read request to the storage system for reading data requested by the third read request from the second logical volume. - View Dependent Claims (117, 118, 119, 120, 121)
-
-
122. A virtualization system for controlling data transfer in a virtualization system, which is coupled to an information processing system and a plurality of storage systems, the information processing system sending a read request including volume identification information, the volume identification information being used to identity a first virtual volume in the virtualization system, each of the storage systems comprising a plurality of disk drives and a plurality of logical volumes related to the disk drives, the virtualization system comprising:
-
at least one first port coupled to the information processing system; at least one second port coupled to the storage systems; and at least one processing circuit, wherein the virtualization system controls to perform the processes of; receiving a first read request, the first read request being sent from the information processing system and including the volume identification information; transferring a read request related to the first read request to a first storage system of the storage systems for reading data requested by the first read request from the first virtual volume, the first virtual volume being related to a first logical volume of the first storage system; hiding a second virtual volume in the virtualization system from the information processing system, the second virtual volume being related to a second logical volume of a second storage system of the storage systems; controlling to copy data from the first virtual volume to the second virtual volume; receiving a second read request during the controlling process for controlling to copy data from the first virtual volume to the second virtual volume, the second read request being sent from the information processing system and including the volume identification information, data requested by the second read request being read from the first virtual volume; causing the second virtual volume to become visible to the information processing system, the second virtual volume assuming the volume identification information of the first virtual volume, when all data between the first virtual volume and the second virtual volume is synchronized; receiving a third read request, the third read request being sent from the information processing system and including the volume identification information; and transferring a read request related to the third read request to the second storage system for reading data requested by the third read request from the second virtual volume. - View Dependent Claims (123, 124, 125, 126, 127)
-
-
128. A virtualization system for controlling data transfer, said virtualization system being coupled to a host system and at least one storage system, the host system sending a write request related to volume identification information, the volume identification information being used to identify a first virtual volume in the virtualization system, the storage system having a plurality of disk drives and a plurality of logical volumes related to the disk drives, the virtualization system comprising:
-
at least one first port coupled to the host system; at least one second port coupled to the storage system; and at least one processing circuit, wherein the virtualization system controls to perform the processes of; receiving a first write request, the first write request being sent from the host system and being related to the volume identification information; transferring data of the first write request to a first logical volume of the storage system, the first logical volume being related to the first virtual volume; hiding a second virtual volume in the virtualization system from the host system, the second virtual volume being related to a second logical volume of the storage system; copying data from the first virtual volume to the second virtual volume; receiving a second write request during the copying process, the second write request being sent from the host system and being related to the volume identification information, data of the second write request is written to the second virtual volume; causing the second virtual volume to become visible to the host system, the second virtual volume assuming the volume identification information of the first virtual volume, if all data between the first virtual volume and the second virtual volume is synchronized; receiving a third write request, the third write request being sent from the host system and being related to the volume identification information; and transferring data of the third write request to the second logical volume of the storage system. - View Dependent Claims (129, 130, 131, 132, 133, 134, 169, 170)
-
-
135. A computer program stored on a computer readable storage medium and implemented in a virtualization system coupled to an information processing system and a plurality of storage systems, each of the storage systems having a plurality of disk drives and a plurality of logical volumes related to the disk drives, the computer program comprising:
-
code controlling to relate a first virtual volume to a first logical volume of a first storage system of the storage systems, the first virtual volume being identified by volume identification information for accessing from the information processing system; code controlling to relate a second virtual volume in the virtualization system to a second logical volume of a second storage system of the storage systems; code controlling to transfer data from the first virtual volume to a second virtual volume in a status in which the volume identification information is used for accessing from the information processing system; and code controlling to cause the second virtual volume, which is assigned the volume identification information, to be written in with data of a write request including the volume identification information, instead of the first virtual volume, based on the transferring of data from the first virtual volume to a second virtual volume. - View Dependent Claims (136, 137, 138, 139, 140, 171, 172)
-
-
141. A computer program stored on a computer readable storage medium and implemented in a virtualization system, the virtualization system being coupled to a information processing system and a plurality of storage systems, the information processing system sending a write request including volume identification information, each of the storage systems forming a plurality of logical volumes each related to at least a portion of a plurality of disk drives, the computer program comprising:
-
code controlling to copy data from a first virtual volume to a second virtual volume in the virtualization system, the first virtual volume being mapped to a first logical volume of a first storage system of the storage systems, the second virtual volume being mapped to a second logical volume of a second storage system of the storage systems; and code controlling to change a status, of the first virtual volume, in which data of a plurality of write requests including the volume identification information is written to the first virtual volume, to a status, in which data of a plurality of write requests including the volume identification information is not written to the first virtual volume, and controlling to change a status of the second virtual volume to a status, in which data of a plurality of write requests including the volume identification information is written to the second virtual volume, on a virtual volume basis. - View Dependent Claims (142, 143, 144, 145, 146, 147, 148, 149, 173, 174)
-
-
150. A computer program stored on a computer readable storage medium and implemented in a virtualization system, the virtualization system being coupled to a host system and a plurality of storage systems, the host system sending a write request related to volume identification information, the volume identification information being used to identify a first virtual volume in the virtualization system, each of the storage systems forming a plurality of logical volumes each related to at least a portion of a plurality of disk drives, the computer program comprising:
-
code controlling to copy data from the first virtual volume to a second virtual volume in the virtualization system, the first virtual volume being related to a first logical volume of a first storage system of the storage systems, the second virtual volume being related to a second logical volume of a second storage system of the storage systems; and code controlling to cause the second virtual volume to function as a virtual volume to be written in data of a write request received from the host system while the first virtual volume is not to be written in with data of a write request received from the host system, if all data between the first virtual volume and the second virtual volume is synchronized, wherein the virtualization system controls to perform the processes of; before the causing process, receiving a first write request, the first write request being sent from the host system and being related to the volume identification information and transferring data of the first write request to the first logical volume so that the first storage system can write the data of the first write request to a storage area of the disk drives related to the first logical volume; receiving a second write request during the copying process, the second write request being sent from the host system and being related to the volume identification information, data of the second write request is written to the second virtual volume; and after the causing process, receiving a third write request, the third write request being sent from the host system and being related to the volume identification information and transferring data of the third write request to the second logical volume of the second storage system so that the second storage system can write the data of the third write request to a storage area of the disk drives related to the second logical volume. - View Dependent Claims (151, 152, 153, 154, 155, 156, 175, 176)
-
Specification