IP Library Granted Patent US 8,046,335
Granted Patent B2
US 8,046,335 · App. 12/616,528 · Granted Oct 25, 2011

System for automatically shadowing data and file directory structures that are recorded on a computer memory

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 8,046,335
App. No.
12/616,528
Granted
Oct 25, 2011
Kind
B2
Abstract

The Data Shadowing System comprises a memory module that is connected to the monitored computer system via an existing input/output port to store the shadowed data. The memory module includes a memory device for data storage as well as software, including a control software component that is automatically installed on the monitored computer system when the memory module is first connected to the monitored computer system, as well as associated module software for maintaining a record of the data stored on the memory device. The Data Shadowing System automatically stores the data on the memory module in a single format, while representing it in a data management database in two formats: disk sectors and files. The Data Shadowing System thereby efficiently tracks and stores the state of multiple file systems over time, while allowing for correct disk-level and file-level restoration to a point-in-time without storing redundant data.

Claims (72)

1. A data shadowing system, connectable to a monitored computer system, for the automatic backup storage into the data shadowing system of data that is written in the memory of the monitored computer system and the selective retrieval of this data from the data shadowing system for restoration to said memory of said monitored computer system, said data shadowing system comprising:

data shadow copy module, external to and in communication with a monitored computer system, for storing a shadow copy of the data which is written in the memory of the monitored computer system; and

customer data file manager, resident in said monitored computer system, for autonomously transmitting customer data files, which comprise non-NTFS files resident on said monitored computer system, to said data shadow copy module, comprising:

customer data file map generator for autonomously mapping file directory structures associated with each of the customer data files into file tree information which identifies original names and a location of each customer data file that is stored in the memory of the monitored computer system, as well as a corresponding location in said data shadow copy module which stores a copy of these customer data files to enable both memory-level and file-level restoration of data, and

mapping database for storing said file tree information in a database in said monitored computer system.

2. The data shadowing system of claim 1 wherein said customer data file manager further comprises:

customer data file hash generator for processing each of said customer data files to generate an associated hash value of each said customer data file to uniquely identify said customer data file;

wherein said data shadow copy module comprises:

customer data file storage for storing each of said customer data files and said associated customer data file uniquely identity hash value in said data shadow copy module; and

wherein said mapping database stores said hash value of each of said customer data files in said database.

3. The data shadowing system of claim 2 wherein said customer data file storage additionally stores said file tree information with each of said customer data files and said associated hash value in said data shadow copy module.

4. The data shadowing system of claim 2 , further comprising:

system file manager, resident in each of said plurality of monitored computer systems, for autonomously storing system files on said data shadow copy module, comprising:

system file map generator for autonomously mapping file directory structures associated with system files written in the memory of the monitored computer system into system file tree information which identifies original names of system files as stored on said monitored computer system, a location of the data files in the memory of the monitored computer system, and a location in said data shadow copy module which stores said system files,

wherein said mapping database stores said system file tree information in a database in said monitored computer system.

5. The data shadowing system of claim 4 wherein said system files comprise:

computer files, exclusive of customer provided data, including at least one of: master boot record, partition table, and programs.

6. The data shadowing system of claim 4 wherein said system file manager further comprises:

system file hash generator for processing each of said system files to generate an associated hash value of each said system file to uniquely identify said system file;

wherein said data shadow copy module further comprises:

system file storage for storing each of said system files and said associated system file uniquely identity hash value in said data shadow copy module; and

wherein said mapping database stores said hash value of each of said customer data files in said database.

7. The data shadowing system of claim 6 wherein said system file storage additionally stores said system file tree information with each of said system files and said associated hash value in said data shadow copy module.

8. The data shadowing system of claim 2 wherein said customer data file manager further comprises:

change journal for automatically tracking changes to said customer data files, including: customer data file creation, customer data file movement, customer data file content changes, and customer data file renaming.

9. The data shadowing system of claim 8 wherein said customer data file manager further comprises:

file history, responsive to a modification of a customer data file, for generating file change data indicative of a difference between said customer data file and said modified customer data file; and

wherein said customer data file storage stores said file change data in said data shadow copy module and substitutes said modified customer data file for said customer data file in said data shadow copy module.

10. The data shadowing system of claim 2 wherein said customer data file manager further comprises:

data compressor for compressing said customer data file prior to storage in said data shadow copy module.

11. The data shadowing system of claim 1 wherein said customer data file manager further comprises:

metadata index generator for uniquely identifying the active customer data file systems to extract relevant metadata for every file object in the file system; and

metadata index database for recording said metadata in a database.

12. The data shadowing system of claim 1 wherein said customer data file manager further comprises:

file system snapshot for uniquely identifying all active customer data files at a selected point in time; and

snapshot storage for storing said uniquely identifying in memory as an Integrity Point representative of a present content of all said customer data files.

13. A method for the automatic backup storage into a data shadowing system which is connectable to a monitored computer system, of data that is written in the memory of a monitored computer system and the selective retrieval of this data from the data shadowing system for restoration to said memory of said monitored computer system, comprising:

storing, in a data shadow copy module which is external to and in communication with a monitored computer system, a shadow copy of the data which is written in the memory of the monitored computer system; and

autonomously transmitting customer data files, which comprise non-NTFS files resident on said monitored computer system, to said data shadow copy module, comprising:

autonomously mapping file directory structures associated with each of the customer data files into file tree information which identifies original names and a location of each customer data file that is stored in the memory of the monitored computer system, as well as a corresponding location in said data shadow copy module which stores a copy of these customer data files to enable both memory-level and file-level restoration of data, and

storing said file tree information in a database in said monitored computer system.

14. The method for the automatic backup storage of data of claim 13 wherein said step of autonomously storing customer data files further comprises:

processing each of said customer data files to generate an associated hash value of each said customer data file to uniquely identify said customer data file;

wherein said step of storing a shadow copy of the data comprises:

storing each of said customer data files and said associated hash value in said data shadow copy module; and

wherein said mapping data database stores said hash value of each of said customer data files in said database.

15. The method for the automatic backup storage of data of claim 14 wherein said step of storing each of said customer data file additionally stores said file tree information with each of said customer data files and said associated hash value in said memory module.

16. The method for the automatic backup storage of data of claim 14 , further comprising:

autonomously storing system files on said data shadow copy module, comprising:

autonomously mapping system files written in the memory of the monitored computer system into system file tree information which identifies original names of system files as stored on said monitored computer system, a location of the data files in the memory of the monitored computer system, and a location in said data shadow copy module which stores said system files, and

storing said system file tree information in a database in said monitored computer system.

17. The method for the automatic backup storage of data of claim 16 wherein said system files comprise:

computer files, exclusive of customer provided data, including at least one of: master boot record, partition table, and programs.

18. The method for the automatic backup storage of data of claim 16 wherein said step of autonomously storing system files further comprises:

processing each of said system files to generate an associated hash value of each said system file to uniquely identify said system file;

wherein said step of storing a shadow copy of the data comprises:

storing each of said system files and said associated hash value in said data shadow copy module; and

wherein said mapping data database stores said hash value of each of said customer data files in said database.

19. The method for the automatic backup storage of data of claim 18 wherein said step of storing each of said system files additionally stores said system file tree information with each of said system files and said associated hash value in said data shadow copy module.

20. The method for the automatic backup storage of data of claim 14 wherein said step of autonomously storing customer data files further comprises:

autonomously tracking changes to said customer data files, including: customer data file creation, customer data file movement, customer data file content changes, and customer data file renaming.

21. The method for the automatic backup storage of data of claim 20 wherein said step of autonomously storing customer data files further comprises:

generating, in response to a modification of a customer data file, file change data indicative of a difference between said customer data file and said modified customer data file;

wherein said step of storing a shadow copy of the data stores said file change data in said data shadow copy module and substitutes said modified customer data file for said customer data file in said data shadow copy module.

22. The method for the automatic backup storage of data of claim 14 wherein said step of autonomously storing customer data files further comprises:

compressing said customer data file prior to storage in said data shadow copy module.

23. The method for the automatic backup storage of data of claim 13 wherein said step of autonomously storing customer data files further comprises:

uniquely identifying the active customer data file systems to extract relevant metadata for every file object in the file system; and

recording said metadata in a database.

24. The method for the automatic backup storage of data of claim 13 wherein said step of autonomously storing customer data files further comprises:

uniquely identifying all active customer data files at a selected point-in-time; and

storing said uniquely identifying in memory as an Integrity Point representative of a present content of all said customer data files.

Assignments (13)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 19, 2024
From: SCHWAAB, DAVID; PROBST, NATHAN; BATCHELOR, DENNIS B.
To: REBIT, INC.
Reel/Frame 067168/0008 →
ASSIGNMENT AND ASSUMPTION AGREEMENT Recorded Oct 12, 2023
From: CARBONITE, LLC
To: OPEN TEXT INC.
Reel/Frame 065222/0310 →
CERTIFICATE OF CONVERSION Recorded Oct 12, 2023
From: CARBONITE, INC.
To: CARBONITE, LLC
Reel/Frame 065222/0303 →
RELEASE OF SECURITY INTEREST IN PATENT RIGHTS RECORDED AT R/F 048723/0374 Recorded Dec 26, 2019
From: BARCLAYS BANK PLC, AS COLLATERAL AGENT
To: CARBONITE, INC.
Reel/Frame 051418/0807 →
SECURITY INTEREST Recorded Mar 28, 2019
From: CARBONITE, INC.
To: BARCLAYS BANK PLC, AS COLLATERAL AGENT
Reel/Frame 048723/0374 →
TERMINATION OF PATENT SECURITY AGREEMENT FILED AT R/F 045640/0335 Recorded Mar 26, 2019
From: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
To: CARBONITE, INC.
Reel/Frame 048702/0929 →
SECURITY INTEREST Recorded Mar 19, 2018
From: CARBONITE, INC.
To: SILICON VALLEY BANK
Reel/Frame 045640/0335 →
CORRECTIVE ASSIGNMENT TO REMOVE APPLICATION NUMBER 12/933261 PREVIOUSLY RECORDED AT REEL: 036410 FRAME: 0618. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 5, 2016
From: REBIT, INC
To: CARBONITE, INC.
Reel/Frame 037427/0350 →
CORRECTIVE ASSIGNMENT TOREMOVE APPLICATION NUMBER 12/933,261 PREVIOUSLY RECORDED AT REEL: 036408 FRAME: 0892. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 4, 2016
From: ACCESS VENTURE PARTNERS II, LLP
To: REBIT, INC.
Reel/Frame 037426/0105 →
RELEASE OF SECURITY INTEREST Recorded Oct 6, 2015
From: SQUARE 1 BANK
To: SQUARE 1 BANK; REBIT,INC.
Reel/Frame 036795/0757 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 25, 2015
From: REBIT, INC
To: CARBONITE, INC.
Reel/Frame 036410/0618 →
RELEASE OF SECURITY INTEREST Recorded Aug 25, 2015
From: ACCESS VENTURE PARTNERS II, LLP
To: REBIT, INC.
Reel/Frame 036408/0892 →
SECURITY AGREEMENT Recorded Oct 25, 2013
From: REBIT, INC.
To: SQUARE 1 BANK
Reel/Frame 031495/0079 →