IP Library Granted Patent US 8,407,436
Granted Patent B2
US 8,407,436 · App. 12/369,363 · Granted Mar 26, 2013

Methods and apparatus for migrating thin provisioning volumes between storage systems

Inventor: Hiroshi Arakawa (Sunnyvale, CA)
Assignee: Hitachi, Ltd.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,407,436
App. No.
12/369,363
Granted
Mar 26, 2013
Kind
B2
Abstract

Multiple storage systems have capability to provide thin provisioning volumes to host computers and capability to transfer (import/export) management information regarding thin provisioning between storage systems. Moreover, at least one of the storage systems posses capability to provide storage area of other storage system as own storage area virtually via connection to the other storage system (i.e. external storage). Target storage system achieves efficient migration and unifying storage resource pool by importing or referring the management information obtained from source storage system and by utilizing the source storage system as external storage. One implementation involves method and process for migration of thin provisioning volumes using chunks having same length between source storage system and destination storage system. In this implementation, storage resource pool is unified by importing management information from the source storage system, and automated page-based relocation is performed to adjust actual location of data.

Claims (50)

1. A thin provisioning storage system comprising:

a plurality of data storage units, the plurality of data storage units being divided into a plurality of chunks forming a chunk pool;

at least one network interface configured to connect the storage system with a source thin provisioning storage system and at least one host computer; and

a storage controller controlling the plurality of data storage units to store data via a cache, comprising a central processing unit, the cache, and a memory, the storage controller configured to:

import source mapping information and source pool information from the source thin provisioning storage system, the source mapping information being indicative of a correspondence of allocated chunks to a source data storage volume in the source thin provisioning storage system, the source pool information being indicative of allocation of chunks from a source chunk pool of the source thin provisioning storage system;

use the source mapping information and the source pool information to provision a target data storage volume and to update a mapping information and a pool information stored in the memory;

make the provisioned target data storage volume available to the at least one host computer via the at least one network interface, wherein the source thin provisioning storage system and the thin provisioning storage system are connected to each other by the at least one network interface, and wherein the import of the source mapping information and the source pool information is conducted through the at least one network interface, and wherein the storage controller includes information on whether data is located internally or externally;

wherein upon receiving a write access, the storage controller updates the mapping information according to an allocation of the write access; and

wherein the storage controller is further configured to:

relocate data in the source data storage volume of the source thin provisioning storage system to the provisioned target data storage volume;

update the mapping information to reflect the relocation of the data, wherein the relocation is performed according to access rate against each chunk;

unify at least one internal chunk pool and at least one external chunk pool based on the import of the source mapping information and the source pool information, and to allocate one of the at least one internal chunk pool to data associated with a first access rate and to allocate one of the at least one external chunk pool to data associated with a second access rate, where the first access rate is larger than the second access rate; and

wherein the source thin provisioning storage system includes a storage controller for creating the source mapping information and the source pool information.

2. The thin provisioning storage system of claim 1 , wherein a size of the provisioned target data storage volume is same as a second size of the source data storage volume.

3. The thin provisioning storage system of claim 1 , wherein upon receipt of the write access, the storage controller is further configured to:

i. provision a third data storage volume and to make the data storage volume available to the at least one host computer via the at least one network interface;

ii. upon receipt of a write command directed to the third data storage volume from the at least one host computer, allocate at least one chunk from the chunk pool to the third data storage volume and store the data associated with the write command in the allocated at least one chunk; and

iii. update the mapping information to indicate correspondence of the allocated chunk to the third data storage volume.

4. The thin provisioning storage system of claim 1 , wherein the chunk length of the plurality of chunks is identical to a source chunk length of a source plurality of chunks of the source thin provisioning storage system and wherein the storage controller is further configured to perform automated page-based relocation of data stored in the source data storage volume to the target data storage volume.

5. The thin provisioning storage system of claim 1 , wherein the chunk length of the plurality of chunks is different from a source chunk length of a source plurality of chunks of the source thin provisioning storage system and wherein the storage controller is configured to migrate data in the source data storage volume of the source thin provisioning storage system to the provisioned target data storage volume using the source mapping information.

6. The thin provisioning storage system of claim 1 , wherein the storage controller is further configured to perform detection of zero data in the source data storage volume and eliminate copying of the detected zero data.

7. The thin provisioning storage system of claim 1 , wherein the storage controller is configured to perform the relocation of the data by segment.

8. The thin provisioning storage system of claim 1 , wherein the storage controller is further configured to allow write access to the data storage volume during the relocation of the data.

9. The thin provisioning storage system of claim 1 , wherein the at least one network interface is operable to connect the thin provisioning storage system to a management computer and wherein importing the source mapping information is performed upon receipt of an instruction from the management computer.

10. The thin provisioning storage system of claim 1 , wherein the storage controller is further configured to, upon receipt of write access to a segment, read data from at least one corresponding chunk in the source thin provisioning storage system when a chunk of the thin provisioning storage system has not been assigned to the segment.

11. The thin provisioning storage system of claim 1 , wherein the storage controller is further configured to, upon receipt of read access to a segment, transfer data from at least one corresponding chunk in the source thin provisioning storage system to the host computer when a chunk of the thin provisioning storage system has not been assigned to the segment.

12. The thin provisioning system of claim 1 , wherein the storage controller is further configured to:

refer to the source mapping information and the source pool information to determine one or more chunks corresponding to a segment in the source data storage volume of the source storage system;

read data from the one or more chunks corresponding to the segment in the source data storage volume;

allocate one or more chunks from the plurality of chunks to the target data storage volume; and

store the data in the allocated one or more chunks according to the correspondence of the source mapping information.

13. A thin provisioning storage system comprising:

a plurality of data storage units, the plurality of data storage units being divided into a plurality of chunks forming a chunk pool;

at least one network interface configured to connect the storage system with a source thin provisioning storage system and at least one host computer; and

a storage controller controlling the plurality of data storage units to store data via a cache, comprising a central processing unit, the cache, and a memory, the storage controller configured to:

import source mapping information and source pool information from the source thin provisioning storage system, the source mapping information being indicative of a correspondence of allocated chunks to a source data storage volume in the source thin provisioning storage system, the source pool information being indicative of allocation of chunks from a source chunk pool of the source thin provisioning storage system;

use the source mapping information and the source pool information to provision a target data storage volume available as external storage to the at least one host computer via the at least one network interface,

upon receipt of a write command from the at least one host computer after the import from the source thin provisioning storage system, allocate at least one chunk from the chunk pool to storage volumes in the thin provisioning storage system and store the data associated with the write command in the allocated at least one chunk, the chunk pool used for allocating includes both said plurality of data storage units and a plurality of data storage units of the source thin provisioning storage system;

wherein the source thin provisioning storage system and the thin provisioning system are connected to each other by the at least one network interface, and wherein the import of the source mapping information and the source pool information is conducted through the at least one network interface;

wherein upon receiving a write access, the storage controller updates the mapping information according to an allocation of the write access; and

wherein the storage controller is further configured to:

relocate data in the source data storage volume of the source thin provisioning storage system to the provisioned target data storage volume;

update the mapping information to reflect the relocation of the data, wherein the relocation is performed according to access rate against each chunk;

unify at least one internal chunk pool and at least one external chunk pool based on the import of the source mapping information and the source pool information, and to allocate one of the at least one internal chunk pool to data associated with a first access rate and to allocate one of the at least one external chunk pool to data associated with a second access rate, where the first access rate is larger than the second access rate; and

wherein the source thin provisioning storage system includes a storage controller for creating the source mapping information and the source pool information.

14. The thin provisioning storage system of claim 13 , wherein the at least one network interface is operable to connect the thin provisioning storage system to a management computer and wherein importing the source mapping information is performed upon receipt of an instruction from the management computer.

15. The thin provisioning storage system of claim 13 , wherein upon receipt of the write access, the storage controller is further configured to:

i. provision a third data storage volume and to make the data storage volume available to the at least one host computer via the at least one network interface;

ii. upon receipt of a write command directed to the third data storage volume from the at least one host computer, allocate at least one chunk from the chunk pool to the third data storage volume and store the data associated with the write command in the allocated at least one chunk; and

iii. update a mapping information to indicate correspondence of the allocated chunk to the third data storage volume.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 11, 2009
From: ARAKAWA, HIROSHI
To: HITACHI, LTD.
Reel/Frame 022243/0552 →
Continuity (1)
Related Publication 20100205390A1 · Aug 12, 2010