IP Library Granted Patent US 7,953,704
Granted Patent B2
US 7,953,704 · App. 11/506,596 · Granted May 31, 2011

Systems and methods for a snapshot of data

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,953,704
App. No.
11/506,596
Granted
May 31, 2011
Kind
B2
Abstract

In one embodiment, a user or client device is connected to a distributed file system comprised of one or more physical nodes. The data on each of the physical nodes store metadata about files and directories within the file system. Some of the embodiments permit a user to take a snapshot of data stored on the file system. The snapshot may include a single file, a single directory, a plurality of files within a directory, a plurality of directories, a path on the file system that includes nested files and subdirectories, or more than one path on the file system that each includes nested files and directories. According to one embodiment, the system stores and updates metadata, including a governance list, for each of the files and directories. The governance list provides a representation of the snapshots which govern a file or directory and its descendants.

Claims (41)

1. A method for taking a snapshot of a portion of a file system including files and directories, the method comprising:

accepting, by a computer processor, at least one path that represents a portion of a file system which is less than the entire file system;

accessing, by the computer processor, metadata associated with data that represents the top-most level of the at least one path, the metadata comprising information about the data, the information comprising a governance list, the governance list configured to comprise identifiers of a plurality of snapshots governing the data;

obtaining, by the computer processor, a snapshot identifier identifying a snapshot;

adding, by the computer processor, the snapshot identifier to the governance list of the accessed metadata prior to any modifications of the portion of the file system represented by the at least one path;

receiving a request to modify a portion of a file to be modified within the portion of the file system represented by the at least one path;

determining that the portion of the file to be modified is governed by a snapshot;

copying the portion of the file to be modified prior to modifying the portion of the file to be modified; and

creating an at least one indication in a snapshot metadata associated with the copied portion of the file, the at least one indication indicating that one or more references to unmodified portions of the file are not stored in the snapshot metadata.

2. The method of claim 1 , wherein the determining comprises accessing the governance list of the metadata associated with the data that represents the top-most level of the at least one path.

3. The method of claim 1 , wherein the determining comprises accessing a governance list of metadata associated with the file.

4. The method of claim 1 , further comprising copying metadata associated with the file prior to modifying the portion of the file to be modified.

5. The method of claim 1 , wherein the information further comprises at least one metatree and the creating comprises storing the indication in an at least one metatree associated with the snapshot metadata.

6. A data storage system with snapshot capability on a per directory and descendants basis comprising;

at least one storage device;

at least one computer processor;

a file system stored on the at least one storage device and accessible by the at least one computer processor, the file system comprising multiple metadata nodes logically arranged hierarchically each metadata node comprising information about a directory or file stored on the at least one storage device, the information comprising a governance list, the governance list comprising identifiers of zero or more snapshots governing the directory or file and configured to comprise identifiers of a plurality of snapshots governing the directory or file; and

at least one executable software module, the at least one computer processor configured to execute the at least one executable software module, the at least one executable software module configured to:

accept at least one path that represents a portion of the file system which is less than the entire file system;

access a metadata node corresponding to the top-most level of the at least one path;

obtain a snapshot identifier;

add the snapshot identifier to the governance list of the accessed metadata node;

receive a request to modify a portion of a file within the portion of the file system represented by the at least one path

determine that the portion of the file to be modified is governed by a snapshot;

copy the portion of the file to be modified prior to modifying the portion of the file to be modified; and

create an at least one indication in a snapshot metadata node associated with the copied portion of the file, the at least one indication indicating that one or more references to unmodified portions of the file are not stored in the snapshot metadata node.

7. The system of claim 6 , wherein the at least one executable software module is further configured to determine that the portion of the file to be modified is governed by the snapshot based on the governance list of the accessed metadata node.

8. The system of claim 6 , wherein the at least one executable software module is further configured to determine that the portion of the file to be modified is governed by the snapshot based on a governance list of a metadata node associated with the file.

9. The system of claim 6 , wherein the at least one executable software module is further configured to copy metadata associated with the file into a snapshot metadata node prior to modifying the portion of the file to be modified.

10. The system of claim 6 , wherein the information further comprises at least one metatree and the at least one indication is created in an at least one metatree associated with the snapshot metadata node.

11. A data storage system with snapshot capability on a per directory and descendants basis comprising:

at least one storage device;

at least one computer processor;

a file system stored on the at least one storage device and accessible by the at least one computer processor, the file system comprising multiple metadata nodes logically arranged hierarchically, each metadata node comprising information about a directory or file stored on the at least one storage device, the information comprising a governance list and at least one metatree, the governance list comprising identifiers of zero or more snapshots governing the directory or file and configured to comprise identifiers of a plurality of snapshots governing the directory or file; and

at least one executable software module, the at least one computer processor configured to execute the at least one executable software module, the at least one executable software module configured to:

accept at least one path that represents a portion of the file system which is less than the entire file system;

access a metadata node corresponding to the top-most level of the at least one path;

obtain a snapshot identifier; and

add the snapshot identifier to the governance list of the accessed metadata node.

12. The system of claim 11 , wherein the snapshot identifier indicates the relative time the snapshot was created.

13. The system of claim 11 , wherein the information further comprises one or more of the following: an indication of whether the metadata node corresponds to a file or directory, a unique identifier identifying the metadata node, and an indication of the last time the governance list was modified.

Assignments (13)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 29, 2016
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 040203/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 6, 2011
From: IVY HOLDING, INC.
To: EMC CORPORATION
Reel/Frame 026083/0036 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 4, 2011
From: ISILON SYSTEMS LLC
To: IVY HOLDING, INC.
Reel/Frame 026069/0925 →
MERGER Recorded Mar 31, 2011
From: ISILON SYSTEMS, INC.
To: ISILON SYSTEMS LLC
Reel/Frame 026066/0785 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 6, 2006
From: ANDERSON, ROBERT J.; FACHAN, NEAL T.; LEMAR, ERIC M.; PASSEY, AARON J.; RICHARDS, DAVID W.; SCHACK, DARREN P.
To: ISILON SYSTEMS, INC.
Reel/Frame 018506/0289 →