IP Library Granted Patent US 9,361,328
Granted Patent B1
US 9,361,328 · App. 13/761,496 · Granted Jun 7, 2016

Selection of files for archival or deduplication

Inventor: Murtaza S. Ghiya (Maharashtra, IN)
Assignee: Veritas US IP Holdings LLC
G06F17/30303G06F17/30156
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,361,328
App. No.
13/761,496
Filed
Feb 7, 2013
Granted
Jun 7, 2016
Kind
B1
Examiner
WONG, LESLIE
Art Unit
2164
USPC
707/667
Abstract

Various systems and methods for selection of files for archival or deduplication operations are disclosed. For example, one method involves analyzing a plurality of files, where the analyzing is based on one or more archiving policies. The method involves determining whether a first file of the plurality of files is to be archived or deduplicated, where the determining is based at least on the analysis. The method also involves, in response to a determination to archive the first file, generating a request to archive the first file.

Claims (100)

1. A method comprising:

analyzing a plurality of files, wherein

the analyzing is based on one or more archiving policies,

the analyzing comprises

determining a percentage of free space on a volume, and

determining whether the percentage of free space is greater than a threshold, and

the plurality of files is stored on the volume;

determining, based on the analyzing, whether a first file of the plurality of files is to be archived;

in response to the analyzing indicating that the percentage of free space is greater than the threshold, selecting the first file for archiving;

determining, based on the analyzing, whether a first file of the plurality of files is to be deduplicated; and

in response to a determination to archive the first file,

generating a request to archive the first file.

2. The method of claim 1 , further comprising

determining whether a second file of the plurality of files is to be archived or deduplicated, wherein

the determining whether the second file is to be archived or deduplicated is based at least on the analysis; and

in response to a determination to deduplicate the second file,

selecting the second file for deduplication.

3. The method of claim 1 , wherein

in response to the determination to archive the first file,

determining whether to deduplicate remaining files of the plurality of files, wherein

the remaining files do not comprise the first file.

4. The method of claim 1 , further comprising

determining whether one or more additional files out of the remaining files are to be archived or deduplicated, wherein

the plurality of files are stored using a plurality of blocks, and

the determining whether the one or more additional files are to be archived or deduplicated comprises determining the additional file(s) that each share at least one respective block of the plurality of blocks with the first file.

5. The method of claim 1 , wherein

the analyzing the plurality of files comprises:

determining a percentage of unique blocks of the each file of the plurality of files, wherein

the plurality of files are stored using a plurality of blocks, and

each of the unique blocks is only used by a respective one of the plurality of files.

6. The method of claim 5 , wherein

at least two of the plurality of files share a first block of the plurality of blocks.

7. The method of claim 5 , wherein

the analyzing the plurality of files further comprises

determining whether the percentage of unique blocks for the first file is greater than a threshold,

in response to a determination that the percentage of unique blocks for the first file is greater than the threshold,

selecting the first file for archiving.

8. The method of claim 1 , wherein

in response to generating the request to archive the first file, detecting a reparse point conflict, wherein

the first file is associated with a first reparse point, and

archiving of the first file includes generation of another reparse point;

detection of the reparse point conflict indicates a conflict between the first reparse point and the another reparse point.

9. The method of claim 1 , further comprising:

in response to a determination not to archive a second file,

generating a request to deduplicate the second file.

10. A system comprising:

one or more processors; and

a control module, wherein the control module is configured to

analyze a plurality of files, wherein

analyzing the plurality of files is based on one or more archiving policies,

the analyzing comprises

determining a percentage of free space on a volume, and

determining whether the percentage of free space is greater than a threshold, and

the plurality of files is stored on the volume,

determine, based on the analyzing, whether a first file of the plurality of files is to be archived,

in response to the analyzing indicating that the percentage of free space is greater than the threshold, select the first file for archiving,

determine, based on the analyzing, whether a first file of the plurality of files is to be deduplicated, and

in response to a determination to archive the first file, generate a request to archive the first file, and

wherein the control module is configured to be executed using the one or more processors.

11. The system of claim 10 , wherein

the control module is further configured to, in response to the determination to archive the first file,

determine whether to deduplicate remaining files of the plurality of files, wherein

the remaining files do not comprise the first file.

12. The system of claim 10 , wherein

the control module being configured to determine whether to deduplicate remaining files of the plurality of files comprises

the control module being further configured to

determine whether one or more additional files out of the remaining files are to be archived or deduplicated, wherein

the plurality of files are stored using a plurality of blocks, and

the control module being configured to determine whether the one or more additional files are to be archived or deduplicated comprises

 the control module being configured to determine the additional file(s) that each share at least one respective block of the plurality of blocks with the first file.

13. The system of claim 10 , wherein

the control module being configured to analyze the plurality of files comprises

the control module being further configured to

determine a percentage of unique blocks of the each file of the plurality of files, wherein

the plurality of files are stored using a plurality of blocks, and

each of the unique blocks is only used by a respective one of the plurality of files.

14. The system of claim 10 , wherein

the control module being configured to analyze the plurality of files comprises

the control module being further configured to

determine whether the percentage of unique blocks for the first file is greater than a threshold, and

in response to a determination that the percentage of unique blocks for the first file is greater than the threshold, select the first file for archiving.

15. A non-transitory computer-readable storage medium comprising:

a first set of instructions, executable on a computer system, configured to analyze a plurality of files, wherein

the analyzing is based on one or more archiving policies,

the analyzing comprises

determining a percentage of free space on a volume, and

determining whether the percentage of free space is greater than a threshold, and

the plurality of files is stored on the volume,

a second set of instructions, executable on the computer system, configured to

determine, based on the analyzing, whether a first file of the plurality of files is to be archived,

in response to the analyzing indicating that the percentage of free space is greater than the threshold, select the first file for archiving, and

determine, based on the analyzing, whether a first file of the plurality of files is to be deduplicated, and

a third set of instructions, executable on the computer system, configured to, in response to a determination to archive the first file, generate a request to archive the first file.

16. The non-transitory computer-readable storage medium of claim 15 , wherein the first set of instructions configured to analyze the plurality of files are further configured to

determine a percentage of unique blocks of the each file of the plurality of files, wherein

the plurality of files are stored using a plurality of blocks,

each of the unique blocks is only used by a respective one of the plurality of files.

17. The non-transitory computer-readable storage medium of claim 15 , wherein the first set of instructions configured to analyze the plurality of files are further configured to

determine a percentage of free space on a volume, wherein

the volume is used to store the plurality of files.

Assignments (13)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 7, 2026
From: VERITAS TECHNOLOGIES LLC
To: COHESITY, INC.
Reel/Frame 075794/0333 →
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 →
Continuity (1)
Continuation 13751782 · Jan 28, 2013