IP Library Granted Patent US 7,584,341
Granted Patent B2
US 7,584,341 · App. 11/544,213 · Granted Sep 1, 2009

Method for defragmenting of virtual volumes in a storage area network (SAN)

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,584,341
App. No.
11/544,213
Granted
Sep 1, 2009
Kind
B2
Abstract

A defragmentation method and system to overcome fragmentation of virtual volumes in storage area networks (SANs). The method includes combining and migrating fragments of data spread over multiple storage areas in order to increase storage space utilization and optimize access time to storage. By defragmenting virtual volumes both performance and storage utilization is significantly improved.

Claims (60)

1. A method for storage optimization by de-fragmenting virtual volumes of a storage area network (SAN), comprising the steps of:

collecting statistics regarding a performance of each of a plurality of virtual volumes;

determining which of the plurality of virtual volumes in the SAN to optimize;

assessing a de-fragment policy for the virtual volume to be optimized by:

determining, using a mapping table, data fragments in each logical unit to be migrated;

determining, using the mapping table, data fragments in each LU in the virtual volume to be combined; and

determining, using the mapping table data fragments in each LU in the virtual volume that cannot be altered;

determining for each virtual volume to be optimized, a new target location for one or more logical units in the virtual volume; and

transferring data blocks of the one or more logical units to the new target location.

2. The method of claim 1 , wherein the step of collecting statistics comprises a step of: determining at least one of: a number of input/output operations per second for the virtual volume; fragments in the virtual volume; a number of routers and switches in the path between each host and each physical storage device; and a class of storage of the virtual volume.

3. The method of claim 2 , wherein the determination step is based on at least the class of storage of the virtual volumes.

4. The method of claim 3 , wherein the determination step is performed by comparing the collected statistics to a predetermined baseline value.

5. The method of claim 1 , wherein the virtual volumes to be optimized are virtual volumes that can be de-fragmented.

6. The method of claim 1 , wherein the data fragments are comprised of data blocks belonging to logical units of the respective virtual volumes.

7. The method of claim 1 , wherein the mapping table includes mapping information on virtual volumes and logical units to their respective physical storage devices.

8. The method of claim 1 , wherein determining the new target location for each logical unit in the virtual volume comprises:

computing a physical address of the new location target; and updating the mapping table with the computed physical address.

9. A computer readable storage medium for storing a code executed by a computer, said code enabling data storage optimization by de-fragmenting virtual volumes of a storage area network, and performing the steps of:

collecting statistics regarding to a performance of each of the virtual volumes;

determining which of the virtual volumes in the SAN to optimize;

assessing a de-fragment policy for the virtual volume to be optimized by:

determining, using a mapping table, data fragments in each logical unit to be migrated;

determining, using the mapping table, data fragments in each LU in the virtual volume to be combined; and

determining, using the mapping table data fragments in each LU in the virtual volume that cannot be altered;

determining for each virtual volume to be optimized a new target location for each logical unit in the virtual volume; and

transferring data blocks of the logical unit to the new target location.

10. The computer readable storage medium of claim 9 , wherein collecting the statistics comprises a step of: determining at least one of: a number of input/output (I/O) operations per second for the virtual volume; fragments in the virtual volume; a number of routers and switches in a path between each host and each physical storage device; and a class of storage of the virtual volume.

11. The computer readable storage medium of claim 10 , wherein the determination step is based on at least the class of storage of the virtual volumes.

12. The computer readable storage medium of claim 11 , wherein the determination step is performed by comparing the collected statistics to a predetermined baseline value.

13. The computer readable storage medium of claim 9 , wherein the virtual volumes to be optimized are virtual volumes that can be de-fragmented.

14. The computer readable storage medium of claim 9 , wherein the data fragments are comprised of data blocks belonging to logical units of respective virtual volumes.

15. The computer readable storage medium of claim 9 , wherein the mapping table includes mapping information on virtual volumes and logical units to their respective physical storage devices.

16. The computer readable storage medium of claim 9 , wherein determining the new target location for each logical unit in the virtual volume comprises:

computing a physical address of the new location target; and

updating the mapping table with the computed physical address.

17. A virtualization switch in combination with a storage area network and capable of optimization virtual volumes in the storage area network, the virtualization switch comprising:

software instructions

a memory for maintaining at least a mapping table;

a storage communication means for communicating with a plurality of physical storage devices;

a network communication means for communicating with a plurality of hosts over a network; and

a processor for executing said software instructions adapted to enable the virtualization switch to perform the operations of:

collecting statistics regarding to a performance of each of the virtual volumes;

determining which of the virtual volumes in the storage area network to be optimized;

assessing a de-fragment policy for the virtual volume to be optimized by:

determining, using a mapping table, data fragments in each logical unit to be migrated;

determining, using the mapping table, data fragments in each LU in the virtual volume to be combined; and

determining, using the mapping table data fragments in each LU in the virtual volume that cannot be altered;

determining for each virtual volume to be optimized a new target location for each logical unit logical unit in the virtual volume; and

transferring data blocks of the logical unit to the new target location.

18. The virtualization switch of claim 17 , wherein collecting the statistics comprises a step of determining at least one of: a number of input/output (I/O) operations per second for the virtual volume; fragments in the virtual volume; a number of routers and switches in a path between each host and each physical storage device; and a class of storage of the virtual volume.

19. The virtualization switch of claim 18 , wherein the determination on the virtual volumes to be optimized is based on at least the class of storage of the virtual volumes.

20. The virtualization switch of claim 19 , wherein the determination step is performed by comparing the collected statistics to a predetermined baseline value.

21. The virtualization switch of claim 17 , wherein the virtual volumes to be optimized are virtual volumes that can be de-fragmented.

22. The virtualization switch of claim 17 , wherein the data fragments comprise data blocks belonging to logical units of respective virtual volumes.

23. The virtualization switch of claim 17 , wherein the mapping table includes mapping information on virtual volumes and logical units to their respective physical storage devices.

24. The virtualization switch of claim 17 , wherein determining the new target location for each logical unit in the virtual volume comprises:

computing a physical address of the new location target; and

updating the mapping table with the computed physical address.

25. The virtualization switch of claim 17 , wherein the physical storage device comprises at least one of: a tape drive, a tape library, an optical drive, a disk, redundant array of independent disks (RAID).

26. The virtualization switch of claim 17 , wherein the network comprises at least one of: a local area network (LAN), a wide area network (WAN).

Assignments (8)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 31, 2014
From: OCZ STORAGE SOLUTIONS, INC.
To: OCZ ISRAEL LTD.
Reel/Frame 033437/0791 →
RELEASE OF SECURITY INTEREST BY BANKRUPTCY COURT ORDER (RELEASES REEL/FRAME 030092/0739) Recorded Apr 8, 2014
From: HERCULES TECHNOLOGY GROWTH CAPITAL, INC.
To: OCZ TECHNOLOGY GROUP, INC.
Reel/Frame 032640/0284 →
RELEASE OF SECURITY INTEREST BY BANKRUPTCY COURT ORDER (RELEASES REEL/FRAME 031611/0168) Recorded Apr 8, 2014
From: COLLATERAL AGENTS, LLC
To: OCZ TECHNOLOGY GROUP, INC.
Reel/Frame 032640/0455 →
CORRECTIVE ASSIGNMENT TO CORRECT THE EXECUTION DATE AND ATTACH A CORRECTED ASSIGNMENT DOCUMENT PREVIOUSLY RECORDED ON REEL 032365 FRAME 0920. ASSIGNOR(S) HEREBY CONFIRMS THE THE CORRECT EXECUTION DATE IS JANUARY 21, 2014. Recorded Mar 18, 2014
From: OCZ TECHNOLOGY GROUP, INC.
To: TAEC ACQUISITION CORP.
Reel/Frame 032461/0486 →
CHANGE OF NAME Recorded Feb 27, 2014
From: TAEC ACQUISITION CORP.
To: OCZ STORAGE SOLUTIONS, INC.
Reel/Frame 032365/0945 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 27, 2014
From: OCZ TECHNOLOGY GROUP, INC.
To: TAEC ACQUISITION CORP.
Reel/Frame 032365/0920 →
SECURITY AGREEMENT Recorded Nov 11, 2013
From: OCZ TECHNOLOGY GROUP, INC.
To: COLLATERAL AGENTS, LLC
Reel/Frame 031611/0168 →
MERGER Recorded Jul 2, 2013
From: SANRAD INC.
To: OCZ TECHNOLOGY GROUP, INC.
Reel/Frame 030729/0248 →