Data migration using parallel, distributed table driven I/O mapping
First Claim
1. A method for moving information from a first physical storage location to a second physical storage location in a virtual storage system for linking a host to the storage locations, the system having an agent connected to the host, the agent storing a table, the table having entries that map to virtual storage disk positions to the locations on the storage devices, the table entries including an indication of whether a no-write (Nw) state is activated, whereby activation of the Nw state prevents writing operations to the storage location contained in that entry, and a controller connected to the agent, the controller controlling the contents of the table, the method comprising the steps of:
- a) the controller activating the Nw state for the table entry corresponding to the first physical storage location;
b) copying information from the first physical storage location to the second physical storage location;
c) the controller changing the virtual mapping from the first physical location to the second physical location; and
d) the controller deactivating the Nw state for the table entry corresponding to the second physical storage location.
3 Assignments
0 Petitions
Accused Products
Abstract
A system for moving physically stored data in a distributed, virtualized storage network is disclosed. A group of data sets is written to a first storage device as part of a write operation such as migration. A plurality of storage devices partially filled with data are designated as substitutes. The write operation to the first storage device is suspended upon receiving a request to read a data set stored in the first storage device, such as occurs in a recall operation. A second storage device is then selected from the plurality of substitute storage devices. The write operation is continued by writing data sets from the group of data sets included in the write operation that were not written to the first storage device to the selected second storage device. The requested data is then read from the first storage device. After data has been read from the first storage device, the first storage device may be designated as a substitute storage device so that the partially filled first storage device may be selected for continuing write operations. Data sets from substitute storage devices may be transferred or merged into a lesser number of storage devices during recycle operations to prevent the number of substitute storage devices from increasing beyond a predetermined limit or goal. Recycling operations in which data sets from different storage devices are transferred or merged may be performed by building a first queue including a list of filled tapes ordered according to the least amount of valid data and a second queue including all unassociated partially filled storage devices ordered by the amount of available storage space, and merging.
-
Citations
16 Claims
-
1. A method for moving information from a first physical storage location to a second physical storage location in a virtual storage system for linking a host to the storage locations, the system having an agent connected to the host, the agent storing a table, the table having entries that map to virtual storage disk positions to the locations on the storage devices, the table entries including an indication of whether a no-write (Nw) state is activated, whereby activation of the Nw state prevents writing operations to the storage location contained in that entry, and a controller connected to the agent, the controller controlling the contents of the table, the method comprising the steps of:
-
a) the controller activating the Nw state for the table entry corresponding to the first physical storage location;
b) copying information from the first physical storage location to the second physical storage location;
c) the controller changing the virtual mapping from the first physical location to the second physical location; and
d) the controller deactivating the Nw state for the table entry corresponding to the second physical storage location.
-
-
2. A virtual storage system for moving data accessed over a network from a first storage location to a second storage location on a storage device, the system comprising:
-
an agent having volatile memory for storing a first copy of a table, the table having entries to map virtual disk positions to locations on the storage device; and
a controller coupled to the agent, the controller having non-volatile memory for storing a second copy of the table and means for directing movement of data from the first storage location to the second storage location while the agent prevents any I/O operations that would change the data at the first storage location. - View Dependent Claims (3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14, 15)
-
-
13. A method for maintaining a table for mapping virtual disk blocks to migrated storage locations on storage devices within a network, comprising:
-
activating states within entries of the table;
migrating data from a first storage location to a second storage location;
completing operations at the table; and
updating the table in response to the command.
-
-
16. A method for moving data from a first storage location to a second storage location on a storage device in a virtual disk storage system, comprising:
-
providing an agent having volatile memory for storing a first copy of a table, the table having entries to map virtual disk positions to locations on the storage device;
providing a controller coupled to the agent, the controller having non-volatile memory for storing a second copy of the table;
responsive to a request to move virtual disk data from a first location to a second location, the controller changing the second copy of the table and issuing an order to change the first copy of the table to the agent;
after completion of all prior I/O operations, the agent alerting the controller of completion;
the controller then copying the contents of the first storage location to the second storage location;
the controller then updating the second copy of the table and directing the agent to update the first copy of the table to match the updated second copy of the table; and
after completion of all prior I/O operations, the agent updating the first copy of the table to match the updated second copy of the table and responding to the controller.
-
Specification