IP Library Granted Patent US 8,230,189
Granted Patent B1
US 8,230,189 · App. 12/763,698 · Granted Jul 24, 2012

Systems and methods for off-host backups of striped volumes

Assignee: Symantec Corporation
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,230,189
App. No.
12/763,698
Filed
Apr 20, 2010
Granted
Jul 24, 2012
Kind
B1
Art Unit
2186
USPC
711/162
Abstract

A computer-implemented method for off-host backups of striped volumes may include identifying a striped volume of data on which to perform an off-host backup operation. The computer-implemented method may also include identifying a plurality of storage devices underlying the striped volume of data. The computer-implemented method may further include identifying stripe-aware extent metadata for the off-host backup operation. The computer-implemented method may additionally include reading data for the off-host backup operation from the plurality of storage devices in parallel using the stripe-aware extent metadata. Various other methods, systems, and computer-readable media are also disclosed.

Claims (57)

1. A computer-implemented method for off-host backups of striped volumes, at least a portion of the method being performed by a computing device comprising at least one processor, the method comprising:

identifying a striped volume of data on which to perform an off-host backup operation;

identifying a plurality of storage devices underlying the striped volume of data;

identifying stripe-aware extent metadata for the off-host backup operation;

transmitting the stripe-aware extent metadata to an off-host backup system;

reading, at the off-host backup system remote from the striped volume of data, data for the off-host backup operation from the plurality of storage devices in parallel using the stripe-aware extent metadata and without mounting the striped volume.

2. The computer-implemented method of claim 1 , wherein the stripe-aware extent metadata comprises at least one of:

a stripe size;

a number of storage devices in the plurality of storage devices;

a base offset for a striped extent for each storage device in the plurality of storage devices;

a total length of the striped extent;

a number of stripes of the striped extent.

3. The computer-implemented method of claim 1 , wherein reading the data from the plurality of storage devices in parallel comprises allocating a buffer for the data.

4. The computer-implemented method of claim 3 , wherein allocating the buffer comprises allocating a buffer of a size of a stripe multiplied by a number of storage devices in the plurality of storage devices.

5. The computer-implemented method of claim 1 , wherein reading the data from the plurality of storage devices in parallel comprises reading a stripe size of data from each storage device in the plurality of storage devices simultaneously.

6. The computer-implemented method of claim 1 , wherein identifying the stripe-aware extent metadata comprises:

identifying a host system that manages the striped volume of data;

receiving, at the off-host backup system, the stripe-aware extent metadata from the host system.

7. The computer-implemented method of claim 1 , wherein the off-host backup operation comprises a server-free backup in which the data for the off-host backup operation is read directly from the striped volume of data instead of being sent from the striped volume of data to the off-host backup system.

8. The computer-implemented method of claim 1 , wherein:

identifying the stripe-aware extent metadata comprises generating the stripe-aware extent metadata;

generating the stripe-aware extent metadata comprises identifying raw extent metadata for the striped volume of data, identifying a pattern in the raw extent metadata implying striping in the striped volume of data, and generating the stripe-aware extent metadata based on the pattern in the raw extent metadata.

9. The computer-implemented method of claim 1 , wherein:

the off-host backup system lacks the ability to directly read the striped volume of data;

the stripe-aware extent metadata enables the off-host backup system to read raw data from the plurality of storage devices.

10. The computer-implemented method of claim 1 , further comprising writing the data for the off-host backup operation to a backup storage system.

11. A system for off-host backups of striped volumes, the system comprising:

an identification module programmed to:

identify a striped volume of data on which to perform an off-host backup operation;

identify a plurality of storage devices underlying the striped volume of data;

a striping module programmed to identify stripe-aware extent metadata for the off-host backup operation and transmit the stripe-aware extent metadata to an off-host backup system;

a backup module programmed to read, at an off-host backup system remote from the striped volume of data, data for the off-host backup operation from the plurality of storage devices in parallel using the stripe-aware extent metadata and without mounting the striped volume of data;

at least one hardware processor configured to execute the identification module, the striping module, and the backup module.

12. The system of claim 11 , wherein the stripe-aware extent metadata comprises at least one of:

a stripe size;

a number of storage devices in the plurality of storage devices;

a base offset for a striped extent for each storage device in the plurality of storage devices;

a total length of the striped extent;

a number of stripes of the striped extent.

13. The system of claim 11 , wherein the backup module is programmed to read the data from the plurality of storage devices in parallel by allocating a buffer for the data.

14. The system of claim 13 , wherein the backup module is programmed to allocate the buffer by allocating a buffer of a size of a stripe multiplied by a number of storage devices in the plurality of storage devices.

15. The system of claim 11 , wherein the backup module is programmed to read the data from the plurality of storage devices in parallel by reading a stripe size of data from each storage device in the plurality of storage devices simultaneously.

16. The system of claim 11 , wherein the striping module is programmed to identify the stripe-aware extent metadata by:

identifying a host system that manages the striped volume of data;

receiving, at the off-host backup system, the stripe-aware extent metadata from the host system.

17. The system of claim 11 , wherein the striping module is programmed to identify the stripe-aware extent metadata by generating the stripe-aware extent metadata.

18. The system of claim 17 , wherein the striping module is programmed to generate the stripe-aware extent metadata by:

identifying raw extent metadata for the striped volume of data;

identifying a pattern in the raw extent metadata implying striping in the striped volume of data;

generating the stripe-aware extent metadata based on the pattern in the raw extent metadata.

19. The system of claim 11 , wherein the backup module is further programmed to write the data for the off-host backup operation to a backup storage system.

20. A non-transitory computer-readable-storage medium comprising one or more computer-executable instructions that, when executed by at least one processor of a computing device, cause the computing device to:

identify a striped volume of data on which to perform an off-host backup operation;

identify a plurality of storage devices underlying the striped volume of data;

identify stripe-aware extent metadata for the off-host backup operation;

transmit the stripe-aware extent metadata to an off-host backup system;

read, at an off-host backup system remote from the striped volume of data, data for the off-host backup operation from the plurality of storage devices in parallel using the stripe-aware extent metadata and without mounting the striped volume of data.

Assignments (13)
AMENDMENT NO. 1 TO PATENT SECURITY AGREEMENT Recorded Apr 8, 2025
From: VERITAS TECHNOLOGIES LLC; COHESITY, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 070779/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2025
From: VERITAS TECHNOLOGIES LLC
To: COHESITY, INC.
Reel/Frame 070335/0013 →
RELEASE OF SECURITY INTEREST Recorded Dec 16, 2024
From: ACQUIOM AGENCY SERVICES LLC, AS COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC (F/K/A VERITAS US IP HOLDINGS LLC)
Reel/Frame 069712/0090 →
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 069634/0584 →
SECURITY INTEREST Recorded Dec 9, 2024
From: VERITAS TECHNOLOGIES LLC; COHESITY, INC.
To: JPMORGAN CHASE BANK. N.A.
Reel/Frame 069890/0001 →
ASSIGNMENT OF SECURITY INTEREST IN PATENT COLLATERAL Recorded Nov 25, 2024
From: BANK OF AMERICA, N.A., AS ASSIGNOR
To: ACQUIOM AGENCY SERVICES LLC, AS ASSIGNEE
Reel/Frame 069440/0084 →
TERMINATION AND RELEASE OF SECURITY IN PATENTS AT R/F 037891/0726 Recorded Nov 30, 2020
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: VERITAS US IP HOLDINGS, LLC
Reel/Frame 054535/0814 →
SECURITY INTEREST Recorded Aug 20, 2020
From: VERITAS TECHNOLOGIES LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 054370/0134 →
MERGER AND CHANGE OF NAME Recorded Apr 18, 2016
From: VERITAS US IP HOLDINGS LLC; VERITAS TECHNOLOGIES LLC
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 038455/0752 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 037891/0726 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037891/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2016
From: SYMANTEC CORPORATION
To: VERITAS US IP HOLDINGS LLC
Reel/Frame 037697/0412 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 20, 2010
From: NAGARKAR, KULDEEP; KHURANGE, ASHISH GOVIND
To: SYMANTEC CORPORATION
Reel/Frame 024260/0586 →
Continuity (1)
Provisional Application 61314980 · Mar 17, 2010