# US 2014/0281350 A1 · Multi-layered storage administration for flexible placement of data

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2014/0281350 A1
- Document ID: US20140281350A1
- Status: Published application
- Kind: A1
- Application number: 14/206,123
- Filed: 2014-03-12
- Published: 2014-09-18
- Earliest claimed: 2013-03-15
- Assignees: Bracket Computing, Inc.
- Applicants: Bracket Computing, Inc.
- Inventors: JASON A. LANGO; JOHN K. EDWARDS; NITIN MUPPALANENI
- Web page: https://patentgrep.com/patent/US20140281350A1

## CPC

- G06F 3/0665: {at area level, e.g. provisioning of virtual or logical volumes}
- G06F 3/0604: {Improving or facilitating administration, e.g. storage management}
- G06F 3/0631: {by allocating resources to storage systems}
- G06F 3/0667: {at data level, e.g. file, record or object virtualisation}
- G06F 3/067: {Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]}
- G06F 3/0671: {In-line storage system}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A storage administrator may maintain location information in separate layers. A data storage system may identify the location of particular data by identifying the virtual location of data, such as the logical extent to which the data belongs. Object stores may maintain mappings of virtual locations to physical locations, such as mappings of extent identifiers to virtual storage objects and mappings of virtual storage objects to storage unit locations. When particular data is relocated to a new location, a storage administrator may update mappings used to translate virtual locations to physical locations, such as an extent-object mapping or an object-storage unit mapping. References to the virtual locations, such as references to logical extent identifiers, may not be updated in response to the relocation of data.

## Claims

### Claim 1

A method comprising:
receiving, using a computer, a request to store data;
causing storage of the data in a data storage system of a virtualized computer system;
storing a data location record that identifies one or more virtual locations at which the data is stored without identifying any physical locations in which the data is stored;
wherein the method is performed using one or more computing devices.

### Claim 2 (depends on 1)

The method of claim 1 comprising:
sending, to an object administrator, an instruction to store the data;
in response to sending the instruction, receiving one or more virtual location identifiers identifying virtual locations in which the data is stored without identifying any physical locations in which the data is stored.

### Claim 3 (depends on 2)

The method of claim 2 comprising:
in response to sending the instruction, receiving one or more logical extent identifiers identifying logical extents in which the data is stored, wherein the logical extent identifiers identify the one or more logical extents in which the data is stored without identifying any physical locations in which the data is stored.

### Claim 4 (depends on 2)

The method of claim 2 comprising:
in response to sending the instruction, receiving one or more logical block identifiers identifying logical blocks in which the data is stored, wherein the logical block identifiers identify the one or more logical blocks in which the data is stored without identifying any physical locations in which the data is stored.

### Claim 5 (depends on 2)

The method of claim 2 comprising:
in response to sending the instruction, receiving one or more logical object identifiers identifying logical objects in which the data is stored, wherein the logical object identifiers identify the one or more logical objects in which the data is stored without identifying any physical locations in which the data is stored.

### Claim 6 (depends on 4)

The method of claim 4 comprising:
in response to receiving the one or more logical object identifiers, updating an extent-object mapping to indicate that a particular extent comprises the one or more logical object identifiers.

### Claim 7

A method comprising:
receiving, at a data storage system of a virtualized computer system, a request for data;
determining, a virtual location at which the data is stored;
identifying, based on the virtual location at which the data is stored and one or more mappings of virtual locations to object administrators, an object administrator associated with physical storage of the data;
determining, at the object administrator, based on one or more mappings, one or more physical locations in the data storage system that correspond to the virtual location;
retrieving data from the one or more physical locations of the data storage system of the virtualized computer system;
wherein the method is performed using one or more computing devices.

### Claim 8 (depends on 7)

The method of claim 7 comprising:
receiving, at an object administrator, a request for data identifying at least a logical extent at which the data is stored;
determining, one or more objects that belong to the logical extent identified in the request;
determining, for each object of the one or more objects, one or more storage unit portions that belong to the object;
retrieving the data from the one or more storage unit portions that correspond to each object of the one or more objects.

### Claim 9 (depends on 7)

The method of claim 7, wherein the virtual location is identified by a logical object identifier.

### Claim 10 (depends on 7)

The method of claim 7, wherein the virtual location is identified by a logical block number in a virtual disk, file, or object.

### Claim 11 (depends on 7)

The method of claim 7, wherein the virtual location is identified by a byte-offset in a virtual disk, file, or object.

### Claim 12

A method comprising:
determining, at a storage administrator, that a condition has occurred requiring transformation of particular data or movement of particular data to one or more new physical locations in a data storage system of a virtualized computer system, wherein the particular data is stored at a particular virtual location;
in response to the determination:
storing data corresponding to the particular data at the one or more new physical locations; and
updating a mapping corresponding to the particular virtual location to indicate that the particular virtual location corresponds to the one or more new physical locations instead of one or more prior physical locations without updating any references to the particular virtual location;
wherein the method is performed using one or more computing devices.

### Claim 13 (depends on 12)

The method of claim 12, comprising:
monitoring performance of a plurality of different storage units in a virtual data center;
determining that the condition has occurred based on the monitoring.

### Claim 14 (depends on 12)

The method of claim 12, wherein the particular data is stored at a first storage device and wherein storing the data at the one or more new physical locations comprises moving the particular data to a second storage device different from the first storage device.

### Claim 15 (depends on 12)

The method of claim 12, wherein determining that the condition has occurred comprises receiving a request for a different service level from a client computer.

### Claim 16 (depends on 12)

The method of claim 12, comprising:
wherein the particular data is stored at a particular logical extent;
in response to the determination:
updating one or more of:
extent-object mappings, which prior to the updating indicated that a particular virtual storage object stores information belonging to the particular logical extent, to indicate that a different virtual storage object stores information belonging to the particular logical extent; or
object-storage unit mappings, which prior to the updating indicated that a particular set of storage unit portions belong to the particular virtual storage object, to instead indicate that a different set of storage unit portions belong to the particular virtual storage object;
wherein the method is performed using one or more computing devices.

### Claim 17 (depends on 16)

The method of claim 16, wherein determining that the condition has occurred comprises determining that at least a particular storage unit is not performing adequately, and wherein the particular storage unit is included in the particular set of storage unit portions and not included in the different set of storage unit portions.

### Claim 18 (depends on 16)

The method of claim 16 comprising:
in response to the determination, updating object-storage unit mappings, which prior to the updating indicated that the particular set of storage unit portions belong to the particular virtual storage object, to instead indicate that the different set of storage unit portions belong to the particular virtual storage object, wherein the no updates are made to logical extent location information identifying one or more virtual locations of the particular data in response to the determination.

### Claim 19 (depends on 16)

The method of claim 16, comprising:
wherein determining that the condition has occurred comprises determining that a service level corresponding to the particular data has changed;
updating the extent-object mappings, which prior to the updating indicated that the particular virtual storage object stores information belonging to the particular logical extent, to instead indicate that the different virtual storage object stores information belonging to the particular logical extent.

### Claim 20 (depends on 16)

The method of claim 16, wherein at least two storage unit portions of the different set of storage unit portions are portions of two different storage unit devices.

### Claim 21 (depends on 16)

The method of claim 16, wherein the particular set of storage unit portions includes a particular storage unit portion not included in the different set of storage unit portions.

### Claim 22 (depends on 16)

The method of claim 16, wherein the different set of storage unit portions include each storage unit portion in the particular set of storage unit portions in addition to one or more additional storage unit portions.

### Claim 23 (depends on 16)

The method of claim 16, comprising:
concurrently applying two different types of transformations to one or more data portions.

### Claim 24 (depends on 16)

The method of claim 16, comprising:
wherein the particular data comprises a first data portion stored at a first object belonging to a logical extent and a second data portion stored at a second object belonging to the same logical extent;
in a single input or output operation, concurrently transforming both the first data portion and the second data portion, wherein concurrently transforming both the first data portion and the second data portion comprises:
applying a first type of transformation to the first data portion;
storing a transformed version of the first data portion at a first new object different than the first object;
applying a second type of transformation different than the first type of transformation to the second data portion;
storing a transformed version of the second data portion at a second new object different than the second object;
updating a mapping corresponding to the logical extent to indicate that the first new object and second new object belong to the logical extent.

### Claim 25 (depends on 16)

The method of claim 16, comprising:
wherein the particular data comprises a first data portion stored at a first storage unit portion belonging to a virtual storage object and a second data portion stored at a second storage unit portion belonging to the same virtual storage object;
in a single input/output operation, concurrently transforming both the first data portion and the second data portion, wherein concurrently transforming both the first data portion and the second data portion comprises:
applying a first type of transformation to the first data portion;
storing a transformed version of the first data portion at a first new storage unit portion different than the first storage unit portion;
applying a second type of transformation different than the first type of transformation to the second data portion;
storing a transformed version of the second data portion at a second new storage unit portion different than the second storage unit portion;
updating a mapping corresponding to the virtual storage object to indicate that the first new storage unit portion and second new storage unit portion belong to the virtual storage object.

### Claim 26

A non-transitory computer-readable storage medium comprising one or more sequences of instructions which when executed by one or more processors cause the one or more processors to perform:
receiving, using a computer, a request to store data;
causing storage of the data in a data storage system of a virtualized computer system;
storing a data location record that identifies one or more virtual locations at which the data is stored without identifying any physical locations in which the data is stored.

### Claim 27 (depends on 26)

The non-transitory computer-readable storage medium of claim 26, wherein the sequences of instructions which when executed by the one or more processors cause the one or more processors to further perform:
sending, to an object administrator, an instruction to store the data;
in response to sending the instruction, receiving one or more virtual location identifiers identifying virtual locations in which the data is stored without identifying any physical locations in which the data is stored.

### Claim 28 (depends on 27)

The non-transitory computer-readable storage medium of claim 27, wherein the sequences of instructions which when executed by the one or more processors cause the one or more processors to further perform:
in response to sending the instruction, receiving one or more logical extent identifiers identifying logical extents in which the data is stored, wherein the logical extent identifiers identify the one or more logical extents in which the data is stored without identifying any physical locations in which the data is stored.

### Claim 29 (depends on 27)

The non-transitory computer-readable storage medium of claim 27, wherein the sequences of instructions which when executed by the one or more processors cause the one or more processors to further perform:
in response to sending the instruction, receiving one or more logical block identifiers identifying logical blocks in which the data is stored, wherein the logical block identifiers identify the one or more logical blocks in which the data is stored without identifying any physical locations in which the data is stored.

### Claim 30 (depends on 27)

The non-transitory computer-readable storage medium of claim 27, wherein the sequences of instructions which when executed by the one or more processors cause the one or more processors to further perform:
in response to sending the instruction, receiving one or more logical object identifiers identifying logical objects in which the data is stored, wherein the logical object identifiers identify the one or more logical objects in which the data is stored without identifying any physical locations in which the data is stored.

### Claim 31 (depends on 29)

The non-transitory computer-readable storage medium of claim 29, wherein the sequences of instructions which when executed by the one or more processors cause the one or more processors to further perform:
in response to receiving the one or more logical object identifiers, updating an extent-object mapping to indicate that a particular extent comprises the one or more logical object identifiers.

### Claim 32

A non-transitory computer-readable storage medium comprising one or more sequences of instructions which when executed by one or more processors cause the one or more processors to perform:
receiving, at a data storage system of a virtualized computer system, a request for data;
determining, a virtual location at which the data is stored;
identifying, based on the virtual location at which the data is stored and one or more mappings of virtual locations to object administrators, an object administrator associated with physical storage of the data;
determining, at the object administrator, based on one or more mappings, one or more physical locations in the data storage system that correspond to the virtual location;
retrieving data from the one or more physical locations of the data storage system of the virtualized computer system.

### Claim 33 (depends on 32)

The non-transitory computer-readable storage medium of claim 32, wherein the sequences of instructions which when executed by the one or more processors cause the one or more processors to further perform:
receiving, at an object administrator, a request for data identifying at least a logical extent at which the data is stored;
determining, one or more objects that belong to the logical extent identified in the request;
determining, for each object of the one or more objects, one or more storage unit portions that belong to the object;
retrieving the data from the one or more storage unit portions that correspond to each object of the one or more objects.

### Claim 34 (depends on 32)

The non-transitory computer-readable storage medium of claim 32, wherein the virtual location is identified by a logical object identifier.

### Claim 35 (depends on 32)

The non-transitory computer-readable storage medium of claim 32, wherein the virtual location is identified by a logical block number in a virtual disk, file, or object.

### Claim 36 (depends on 32)

The non-transitory computer-readable storage medium of claim 32, wherein the virtual location is identified by a byte-offset in a virtual disk, file, or object.

### Claim 37

A non-transitory computer-readable storage medium comprising one or more sequences of instructions which when executed by one or more processors cause the one or more processors to perform:
determining, at a storage administrator, that a condition has occurred requiring transformation of particular data or movement of particular data to one or more new physical locations in a data storage system of a virtualized computer system, wherein the particular data is stored at a particular virtual location;
in response to the determination:
storing data corresponding to the particular data at the one or more new physical locations; and
updating a mapping corresponding to the particular virtual location to indicate that the particular virtual location corresponds to the one or more new physical locations instead of one or more prior physical locations without updating any references to the particular virtual location.

### Claim 38 (depends on 37)

The non-transitory computer-readable storage medium of claim 37, wherein the sequences of instructions which when executed by the one or more processors cause the one or more processors to further perform:
monitoring performance of a plurality of different storage units in a virtual data center;
determining that the condition has occurred based on the monitoring.

### Claim 39 (depends on 37)

The non-transitory computer-readable storage medium of claim 37, wherein the particular data is stored at a first storage device and wherein storing the data at the one or more new physical locations comprises moving the particular data to a second storage device different from the first storage device.

### Claim 40 (depends on 37)

The non-transitory computer-readable storage medium of claim 37, wherein determining that the condition has occurred comprises receiving a request for a different service level from a client computer.

### Claim 41 (depends on 37)

The non-transitory computer-readable storage medium of claim 37, wherein the sequences of instructions which when executed by the one or more processors cause the one or more processors to further perform:
wherein the particular data is stored at a particular logical extent;
in response to the determination:
updating one or more of:
extent-object mappings, which prior to the updating indicated that a particular virtual storage object stores information belonging to the particular logical extent, to indicate that a different virtual storage object stores information belonging to the particular logical extent; or
object-storage unit mappings, which prior to the updating indicated that a particular set of storage unit portions belong to the particular virtual storage object, to instead indicate that a different set of storage unit portions belong to the particular virtual storage object.

### Claim 42 (depends on 41)

The non-transitory computer-readable storage medium of claim 41, wherein determining that the condition has occurred comprises determining that at least a particular storage unit is not performing adequately, and wherein the particular storage unit is included in the particular set of storage unit portions and not included in the different set of storage unit portions.

### Claim 43 (depends on 41)

The non-transitory computer-readable storage medium of claim 41, wherein the sequences of instructions which when executed by the one or more processors cause the one or more processors to further perform:
in response to the determination, updating object-storage unit mappings, which prior to the updating indicated that the particular set of storage unit portions belong to the particular virtual storage object, to instead indicate that a different set of storage unit portions belong to the particular virtual storage object, wherein the no updates are made to logical extent location information identifying one or more virtual locations of the particular data in response to the determination.

### Claim 44 (depends on 41)

The non-transitory computer-readable storage medium of claim 41, wherein the sequences of instructions which when executed by the one or more processors cause the one or more processors to further perform:
wherein determining that the condition has occurred comprises determining that a service level corresponding to the particular data has changed;
updating the extent-object mappings, which prior to the updating indicated that the particular virtual storage object stores information belonging to the particular logical extent, to instead indicate that the different virtual storage object stores information belonging to the particular logical extent.

### Claim 45 (depends on 41)

The non-transitory computer-readable storage medium of claim 41, at least two storage unit portions of the different set of storage unit portions are portions of two different storage unit devices.

### Claim 46 (depends on 41)

The non-transitory computer-readable storage medium of claim 41, the particular set of storage unit portions includes a particular storage unit portion not included in the different set of storage unit portions.

### Claim 47 (depends on 41)

The non-transitory computer-readable storage medium of claim 41, the different set of storage unit portions include each storage unit portion in the particular set of storage unit portions in addition to one or more additional storage unit portions.

### Claim 48 (depends on 41)

The non-transitory computer-readable storage medium of claim 41, wherein the sequences of instructions which when executed by the one or more processors cause the one or more processors to further perform:
concurrently applying two different types of transformations to one or more data portions.

### Claim 49 (depends on 41)

The non-transitory computer-readable storage medium of claim 41, wherein the sequences of instructions which when executed by the one or more processors cause the one or more processors to further perform:
wherein the particular data comprises a first data portion stored at a first object belonging to a logical extent and a second data portion stored at a second object belonging to the same logical extent;
in a single input or output operation, concurrently transforming both the first data portion and the second data portion, wherein concurrently transforming both the first data portion and the second data portion comprises:
applying a first type of transformation to the first data portion;
storing a transformed version of the first data portion at a first new object different than the first object;
applying a second type of transformation different than the first type of transformation to the second data portion;
storing a transformed version of the second data portion at a second new object different than the second object;
updating a mapping corresponding to the logical extent to indicate that the first new object and second new object belong to the logical extent.

### Claim 50 (depends on 41)

The non-transitory computer-readable storage medium of claim 41, wherein the sequences of instructions which when executed by the one or more processors cause the one or more processors to further perform:
wherein the particular data comprises a first data portion stored at a first storage unit portion belonging to a virtual storage object and a second data portion stored at a second storage unit portion belonging to the same virtual storage object;
in a single input/output operation, concurrently transforming both the first data portion and the second data portion, wherein concurrently transforming both the first data portion and the second data portion comprises:
applying a first type of transformation to the first data portion;
storing a transformed version of the first data portion at a first new storage unit portion different than the first storage unit portion;
applying a second type of transformation different than the first type of transformation to the second data portion;
storing a transformed version of the second data portion at a second new storage unit portion different than the second storage unit portion;
updating a mapping corresponding to the virtual storage object to indicate that the first new storage unit portion and second new storage unit portion belong to the virtual storage object.

### Claim 51

A storage administrator apparatus comprising:
one or more processors;
a data request handler coupled to the one or more processors and configured to receive requests to store or retrieve data;
a memory coupled to the one or more processors and storing data location information identifying, for each data item of a plurality of data items, one or more virtual locations in which the data is stored without identifying any physical locations in which the data is stored.

### Claim 52 (depends on 51)

The storage administrator apparatus of claim 51 wherein the data location information identifies one or more logical extents in which the data is stored.

### Claim 53 (depends on 51)

The storage administrator apparatus of claim 51 wherein the data location information identifies one or more logical blocks in which the data is stored.

### Claim 54 (depends on 51)

The storage administrator apparatus of claim 51 wherein the data location information identifies one or more logical objects in which the data is stored.

### Claim 55

A storage administrator apparatus comprising:
one or more processors;
an instantiator coupled to the one or more processors and configured to instantiate one or more new storage units of a storage system of a virtualized computer system;
location information indicating, for each virtual location of a plurality of virtual locations, one or more physical locations corresponding to the virtual location;
computer memory coupled to the one or more processors and storing one or more sequences of instructions which when executed by the one or more processors cause:
determining that a condition requiring transformation of particular data or movement of particular data to the one or more new physical locations has occurred, wherein the particular data is stored at a particular virtual location;
in response to the determination:
storing data corresponding to the particular data at the one or more new physical locations; and
updating a mapping corresponding to the particular virtual location to indicate that the particular virtual location corresponds to the one or more new physical locations instead of a prior physical location without updating any references to the particular virtual location.

### Claim 56 (depends on 55)

The storage administrator apparatus of claim 55, wherein the sequences of instructions which when executed further cause:
monitoring performance of a plurality of different storage units in a virtual data center;
determining that the condition has occurred based on the monitoring.

### Claim 57 (depends on 55)

The storage administrator apparatus of claim 55, wherein the particular data is stored at a first storage device and wherein storing the data at the one or more new physical locations comprises moving the particular data to a second storage device different from the first storage device.

### Claim 58 (depends on 55)

The storage administrator apparatus of claim 55, wherein determining that the condition has occurred comprises receiving a request for a different service level from a client computer.

### Claim 59 (depends on 55)

The storage administrator apparatus of claim 55, wherein the sequences of instructions which when executed further cause:
wherein the particular data is stored at a particular logical extent;
in response to the determination:
updating one or more of:
extent-object mappings, which prior to the updating indicated that a particular virtual storage object stores information belonging to the particular logical extent, to indicate that a different virtual storage object stores information belonging to the particular logical extent; or
object-storage unit mappings, which prior to the updating indicated that a particular set of storage unit portions belong to the particular virtual storage object, to instead indicate that a different set of storage unit portions belong to the particular virtual storage object.

### Claim 60 (depends on 59)

The storage administrator apparatus of claim 59, wherein determining that the condition has occurred comprises determining that at least a particular storage unit is not performing adequately, and wherein the particular storage unit is included in the particular set of storage unit portions and not included in the different set of storage unit portions.

### Claim 61 (depends on 59)

The storage administrator apparatus of claim 59 wherein the sequences of instructions which when executed further cause:
in response to the determination, updating object-storage unit mappings, which prior to the updating indicated that the particular set of storage unit portions belong to the particular virtual storage object, to instead indicate that the different set of storage unit portions belong to the particular virtual storage object, wherein the no updates are made to logical extent location information identifying one or more virtual locations of the particular data in response to the determination.

### Claim 62 (depends on 59)

The storage administrator apparatus of claim 59 wherein the sequences of instructions which when executed further cause:
wherein determining that the condition has occurred comprises determining that a service level corresponding to the particular data has changed;
updating the extent-object mappings, which prior to the updating indicated that the particular virtual storage object stores information belonging to the particular logical extent, to instead indicate that the different virtual storage object stores information belonging to the particular logical extent.

### Claim 63 (depends on 59)

The storage administrator apparatus of claim 59, wherein at least two storage unit portions of the different set of storage unit portions are portions of two different storage unit devices.

### Claim 64 (depends on 59)

The storage administrator apparatus of claim 59, wherein the particular set of storage unit portions includes a particular storage unit portion not included in the different set of storage unit portions.

### Claim 65 (depends on 59)

The storage administrator apparatus of claim 59, wherein the different set of storage unit portions include each storage unit portion in the particular set of storage unit portions in addition to one or more additional storage unit portions.

### Claim 66 (depends on 59)

The storage administrator apparatus of claim 59, concurrently applying two different types of transformations to one or more data portions.

### Claim 67 (depends on 59)

The storage administrator apparatus of claim 59, wherein the particular data comprises a first data portion stored at a first object belonging to a logical extent and a second data portion stored at a second object belonging to the same logical extent;
wherein the sequences of instructions which when executed further cause:
in a single input/output operation, concurrently transforming both the first data portion and the second data portion, wherein concurrently transforming both the first data portion and the second data portion comprises:
applying a first type of transformation to the first data portion;
storing a transformed version of the first data portion at a first new object different than the first object;
applying a second type of transformation different than the first type of transformation to the second data portion;
storing a transformed version of the second data portion at a second new object different than the second object;
updating a mapping corresponding to the logical extent to indicate that the first new object and second new object belong to the logical extent.

### Claim 68 (depends on 59)

The storage administrator apparatus of claim 59 wherein the particular data comprises a first data portion stored at a first storage unit portion belonging to a virtual storage object and a second data portion stored at a second storage unit portion belonging to the same virtual storage object;
wherein the sequences of instructions which when executed further cause:
in a single input/output operation, concurrently transforming both the first data portion and the second data portion, wherein concurrently transforming both the first data portion and the second data portion comprises:
applying a first type of transformation to the first data portion;
storing a transformed version of the first data portion at a first new storage unit portion different than the first storage unit portion;
applying a second type of transformation different than the first type of transformation to the second data portion;
storing a transformed version of the second data portion at a second new storage unit portion different than the second storage unit portion;
updating a mapping corresponding to the virtual storage object to indicate that the first new storage unit portion and second new storage unit portion belong to the virtual storage object.

### Claim 69

A storage administrator apparatus comprising:
one or more processors;
a storage unit portion instantiator coupled to the one or more processors and configured to instantiate new storage unit portions;
computer memory coupled to the one or more processors and storing data location records indicating, for each virtual storage object of a plurality of virtual storage objects, one or more storage unit portions that belong to the virtual storage object including an indication that a first storage unit portion belongs to a particular virtual storage object;
wherein the computer memory comprises one or more sequences of instructions which when executed by the one or more processors causes:
requesting a new storage unit portion;
transferring data stored on the first storage unit portion to the new storage unit portion;
updating the data location records to indicate that the particular virtual storage object includes the new storage unit portion instead of the first storage unit portion without modifying any virtual location references to the particular virtual storage object.

### Claim 70 (depends on 69)

The storage administrator apparatus of claim 69, wherein the sequences of instructions which when executed further cause:
wherein one or more storage unit portions belong to the virtual storage object;
determining that a current distribution of the particular virtual storage object across the one or more storage unit portions is incompatible with an availability or performance objective;
in response to the determination, requesting the new storage unit portion and transferring the data.

### Claim 71 (depends on 69)

The storage administrator apparatus of claim 69, wherein the sequences of instructions which when executed further cause:
determining that the first storage unit portion and a second storage unit portion are both portions of the same storage unit, wherein the first storage unit portion and the second unit portion both belong to the particular virtual storage object;
in response to the determination, requesting the new storage unit portion and transferring the data.
