IP Library Granted Patent US 8,769,227
Granted Patent B2
US 8,769,227 · App. 13/754,299 · Granted Jul 1, 2014

Storage controller and data management method

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,769,227
App. No.
13/754,299
Granted
Jul 1, 2014
Kind
B2
Abstract

This storage controller providing a volume for storing data transmitted from a host system includes a management unit for managing the data written in the volume with a first block area, or a second block area in the first block area which is smaller than the first block area; a snapshot acquisition unit for acquiring a snapshot of the volume at a prescribed timing; and a transfer unit for transferring the data of the volume acquired with the snapshot of the snapshot acquisition unit to an external device with the first block area or the second block area.

Claims (52)

1. A storage controller comprising:

a processor configured to:

manage a primary volume, a virtual volume and a snapshot of the primary volume at a certain timing, the primary volume storing data sent from a host system and being paired with a secondary volume in another storage controller, the virtual volume storing differential data of the snapshot to be sent to the another storage controller;

manage the differential data, including a first type data and a second type data in a plurality of data of the snapshot based on an amount of each type of the differential data, the second type data having a size smaller than a size of the first type data; and

control to send the plurality of data of the snapshot to the another storage controller so that the another storage controller stores the plurality of data of the snapshot in the secondary volume.

2. The storage controller according to claim 1 , wherein:

the processor is configured to manage the first type data and the second type data for a block of a plurality of blocks, each of the plurality of blocks has a certain length and is managed by the processor for storing the plurality of data of the snapshot in the primary volume and/or the virtual volume.

3. The storage controller according to claim 2 , wherein:

the processor is configured to control to send the first type data or the second type data for the block of the plurality of blocks for sending the plurality of data of the snapshot to the another storage controller.

4. The storage controller according to claim 1 , wherein:

the processor is configured to control to acquire the snapshot periodically, to manage the first type data and the second type data in the plurality of data of the snapshot acquired periodically, and to control to send the plurality of data of the snapshot acquired periodically to the another storage controller.

5. The storage controller according to claim 2 , wherein:

the processor is configured to manage the first type data for the block and does not manage the second type data for the block, if a total size of a plurality of the second type data of the block is more than a threshold value.

6. A storage system comprising:

a controller configured to:

manage a primary volume, a virtual volume and a snapshot of the primary volume at a certain timing, the primary volume storing data sent from a host system and being paired with a secondary volume in another storage system, the virtual volume storing differential data of the snapshot to be sent to the another storage controller;

manage a plurality of storage devices configured to store data

manage the differential data, including a first type data and a second type data in a plurality of data of the snapshot based on an amount of each type of the differential data, the second type data having a size smaller than a size of the first type data; and

control to send the plurality of data of the snapshot to the another controller so that the another storage system stores the plurality of data of the snapshot in the secondary volume.

7. The storage system according to claim 6 , wherein:

the controller is configured to manage the first type data and the second type data for a block of a plurality of blocks, each of the plurality of blocks has a certain length and is managed by the controller for storing the plurality of data of the snapshot in the primary volume and/or the virtual volume.

8. The storage system according to claim 7 , wherein:

the controller is configured to control to send the first type data or the second type data for the block of the plurality of blocks for sending the plurality of data of the snapshot to the another storage system.

9. The storage system according to claim 6 , wherein:

the controller is configured to control to acquire the snapshot periodically, to manage the first type data and the second type data in the plurality of data of the snapshot acquired periodically, and to control to send the plurality of data of the snapshot acquired periodically to the another storage system.

10. The storage system according to claim 7 , wherein:

the controller is configured to manage the first type data for the block and does not manage the second type data for the block, if a total size of a plurality of the second type data of the block is more than a threshold value.

11. A method of operating a storage controller comprising a processor, the method comprising:

managing, via the processor, a primary volume, a virtual volume and a snapshot of the primary volume at a certain timing, the primary volume storing data sent from a host system and being paired with a secondary volume in another storage controller, the virtual volume storing differential data of the snapshot to be sent to the another storage controller;

managing, via the processor, the differential data, including a first type data and a second type data in a plurality of data of the snapshot based on an amount of each type of the differential data, the second type data having a size smaller than a size of the first type data; and

controlling, via the processor, to send the plurality of data of the snapshot to the another storage controller so that the another storage controller stores the plurality of data of the snapshot in the secondary volume.

12. The method according to claim 11 , further comprising:

managing, via the processor, the first type data and the second type data for a block of a plurality of blocks, each of the plurality of blocks has a certain length and is managed by the processor for storing the plurality of data of the snapshot in the primary volume and/or the virtual volume.

13. The method according to claim 12 , further comprising:

controlling, via the processor, to send the first type data or the second type data for the block of the plurality of blocks for sending the plurality of data of the snapshot to the another storage controller.

14. The method according to claim 11 , further comprising:

controlling, via the processor, to acquire the snapshot periodically, managing the first type data and the second type data in the plurality of data of the snapshot acquired periodically, and controlling to send the plurality of data of the snapshot acquired periodically to the another storage controller.

15. The method according to claim 12 , further comprising:

managing, via the processor, the first type data for the block and not managing the second type data for the block, if a total size of a plurality of the second type data of the block is more than a threshold value.

16. A method of operating a storage system comprising a controller and a plurality of storage devices, the method comprising:

managing, via the controller, a primary volume, a virtual volume and a snapshot of the primary volume at a certain timing, the primary volume storing data sent from a host system and being paired with a secondary volume in another storage system, the virtual volume storing differential data of the snapshot to be sent to the another storage system;

storing data in a plurality of storage devices according to an operation of the controller;

managing, via the controller, the differential data, including a first type data and a second type data in a plurality of data of the snapshot based on an amount of each type of the differential data, the second type data having a size smaller than a size of the first type data; and

controlling, via the controller, to send the plurality of data of the snapshot to the another controller so that the another storage system stores the plurality of data of the snapshot in the secondary volume.

17. The method according to claim 16 , further comprising:

managing, via the controller, the first type data and the second type data for a block of a plurality of blocks, each of the plurality of blocks has a certain length and is managed by the controller for storing the plurality of data of the snapshot in the primary volume and/or the virtual volume.

18. The method according to claim 17 , further comprising:

controlling, via the controller, to send the first type data or the second type data for the block of the plurality of blocks for sending the plurality of data of the snapshot to the another storage system.

19. The method according to claim 16 , further comprising:

controlling, via the controller, to acquire the snapshot periodically, managing the first type data and the second type data in the plurality of data of the snapshot acquired periodically, and controlling to send the plurality of data of the snapshot acquired periodically to the another storage system.

20. The method according to claim 17 , further comprising:

managing, via the controller, the first type data for the block and not managing the second type data for the block, if a total size of a plurality of the second type data of the block is more than a threshold value.

Assignments (1)
COMPANY SPLIT Recorded Aug 20, 2024
From: HITACHI, LTD.
To: HITACHI VANTARA, LTD.
Reel/Frame 069518/0761 →