IP Library Granted Patent US 9,235,595
Granted Patent B2
US 9,235,595 · App. 12/638,912 · Granted Jan 12, 2016

Storage replication systems and methods

Inventors: Feng Wang (Sunnyvale, CA); Pu Paul Zhang (San Jose, CA); Mukund Agrawal (Pune, IN); Sumit Kumar (Pune, IN)
Assignee: Symantec Corporation
G06F17/30176G06F17/30123G06F17/30144G06F17/30212
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 9,235,595
App. No.
12/638,912
Filed
Dec 15, 2009
Granted
Jan 12, 2016
Kind
B2
Art Unit
2168
USPC
707/649
Abstract

Systems and methods for information storage replication are presented. In one embodiment, a namespace conversion process is performed. Node information regarding a file systems operation change is received. A changed node to pathname object conversion process is performed. An unchanged node to pathname object conversion process is performed. In one exemplary implementation, the changed node to pathname object conversion process and the unchanged node to pathname object conversion process utilize data structures that return the object indications and parent node indications. An object indication is inserted in a pathname.

Claims (56)

1. A method of efficient conversion of information associated with a node during file replication comprising:

receiving node information regarding an operation change of a particular node in a file system;

determining that the received node information is associated with the particular node of the file system identified in a file change log;

in the event the received node information associated with the particular node identified in the file change log corresponds to namespace changes of the particular node between session checkpoints, performing a changed node to pathname object conversion process on the received node information using a name space conversion component, wherein said changed node to pathname object conversion process utilizes a name space alteration tracking data structure to determine a changed object indicator;

in the event the received node information associated with the particular node identified in the file change log does not correspond to namespace changes of the particular node between session checkpoints, performing an unchanged node to pathname object conversion process on the received node information using the name space conversion component, wherein said unchanged node to pathname object conversion process utilizes a longest path tracking data structure to determine an unchanged object indicator;

inserting the changed or unchanged object indicator in a pathname of the particular node based upon results of at least one of said changed node to pathname object conversion process and said unchanged node to pathname object conversion process;

forwarding said pathname with said inserted object indicator to a target storage resource;

receiving a call to roll back one or more changes between session checkpoints for the particular node using a roll back interface and a marker uniquely identifying an entry in the file change log; and

restarting conversion of the node information associated with the particular node during file replication from a point indicated by the marker.

2. The file replication method of claim 1 wherein said changed node to pathname object conversion process and said unchanged node to pathname object conversion process utilize data structures that return said changed and unchanged object indicators.

3. The file replication method of claim 1 wherein said changed node to pathname object conversion process and said unchanged node to pathname object conversion process utilize data structures that return parent node indicators.

4. The file replication method of claim 1 wherein the name space alteration tracking data structure maps a node indicator associated with a namespace change to a parent node indicator and an object name.

5. The file replication method of claim 4 wherein said name space alteration tracking data structure includes a hash table.

6. The file replication method of claim 1 wherein said longest path tracking data structure is a prefix tree.

7. The file replication method of claim 1 further comprising returning a parent object node indicator as an input to said changed node pathname object conversion process.

8. The file replication method of claim 1 further comprising returning a parent object node indicator as an input to said unchanged node to pathname object conversion process.

9. An article of manufacture including a non-transitory computer readable storage medium having instructions stored thereon that if executed by a computing device cause the computing device to perform a storage image replication, the instructions comprising:

an image freezing module that manages frozen snapshots of a source file system at session checkpoints;

a file change log examination module that retrieves entries in a file change log, wherein said entries correspond to namespace changes of node information of a particular node of the source file system between said session checkpoints;

a namespace conversion module that:

converts node indications corresponding to said entries from said file change log to pathname indications in the event said entries correspond to the namespace changes of the node information of the particular node between said session checkpoints,

utilizes a name space alteration tracking data structure to determine a changed object indicator of the particular node in the event said entries correspond to the namespace changes of the particular node between said session checkpoints;

utilizes a longest path tracking data structure to determine an unchanged object indicator of the particular node in the event said entries do not correspond to the namespace changes of the particular node between said session checkpoints; and

inserting the changed or unchanged object indicator in said pathname indications of the particular node based upon results of at least one of said changed node to pathname object conversion process and said unchanged node to pathname object conversion process;

a filter module that filters unnecessary operations;

a delta file data retrieval module that retrieves changes in file data of the particular node of the said source file system between said session checkpoints; and

a delta operation module for:

forwarding said pathname indications with said inserted object indicator and said changes in said file data to a target storage resource;

receiving a call to roll back one or more of said changes of the particular node between session checkpoints using a roll back interface and a marker uniquely identifying an entry in the file change log; and

restarting conversion of the node information associated with the particular node during file replication from a point indicated by the marker.

10. The computer readable medium of claim 9 wherein said namespace conversion module comprises:

a node indication receiving module that determines if a node indication is received;

a changed node to pathname object conversion module that performs a changed node to pathname object conversion process;

an unchanged node to pathname object conversion module that performs an unchanged node to pathname object conversion process; and

an object indication insertion module for inserting an object name in a pathname.

11. The computer readable medium of claim 10 wherein said changed node to pathname object conversion module obtains an object name associated with a node involved corresponding namespace change.

12. The computer readable medium of claim 10 wherein said unchanged node to pathname object conversion module obtains an object name associated with a node not involved in a corresponding namespace change.

13. The computer readable medium of claim 10 wherein said node indication includes a unique inode number.

14. The computer readable medium of claim 10 wherein said changed node to pathname object conversion module and said unchanged node to pathname object conversion module utilize data structures that return said object name.

15. The computer readable medium of claim 10 wherein said changed node to pathname object conversion module recursively processes parent node indicators.

16. The computer readable medium of claim 10 wherein said unchanged node to pathname object conversion module recursively processes parent node indicators.

17. An information storage replication system comprising:

at least one computer processor; and

at least one memory, coupled to the at least one computer processor, having instructions stored therein which, when executed by the at least one computer processor, causes the at least one computer processor to perform operations comprising:

storing, in a source storage component, node information regarding an operation change in a file system;

managing, via a source storage manager, storage of information in said source storage component, including:

managing conversion of source internal node indicators of the file system to pathname indicators, wherein said source storage manager determines whether received node change information corresponds to namespace changes of a particular node of the file system between session checkpoints;

performing a changed node to pathname object conversion process on said node change information in the event the node change information corresponds to the namespace changes of the particular node between session checkpoints, wherein said changed node to pathname object conversion process utilizes a name space alteration tracking data structure to determine a changed object indicator; and

performing an unchanged node to pathname object conversion process on said node change information in the event the node change information does not correspond to the namespace changes of the particular node between session checkpoints, wherein said unchanged node to pathname object conversion process utilizes a longest path tracking data structure to determine an unchanged object indicator; and

inserting the changed or unchanged object indicator in said pathname indicators of the particular node based upon results of at least one of said changed node to pathname object conversion process and said unchanged node to pathname object conversion process;

receiving, via a delta operation module, a call to roll back one or more changes of the particular node between session checkpoints using a roll back interface and a marker uniquely identifying an entry in a file change log;

restarting, via a delta operation module, conversion of the node information associated with the particular node during file replication from a point indicated by the marker; and

storing, via a target storage component, a replica of said pathname indicators with said inserted object indicator.

18. The information storage replication system of claim 17 wherein said data structures include:

a hash table that maps a node indication associated with a namespace change to a parent node indication and an object name; and

said longest path tracking data structure includes a prefix tree that maps a longest path of an unchanged node from a previous session.

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 Recorded Apr 18, 2016
From: VERITAS US IP HOLDINGS LLC
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 038483/0203 →
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 037693/0158 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 15, 2009
From: WANG, FENG; ZHANG, PU PAUL; AGRAWAL, MUKUND; KUMAR, SUMIT
To: SYMANTEC CORPORATION
Reel/Frame 023658/0051 →
Continuity (2)
Provisional Application 61248387 · Oct 2, 2009
Related Publication 20110082836A1 · Apr 7, 2011