Fast accessible compressed thin provisioning volume
AssigneeHitachi, Ltd.
InventorTomohiro Kawaguchi
Life of this patent
Estimating the term…
Abstract
A computerized data storage system includes at least one storage device including a nonvolatile writable medium; a cache memory and a data management controller and a storage port. The storage port is operable to receive a request to read data, and, in response to the request to read data, to send the data stored in the data storing area of the cache memory. The storage port is further operable to receive a request to write data, and, in response to the request to write data, to send the write data to the data storing area of the cache memory. The storage system further includes a thin provisioning controller operable to provide a virtual volume, and a capacity pool. The storage system further includes a data compression controller and a data decompression controller.
Claims11
A data storage system comprising:
- at least one storage device;
- and
- a controller, comprising a cache memory and configured to manage a capacity pool comprising a plurality of storage regions and provide a plurality of virtual volumes having a plurality of virtual areas,
- wherein one or more of the plurality of the storage regions are allocated to each of a plurality of first virtual areas in a first virtual volume of the plurality of virtual volumes from the capacity pool, wherein a compression function is not enabled for the first virtual volume of the plurality of virtual volumes, the number of the allocated one or more storage regions is a first value, and
- wherein when the compression function is changed from being not enabled to being enabled for the first virtual volume of the plurality of virtual volumes, the controller is further configured to:
- store data read from the allocated one or more storage regions to the cache memory for each of the first virtual areas in the first virtual volume of the plurality of virtual volumes;
- compress the data in the cache memory for each of the first virtual areas in the first virtual volume of the plurality of virtual volumes;
- decide whether to store the data in a compressed form for a particular first virtual area of the first virtual areas in the first virtual volume of the plurality of virtual volumes based on the compression step in the cache memory;
- if the controller decided to store the data in the compressed form for the particular first virtual area, change the number of the allocated one or more storage regions, which are allocated to the particular first virtual area, to be smaller than the first value;
- and
- if the controller decided not to store the data in the compressed form, maintain the number of the allocated one or more storage regions, which are allocated to the particular first virtual area.
A storage system comprising:
- a plurality of storage devices;
- and
- a storage controller configured to manage a storage pool including a plurality of storage regions on the plurality of storage devices, provide a plurality of virtual volumes including a first virtual volume which has a plurality of first virtual areas, wherein a compression function is not enabled for the first virtual volume of the plurality of virtual volumes, and allocate one or more storage regions to each of the first virtual areas in the first virtual volume of the plurality of virtual volumes from the storage pool, the number of the allocated one or more storage regions is a first value, and
- wherein when the compression function is changed from being not enabled to being enabled for the first virtual volume of the plurality of virtual volumes, the controller is further configured to:
- compress data read from the one or more storage regions which are allocated to each of the first virtual areas in the first virtual volume of the plurality of virtual volumes;
- decide whether to store the data in a compressed form based on the compression for each first virtual area in the first virtual volume of the plurality of virtual volumes;
- if the controller decided to store the data in the compressed form for a particular first virtual area of the first virtual areas in the first virtual volume of the plurality of virtual volumes, change the number of the one or more storage regions, which are allocated to the particular first virtual area, to be smaller than the first value;
- and
- if the controller decided not to store the data in the compressed form for the particular first virtual area, maintain the number of the one or more storage regions which are allocated to the particular first virtual area.
A data processing method for a storage controller being coupled to a plurality of storage devices, the data processing method comprising:
- providing a plurality of virtual volumes including a first virtual volume associated with a storage pool provided by the plurality of storage devices and having a plurality of storage regions, wherein a compression function is not enabled for the first virtual volume of the plurality of virtual volumes;
- allocating one or more of the plurality of the storage regions to each of a plurality of first virtual areas in the first virtual volume of the plurality of virtual volumes from the storage pool, the number of the allocated one or more storage regions is a first value;
- upon receiving a request to change the compression function from being not enabled to being enabled for the first virtual volume of the plurality of virtual volumes, further performing the steps of:
- compressing the data read from the allocated one or more storage regions which are allocated to each of the first virtual areas in the first virtual volume of the plurality of virtual volumes;
- deciding whether to store the data in a compressed form based on the compression of the data read from the allocated one or more storage regions for each first virtual area in the first virtual volume of the plurality of virtual volumes;
- if the controller decided to store the data in the compressed form for a particular first virtual area of the first virtual areas in the first virtual volume of the plurality of virtual volumes, changing the number of the allocated one or more storage regions, which are allocated to the particular first virtual area, to be smaller than the first value;
- and
- if the controller decided not to store the data in the compressed form for the particular first virtual area, maintaining the number of the allocated one or more storage regions which are allocated to the particular first virtual area.
Dependencies are inferred from the claim text.