IP Library Granted Patent US 7,640,410
Granted Patent B2
US 7,640,410 · App. 11/491,555 · Granted Dec 29, 2009

Instant copy of data through pointers interchanging

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 7,640,410
App. No.
11/491,555
Granted
Dec 29, 2009
Kind
B2
Abstract

A system and method are described to improve the efficiency of copy-on-write operations in a storage system. A partition mapping table is maintained in a cache memory, where the partition mapping table is used to translate logical partitions into physical partitions. A request is received to write one or more blocks BB to a partition PSS, and, upon receiving the request, the pointers in the partition mapping table are interchanged such that data associated with PSS is now associated with a second partition PTT. Next, block(s) BB is written to PSS and an indication is made on the PDSS descriptor that all other data blocks in the partition PSS are invalid.

Claims (32)

1. A method for creating an instant copy of data in a storage system, comprising the steps of:

maintaining, in a memory module, a partition mapping table for one or more storage units;

maintaining, in said memory module, a first descriptor associated with a first partition and a second descriptor associated with a second partition;

maintaining in said first descriptor a first array of fields representative of physical addresses of data blocks associated with said first partition;

maintaining in said second descriptor a second array of fields representative of physical address of data blocks associated with said second partition;

receiving a request to write one or more given data blocks to said first partition;

interchanging pointers in said partition mapping table to associate a first set of data blocks associated with said first partition with said second partition; and

simultaneously writing said one or more given data blocks to said first partition and reading a second set of data blocks associated with said second partition to said first partition such that said second set of data blocks is associated with said first partition except for said one or more given data blocks written to said first partition.

2. The method of claim 1 , and comprising including a cache associated with said storage system in said memory module.

3. The method of claim 1 , and comprising including a controller for said one or more storage units in said memory module.

4. The method of claim 1 , and comprising implementing said storage system as a storage area network (SAN).

5. The method of claim 1 , and comprising implementing said storage system as a network attached storage (NAS) system.

6. The method of claim 1 , where said instant copy is from a source logical unit to a target logical unit, and wherein said first partition is associated with said source logical unit and said second partition is associated with said target logical unit.

7. The method of claim 1 , wherein said instant copy is from a source logical unit to a target logical unit, and wherein said first partition is associated with said target logical unit and said second partition is associated with said source logical unit.

8. A computer-readable medium comprising instructions that, when executed by a processor, cause the processor to perform a method for creating an instant copy of data in a storage system comprising the steps of:

maintaining, in a memory module, a partition mapping table for a first partition and a second partition;

receiving a request to write one or more given data blocks to said first partition;

interchanging pointers in said partition mapping table to associate a first set of data blocks associated with said first partition with said second partition; and

simultaneously writing said one or more given data blocks to said first partition and reading a second set of data blocks associated with said second partition to said first partition such that said second set of data blocks is associated with said first partition except for said one or more given data blocks written to said first partition.

9. The computer-readable medium of claim 8 , further comprising instructions that cause the processor to perform the step of implementing said storage system as a storage area network (SAN).

10. The computer-readable medium of claim 8 , further comprising instructions that cause the processor to perform the step of implementing said storage system as a network attached storage (NAS) system.

11. The computer-readable medium of claim 8 , where said instant copy is from a source logical unit to a target logical unit, and wherein said first partition is associated with said source logical unit and said second partition is associated with said target logical unit.

12. The computer-readable medium of claim 8 , wherein said instant copy is from a source logical unit to a target logical unit, and wherein said first partition is associated with said target logical unit and said second partition is associated with said source logical unit.

13. A system for creating an instant copy of data in a storage system, comprising:

means for maintaining a partition mapping table for a first partition and a second partition;

means for receiving a request to write one or more given data blocks to said first partition;

means for interchanging pointers in said partition mapping table to associate a first set of data blocks associated with said first partition with said second partition; and

means for simultaneously writing said one or more given data blocks to said first partition and reading a second set of data blocks associated with said second partition to said first partition such that said second set of data blocks is associated with said first partition except for said one or more given data blocks written to said first partition.

14. The system of claim 13 , further comprising means for implementing said storage system as a storage area network (SAN).

15. The system of claim 13 , further comprising means for implementing said storage system as a network attached storage (NAS) system.

16. The system of claim 13 , where said instant copy is from a source logical unit to a target logical unit, and wherein said first partition is associated with said source logical unit and said second partition is associated with said target logical unit.

17. The system of claim 13 , wherein said instant copy is from a source logical unit to a target logical unit, and wherein said first partition is associated with said target logical unit and said second partition is associated with said source logical unit.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 27, 2009
From: XIV LTD.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 022159/0949 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 8, 2006
From: ZOHAR, OFIR; HELMAN, HAIM; COHEN, DROR; SCHWARTZ, SHEMER; REVAH, YARON; ZEIDNER, EFRI
To: XIV LIMITED
Reel/Frame 018222/0463 →