IP Library Granted Patent US 7,139,887
Granted Patent B2
US 7,139,887 · App. 10/750,596 · Granted Nov 21, 2006

Coordinated storage management operations in replication environment

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,139,887
App. No.
10/750,596
Filed
Dec 31, 2003
Granted
Nov 21, 2006
Kind
B2
Art Unit
2187
USPC
711/162
Abstract

A method, system, computer system, and computer-readable medium for maintaining up-to-date, consistent copies of primary data without the need to replicate modified data when the data were modified as a result of an operation that is not an application-driven write operation captured during replication. Selected storage management operations are performed on the primary and secondary data stores at points in time when the data are the same to ensure that the data stored within the data stores remain consistent. These selected storage management operations include operations that produce modified data stored in the primary data store, where a portion of the modified data are not replicated to a secondary node. Other types of storage management operations are selected to be performed on both the primary and secondary data stores, where the operations do not directly change data in the primary data store, but may affect data stored in the primary data store.

Claims (109)

1. A method comprising:

performing a set of operations on a first data store, wherein

the performing the set of operations occurs during a procedure in which selected data in the first data store is copied to a second data store; and

causing the set of operations to be performed on the second data store, wherein one operation of the set of operations restores first data in the first data store from third data in a third data store; and

the causing the set of operations to be performed on the second data store comprises

causing second data in the second data store to be restored from third data in a fourth data store, wherein

the first data and the second data are the same after restoring the first data and after causing the second data to be restored.

2. The method of claim 1 wherein

one operation of the set of operations creates a first snapshot data store related to the first data store wherein

a first snapshot of first data in the first data store is stored in the first snapshot data store; and

the causing the set of operations to be performed on the second data store comprises

causing a second snapshot data store related to the second data store to be created, wherein

a second snapshot of second data in the second data store is stored in the second snapshot data store, and

the first snapshot and the second snapshot comprise data that are the same.

3. The method of claim 2 further comprising:

establishing a replication relationship between the first snapshot data store and the second snapshot data store after the second snapshot data store is created, wherein

the replication relationship causes subsequently modified data in the first snapshot data store to be included in selected snapshot data copied to the second snapshot data store.

4. The method of claim 3 wherein

subsequently modified data are copied to the second snapshot data store when the selected data are copied to the second data store.

5. The method of claim 1 wherein

if at a first point in time during the performing the set of operations,

a first operation of the set of operations is performed on the first data store, and

the first data store comprises third data when the first operation is performed on the first data store, then

at a second point in time,

when the first operation is performed on the second data store,

the second data store comprises a copy of the third data.

6. The method of claim 1 wherein

if at a first point in time during the performing the set of operations,

the first data store comprises third data, then

at a second point in time,

when the second data store represents the first data store at the first point in time,

the second data store comprises a copy of the third data.

7. The method of claim 1 wherein

the causing the set of operations to be performed on the second data store comprises causing at least one command that performs the set of operations to be executed on the second data store.

8. The method of claim 1 wherein

the selected data comprises first data modified as a result of a write operation.

9. The method of claim 8 wherein

the set of operations does not include the write operation.

10. The method of claim 1 wherein

the selected data further comprise a portion of a snapshot of first data stored in the first data store, and

the portion of the snapshot is modified as a result of a second write operation.

11. The method of claim 10 wherein

the set of operations does not include the second write operation.

12. The method of claim 1 wherein

the second data store further comprises a copy of the selected data after copying the selected data to the second data store.

13. The method of claim 1 further comprising:

upon failure of a primary node associated with the first data storage,

identifying a portion of the selected data in the first data store, wherein

the portion has not been copied to the second data store, and

causing only the portion to be copied to the second data store such that the first data and the second data are the same.

14. The method of claim 1 further comprising:

identifying second modified data in the first data storage, wherein

the second modified data were produced before the set of operations was performed on the first data storage and after the set of operations was performed on the second data storage, and

the second modified data are not included in the selected data copied to the second data store; and

causing only the second modified data to be copied to the second data store such that the second data and the first data are the same.

15. The method of claim 1 wherein

the set of operations comprises:

an ordered subset of the set of operations, wherein

operations in the ordered subset of operations are performed on both the first data store and the second data store in a sequential order.

16. The method of claim 1 wherein

the set of operations further comprises:

an unordered subset of the set of operations, wherein

the unordered subset is performed at a specified point in the sequential order,

the specified point in the sequential order is between a first respective point in the sequential order and a second respective point in the sequential order,

the first respective point is adjacent in the sequential order to the second respective point, and

each operation in the unordered subset can be performed concurrently with respect to other operations in the unordered subset.

17. A method comprising:

performing a set of operations on a first data store, wherein the performing the set of operations occurs during a procedure in which selected data in the first data store is copied to a second data store; and

causing the set of operations to be performed on the second data store, wherein

one operation of the set of operations synchronizes first data in the first data store with third data in a third data store; and

the causing the set of operations to be performed on the second data store comprises

causing second data in the second data store to be synchronized with fourth data in a fourth data store, wherein

the first data and the second data are the same after the synchronizing the first data and after the causing the second data to be synchronized.

18. A computer storage readable medium comprising:

performing instructions configured to perform a set of operations on a first data store, wherein

performing the set of operations occurs during a procedure in which selected data in the first data store is copied to a second data store; and

causing instructions configured to cause the set of operations to be performed on the second data store, wherein one operation of the set of operations restores first data in the first data store from third data in a third data store; and

the causing the set of operations to be performed on the second data store comprises

causing second data in the second data store to be restored from third data in a fourth data store, wherein

the first data and the second data are the same after restoring the first data and after causing the second data to be restored.

19. The computer-readable medium of claim 18 further comprising:

inserting instructions configured to insert a command in the selected data copied from the first data store to the second data store to produce the copy of the modified data at the specified point.

20. The computer-readable medium of claim 18 wherein

the set of operations further comprises:

an unordered subset of the set of operations, wherein

the unordered subset is performed at a specified point in the sequential order,

the specified point in the sequential order is between a first respective point in the sequential order and a second respective point in the sequential order,

the first respective point is adjacent in the sequential order to the second respective point, and

each operation in the unordered subset can be performed concurrently with respect to other operations in the unordered subset.

21. A computer system comprising:

a processor for executing instructions; and

the computer-readable medium of claim 18 wherein

the computer-readable medium is coupled to the processor.

22. A method comprising:

performing a set of operations on a first data store, wherein

each operation of the set of operations on the first data store performs at least one of

producing modified data from data in the first data store, and

changing a configuration of the first data store, and

the performing the set of operations occurs during a procedure in which selected data in the first data store is copied to a second data store; and

causing the set of operations to be performed on the second data store, wherein

if the set of operations on the first data store produces the modified data and if a portion of the modified data is not included in the selected data copied to the second data store, the second data store will be updated to include a copy of the portion of the modified data in response to performance of the set of operations on the second data store;

wherein one operation of the set of operations changes the configuration of the first data store by creating a first snapshot data store related to the first data store wherein

the first snapshot of first data in the first data store is stored in the first snapshot data store; and

the causing the set of operations to be performed on the second data store comprises

causing a second snapshot data store related to the second data store to be created, wherein

a second snapshot of second data in the second data store is stored in the second snapshot data store, and

the first snapshot and the second snapshot comprise data that are the same;

establishing a replication relationship between the first snapshot data store and the second snapshot data store after the second snapshot data store is created, wherein

the replication relationship causes subsequently modified data in the first snapshot data store to be included in selected snapshot data copied to the second snapshot data store.

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 Oct 1, 2007
From: VERITAS OPERATING CORPORATION
To: SYMANTEC OPERATING CORPORATION
Reel/Frame 019899/0213 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2003
From: COLGROVE, JOHN A.; KARR, RONALD S.; KISELEV, OLEG
To: VERITAS OPERATING CORPORATION
Reel/Frame 014933/0749 →