# US 7,467,257 B1 · Identification of storage to acquire to maintain the intent of logical volumes

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

- Number: US 7,467,257 B1
- Document ID: US7467257B1
- Status: Granted
- Kind: B1
- Application number: 10/812,322
- Filed: 2004-03-29
- Granted: 2008-12-16
- Earliest claimed: 2004-03-29
- Assignees: Symantec Operating Corporation
- Inventors: Chirag Deepak Dalal; Vaijayanti Rakshit Bharadwaj
- Web page: https://patentgrep.com/patent/US7467257B1

## CPC

- G06F 3/0665: {at area level, e.g. provisioning of virtual or logical volumes}
- G06F 3/0607: {by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device}
- G06F 3/0631: {by allocating resources to storage systems}
- G06F 3/067: {Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A method, system, computer system, and computer program product to specify the particular characteristics of hardware to acquire to enable a logical volume to be maintained in accordance with the purpose for which the logical volume was created. In response to a command to perform an operation on a logical volume, existing storage that can be used to perform the operation is identified. If the existing storage is insufficient to perform the operation, a specification is developed for the additional storage to acquire to enable the operation to be performed successfully. Connectivity of the additional storage is also specified to storage objects in the existing logical volume so that the newly-acquired resources can be used for their intended purpose when acquired.

## Claims

### Claim 1

A method comprising:
determining a first specification for a first set of needed storage regions, wherein
the determining is performed in response to receiving a request to perform an operation on a logical volume, wherein the logical volume is created before the request to perform an operation is received,
the first specification is based on an intent for the logical volume and the operation,
the first set of needed storage regions is needed to perform the operation on the logical volume, and
the first set of needed storage regions satisfies the intent of the logical volume, wherein the intent comprises an intended configuration for implementing the logical volume, and a rule is a portion of the intent associated with the logical volume;
searching a plurality of existing storage regions for a corresponding existing storage region for each needed storage region in the first set of needed storage regions; and
if no existing storage region is found corresponding to a first needed storage region in the first set of needed storage regions, determining a second specification for a second set of storage regions to be acquired, wherein
the second set of storage regions is needed to perform the operation on the logical volume.

### Claim 2 (depends on 1)

The method of claim 1 wherein the second set of storage regions to be acquired comprises at least the first needed storage region.

### Claim 3 (depends on 2)

The method of claim 2 wherein the second specification for the second set of storage regions to be acquired comprises an attribute of the first needed storage region, and a connection between the first needed storage region and a storage object in the logical volume.

### Claim 4 (depends on 1)

The method of claim 1 further comprising:
using the second specification to acquire a third set of storage regions.

### Claim 5 (depends on 4)

The method of claim 4 wherein
the third set of storage regions is a subset of the second set of storage regions.

### Claim 6 (depends on 1)

The method of claim 1 further comprising:
acquiring the second set of storage regions; and
performing the operation on the logical volume using the second set of storage regions to be acquired.

### Claim 7 (depends on 1)

The method of claim 1 wherein the second set of storage regions to be acquired satisfies the intent of the logical volume.

### Claim 8 (depends on 1)

The method of claim 1 further comprising:
determining a third specification, wherein the determining the third specification comprises specifying an existing storage region of the plurality of existing storage regions to reserve for performing the operation.

### Claim 9 (depends on 1)

The method of claim 1 wherein the second set of storage regions to be acquired excludes a second needed storage region for which an existing storage region of the plurality of existing storage regions is found.

### Claim 10 (depends on 1)

The method of claim 1 wherein
the operation comprises increasing a size of the logical volume.

### Claim 11 (depends on 1)

The method of claim 1 wherein
the operation comprises evacuating data from the logical volume.

### Claim 12 (depends on 1)

The method of claim 1 wherein
the operation comprises relocating data of the logical volume.

### Claim 13

A system comprising:
first determining means for determining a first specification for a first set of needed storage regions, wherein
the determining is performed in response to receiving a request to perform an operation on a logical volume, wherein the logical volume is created before the request to perform an operation is received,
the first specification is based on an intent for the logical volume and the operation,
the first set of needed storage regions is needed to perform the operation on the logical volume, and
the first set of needed storage regions satisfies the intent of the logical volume, wherein the intent comprises an intended configuration for implementing the logical volume, and a rule is a portion of the intent associated with the logical volume,
searching means for searching a plurality of existing storage regions for a corresponding existing storage region for each needed storage region in the first set of needed storage regions, and
second determining means for determining a second specification for a second set of storage regions to be acquired if no existing storage region is found corresponding to a first needed storage region in the first set of needed storage regions, wherein
the second set of storage regions is needed to perform the operation on the logical volume; and
a processor, coupled to control and configured to perform the functions of the first determining, searching and second determining means.

### Claim 14 (depends on 13)

The system of claim 13 further comprising:
using means for using the second specification to acquire a third set of storage regions.

### Claim 15 (depends on 14)

The system of claim 14 wherein the third set of storage regions is a subset of the second set of storage regions to be acquired.

### Claim 16 (depends on 13)

The system of claim 13 further comprising:
acquiring means for acquiring the second set of storage regions to be acquired; and
performing means for performing the operation on the logical volume using the second set of storage regions to be acquired.

### Claim 17 (depends on 13)

The system of claim 13 further comprising:
third determining means for determining a third specification, wherein the determining the third specification comprises specifying an existing storage region of the plurality of existing storage regions to reserve for performing the operation.

### Claim 18

A system comprising:
a first determining module configured to determine a first specification for a first set of needed storage regions, wherein
the determining is performed in response to receiving a request to perform an operation on a logical volume, wherein the logical volume is created before the request to perform an operation is received,
the first specification is based on an intent for the logical volume and the operation,
the first set of needed storage regions is needed to perform the operation on the logical volume, and
the first set of needed storage regions satisfies the intent of the logical volume, wherein the intent comprises an intended configuration for implementing the logical volume, and a rule is a portion of the intent associated with the logical volume,
a searching module configured to search a plurality of existing storage regions for a corresponding existing storage region for each needed storage region in the first set of storage regions, and
a second determining module configured to determine a second specification for a second set of storage regions to be acquired if no existing storage region is found corresponding to a first needed storage region in the first set of needed storage regions, wherein
the second set of storage regions is needed to perform the operation on the logical volume; and
a processor, coupled to control and configured to perform the functions of the stored modules.

### Claim 19 (depends on 18)

The system of claim 18 wherein the second set of storage regions to be acquired comprises at least the first needed storage region.

### Claim 20 (depends on 18)

The system of claim 18 wherein the second specification for the second set of storage regions to be acquired comprises
an attribute of the first needed storage region, and
a connection between the first needed storage region and a storage object in the logical volume.

### Claim 21 (depends on 18)

The system of claim 18 further comprising:
an acquiring module configured to acquire the second set of storage regions to be acquired; and
a performing module configured to perform the operation on the logical volume using the second set of storage regions to be acquired.

### Claim 22 (depends on 18)

The system of claim 18 further comprising:
a third determining module configured to determine a third specification, wherein the determining the third specification comprises specifying an existing storage region of the plurality of existing storage regions to reserve for performing the operation.

### Claim 23

A computer-readable storage medium, wherein the storage medium is not a signal, comprising:
first determining instructions configured to determine a first specification for a first set of needed storage regions, wherein
the determining is performed in response to receiving a request to perform an operation on a logical volumes wherein the logical volume is created before the request to perform an operation is received,
the first specification is based on an intent for the logical volume and the operation,
the first set of needed storage regions is needed to perform the operation on the logical volume, and
the first set of needed storage regions satisfies the intent of the logical volume, wherein the intent comprises an intended configuration for implementing the logical volume, and a rule is a portion of the intent associated with the logical volume;
searching instructions configured to search a plurality of existing storage regions for a corresponding existing storage region for each needed storage region in the first set of needed storage regions; and
second determining instructions configured to determine a second specification for a second set of storage regions to be acquired if no existing storage region is found corresponding to a first needed storage region in the first set of needed storage regions, wherein
the second set of storage regions is needed to perform the operation on the logical volume.

### Claim 24 (depends on 23)

The computer-readable storage medium of claim 23 wherein the second set of storage regions to be acquired comprises at least the first needed storage region.

### Claim 25 (depends on 23)

The computer-readable storage medium of claim 23 wherein the second specification for the second set of storage regions to be acquired comprises
an attribute of the first needed storage region, and
a connection between the first needed storage region and a storage object in the logical volume.

### Claim 26 (depends on 23)

The computer-readable storage medium of claim 23 further comprising:
acquiring instructions configured to acquire the second set of storage regions to be acquired; and
performing instructions configured to perform the operation on the logical volume using the second set of storage regions to be acquired.

### Claim 27 (depends on 23)

The computer-readable storage medium of claim 23 further comprising:
third determining instructions configured to determine a third specification, wherein the determining the third specification comprises specifying an existing storage region of the plurality of existing storage regions to reserve for performing the operation.
