System and method for re-striping a set of objects onto an exploded array of storage units in a computer system
First Claim
1. In a computer system having a processor, memory and a set of storage units storing a set of objects, each object comprising a set of segments arranged in an original set of object stripes on separate storage units, wherein a directory is maintained identifying an object name and a location of each object stripe in the set of storage units, a method for re-striping the set of objects onto an expanded set of storage units comprising the set of storage units and at least one additional storage unit, comprising the steps of:
- a) maintaining a list of each object to be copied onto the expanded set of storage units;
b) copying each segment of a list object in block units to a new set of new stripes on separate storage units of the expanded set to create a new object while continuing to store an original copy of each segment of the list object in the original set of object stripes;
c) updating the directory to include a new object name, and a new location of each new stripe of the new object;
d) after all of the list object segments are copied to the new stripes, deleting the original copy of each list object segment from the original set of object stripes and renaming, in the directory, the new object to the list object name; and
e) deleting a list object from the list of each object to be copied once all of the list object segments have been copied to the new stripes and the object is renamed to the list object name.
3 Assignments
0 Petitions
Accused Products
Abstract
In a computer system having a processor, memory, and a set of storage units storing a set of objects, each object comprising a set of segments arranged in a set of original object stripes on separate storage units, a directory is maintained identifying an object name and a location of each stripe of the object in the set of storage units. A method is provided for re-striping the set of objects onto an expanded set of storage units comprising the set of storage units and at least one other additional storage unit. A list is maintained of each object to be copied onto the expanded set of storage units. Each segment is copied to a new set of stripes on a separate storage unit of the expanded set to create a new object while continuing to store an original copy of each segment of the list object in the original set of object stripes. The directory is updated to include a new object name and a new location of each new stripe of the new object. After all the list object segments are copied to the new stripes, the original copy of each list object segment is deleted and the new object is renamed in the directory to the list object name.
-
Citations
14 Claims
-
1. In a computer system having a processor, memory and a set of storage units storing a set of objects, each object comprising a set of segments arranged in an original set of object stripes on separate storage units, wherein a directory is maintained identifying an object name and a location of each object stripe in the set of storage units, a method for re-striping the set of objects onto an expanded set of storage units comprising the set of storage units and at least one additional storage unit, comprising the steps of:
-
a) maintaining a list of each object to be copied onto the expanded set of storage units; b) copying each segment of a list object in block units to a new set of new stripes on separate storage units of the expanded set to create a new object while continuing to store an original copy of each segment of the list object in the original set of object stripes; c) updating the directory to include a new object name, and a new location of each new stripe of the new object; d) after all of the list object segments are copied to the new stripes, deleting the original copy of each list object segment from the original set of object stripes and renaming, in the directory, the new object to the list object name; and e) deleting a list object from the list of each object to be copied once all of the list object segments have been copied to the new stripes and the object is renamed to the list object name. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer storage and retrieval system comprising:
-
a set of storage units storing sets of data objects, each data object comprising segments stored in stripes on separate storage units wherein an additional storage unit is added to the set of storage units to produce an expanded set of storage units; a directory stored in a memory cataloging each object name and a location for each object stripe; a listing maintained in memory of each object to be copied onto the expanded set of storage units; means for identifying whether there is sufficient available storage locations in the expanded set in which to copy a list object and designating a next object on the list of each object to be copied as the list object, when there is not sufficient available storage location to copy the list object; means for copying each segment of the list object to a new set of new stripes on separate storage units of the expanded set to create a new object while continuing to store an original copy of each segment of the list object in the set of object stripes; means for updating the directory to include a new object name, and a new location of each new stripe of the new object;
means for deleting the original copy of each list object segment after all of the list object segments are copied to the new stripes;means for renaming, in the directory, the new object to the list object names; means for deleting the new object when the list object is deleted while it is being copied; and means for satisfying an access request for the list object during the re-striping of the segments of the list object. - View Dependent Claims (8, 9, 10)
-
-
11. An article of manufacture for use in a computer system for re-striping a set of objects stored on an original set of stripes on separate storage units onto a new set of stripes on an expanded set of storage units, the expanded set including the set of storage units and at least one additional storage unit, said article of manufacture comprising a computer-readable storage medium having computer program code embodied in said medium which causes the computer system to:
-
maintain a list of each object to be copied onto the expanded set of storage units; copy each segment of a list object to a new set of new stripes on separate storage units of the expanded set to create a new object while continuing to store an original copy of each segment of the list object in the set of object stripes; update an object directory to include a new object name, and a new location of each new stripe of the new object; after all of the list object segments are copied to the new stripes, delete the original copy of each list object segment from the original set of stripes and renaming, in the object directory, the new object to the list object name; identify whether there is sufficient available storage locations in the expanded set in which to copy the list object; when there is not sufficient available storage location, place the list object on a delay list of objects to be copied at a later time, and designate a next object on the list of each object to be copied as the list object; delete the list object from the list of each object to be copied once all of the list object segments have been copied to the new stripes; and delete the new object when a list object is deleted while it is being copied. - View Dependent Claims (12, 13, 14)
-
Specification