IP Library Granted Patent US 7,478,275
Granted Patent B1
US 7,478,275 · App. 10/812,139 · Granted Jan 13, 2009

Method and apparatus for performing backup storage of checkpoint data within a server cluster

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,478,275
App. No.
10/812,139
Granted
Jan 13, 2009
Kind
B1
Abstract

A method and apparatus for storing, in a fault tolerant manner, checkpoint data in backup servers. To facilitate fault tolerance, the checkpoint data produced by a production server is distributed to a plurality of backup servers. In one embodiment, the method subsegments each segment of checkpoint data, produces parity data for parity groups of the subsegmented checkpoint data, and stripes the subsegments and the parity data across a number of backup servers within a server cluster.

Claims (53)

1. A method for providing fault tolerant checkpoint data within a server cluster comprising a production server and a plurality of backup servers, the method comprising:

accessing checkpoint data within the production server;

distributing the checkpoint data;

storing the distributed checkpoint data on the plurality of backup servers accessing the distributed checkpoint data;

reassembling the checkpoint data using the distributed checkpoint data; and

using the checkpoint data to initiate execution of software.

2. The method of claim 1 , wherein the distributing step comprises:

creating a redundancy group of checkpoint data; and

storing the redundancy group of checkpoint data upon the plurality of backup servers.

3. The method of claim 2 , wherein creating the redundancy group comprises:

subsegmenting the checkpoint data; and

forming groups of subsegments.

4. The method of claim 3 , wherein the storing step comprises:

striping the subsegments across a plurality of backup servers.

5. The method of claim 2 , further comprising:

creating parity data for each group.

6. The method of claim 5 , wherein the storing step comprises:

striping the subsegments and parity data across a plurality of backup servers.

7. The method of claim 1 , wherein the storing step comprises:

mirroring the checkpoint data onto the plurality of backup servers.

8. A system for providing fault tolerant checkpoint data comprising:

a production server for generating checkpoint data;

means for forming distributed checkpoint data comprising subsegments of the checkpoint data;

a plurality of backup servers for storing the distributed checkpoint data, where each of the backup servers in said plurality of backup servers:(i) stores at least one subsegment of the subsegments of the checkpoint data, (ii) accesses the distributed checkpoint data, (iii) reassembles the checkpoint data using the distributed checkpoint data, and (iv) uses the checkpoint data to initiate execution of software.

9. The system of claim 8 , wherein the means for forming the distributed checkpoint data is located within the production server.

10. The system of claim 8 , wherein the means for forming the distributed checkpoint data is located within a backup server within the plurality of backup servers.

11. The system of claim 8 , wherein the means for forming the distributed checkpoint data is located within a computer that is separate from the production server or the plurality of backup servers.

12. The system of claim 8 , wherein the means for forming the distributed checkpoint data further comprises:

means for striping the at least one subsegment onto the plurality of backup servers.

13. An apparatus for generating fault tolerant checkpoint data, the apparatus comprising:

a first server that accesses checkpoint data, segments the checkpoint data, and supplies the segments of checkpoint data to a plurality of second servers, wherein the first server produces parity data for the segments of checkpoint data and supplies the parity data to the plurality of second servers.

14. The apparatus of claim 13 wherein the segments of check point data are supplied to the plurality of second servers in a striped manner.

15. A method of generating fault tolerant checkpoint data, the method comprising:

accessing checkpoint data that is produced by a first server;

the forming distributed checkpoint data having at least one segment of checkpoint data; and

supplying the distributed checkpoint data to a plurality of second servers

accessing the distributed checkpoint data;

reassembling the checkpoint data using the distributed checkpoint data; and

using the checkpoint data to initiate execution of software.

16. The method of claim 15 , further comprising:

generating parity data for the at least one segment of checkpoint data; and

supplying the parity data to the plurality of second servers.

17. The method of claim 15 , further comprising: supplying the at least one segment of checkpoint data to the plurality of second servers in a striped manner.

18. A method for providing fault tolerant checkpoint data within a server cluster comprising a production server and a plurality of backup servers, the method comprising:

accessing checkpoint data within the production server;

distributing the checkpoint data, wherein distributing the checkpoint data comprises:

creating a redundancy group of checkpoint data, wherein creating the redundancy group comprises:

subsegmenting the checkpoint data; and

forming groups of subsegments; and

storing the redundancy group of checkpoint data upon the plurality of backup servers;

creating parity data for each group of the groups of subsegments; and

storing the distributed checkpoint data on the plurality of backup servers, wherein storing the distributed checkpoint data comprises: striping the subsegments and parity data across a plurality of backup servers.

19. The method of claim 18 , wherein storing the distributed checkpoint data comprises: mirroring the checkpoint data onto the plurality of backup servers.

Assignments (14)
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 →
CHANGE OF NAME Recorded Sep 21, 2007
From: VERTITAS OPERATING CORPORATION
To: SYMANTEC OPERATING CORPORATION
Reel/Frame 019866/0544 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 29, 2004
From: DEOLASEE, PAVAN; SHAH, VEERAL
To: VERTIAS OPERATING CORPORATION
Reel/Frame 015163/0534 →