IP Library Granted Patent US 8,977,598
Granted Patent B2
US 8,977,598 · App. 13/725,657 · Granted Mar 10, 2015

Systems and methods for on-line backup and disaster recovery with local copy

Inventors: Louis Montulli (Sunnyvale, CA); Jason Harrison (Sunnyvale, CA); Jeffrey Whitehead (Sunnyvale, AZ); Chris Schin (Sunnyvale, CA); Maggie Seah (Sunnyvale, CA)
Assignee: Zetta Inc.
G06F17/30129
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,977,598
App. No.
13/725,657
Granted
Mar 10, 2015
Kind
B2
Abstract

Systems and methods are disclosed for rapidly restoring client data set for a computer by storing the client data and one or more pat sets required to revert to one or more version of the client data on a remote server; storing a local copy of the replicated client data on a local data storage device coupled to the computer; receiving a request to revert to a predetermined version of the client data; using the local copy as a seed, receiving a patch set corresponding to a predetermined version; and updating the local copy using the patch set to generated the predetermined version.

Claims (52)

1. A method for rapidly restoring client data set for a computer, comprising:

receiving inputs from a web user portal to control operations of a client software and a remote server to back up the customer computer;

storing the client data and one or more patch sets required to revert to one or more version of the client data on the remote server, wherein the remote server stores heterogeneous data regardless of file format;

storing a local copy of the replicated client data on a local data storage device coupled to the computer;

receiving a request to revert to a predetermined version of the client data;

using the local copy as a seed, receiving a patch set corresponding to a predetermined version;

updating the local copy using the patch set to generated the predetermined version;

managing replication of the client data set with an application software on the computer;

generating a local manifest of the client data set during a replication;

storing the local manifest on a remote server along with a server data set corresponding to the client data set;

subsequently updating the local manifest for all write operations directed at the client data set;

receiving back up or replication job request; and

using the local manifest in place of the manifest on the remote server to determine files for copying to the server data set.

2. The method of claim 1 , identifying changed files based on comparisons with a manifest.

3. The method of claim 1 , identifying changed files based on meta-data retrieved from a remote server.

4. The method of claim 1 , comprising generating a signature for each file and last modified time meta data and file size meta data.

5. The method of claim 1 , comprising generating a secure hash algorithm (SHA) signature for each file and last modified time meta data and file size meta data.

6. The method of claim 1 , wherein the manifest includes a header, one or more lines comprising a file or directory entry, one or more name value pairs, and a validation of the manifest.

7. The method of claim 6 , comprising generating a hash to validate the manifest.

8. The method of claim 1 , comprising wiping, patching, or pushing down the manifest if a discrepancy between the client and server data set is found.

9. The method of claim 1 , comprising customizing a Web-based Distributed Authoring and Versioning application program interface to access the files.

10. The method of claim 1 , comprising overlaying access to every file to query, set, or override the meta data.

11. The method of claim 1 , comprising creating a metadata database as a shadow of a user file in a hidden folder and applying the meta data database for a random access item lookup.

12. The method of claim 1 , comprising storing meta data in a single index database with a meta data database file size below the size of a single block.

13. The method of claim 1 , comprising translating between an original native file system and a split file and metadata system.

14. The method of claim 1 , comprising using a software client as a translation agent between a native file system and the system's split file and metadata system, and for each file the client software reads the file data and the meta data and sends both components using a Web-based Distributed Authoring application program interface (WebDav API), wherein the remote server stores file data and meta data separately on a file system and linked by folder proximity and file name.

15. The method of claim 1 , comprising reading each file data and meta data and sending both through Web-based Distributed Authoring and Versioning application program interface.

16. The method of claim 1 , comprising storing file data and meta data separately on a file system, and linking both through folder proximity and file name.

17. The method of claim 1 , comprising storing as metadata file modification time, file creation time, file access time, file size, access control list (ACLs), permission list, hash of file data.

18. The method of claim 1 , comprising storing metadata in sidecar files for any type of attribute.

19. The method of claim 1 , comprising transferring back-up data files using a client software on the computer, wherein system management platform to back up the customer computer with one or more data storage silos, each including a plurality of storage directors communicating with the client software and the web user portal; and a clustered data storage array.

20. The method of claim 1 , comprising restoring files through a group consisting of: the client software, a web based file browser replicating a look and feel of a native file explorer, and a remote data drive at the data storage silo mounted by a user simulating a local drive.

21. A system, comprising:

a plurality of customer computers to be backed-up, each customer computer running a client software to transfer back-up data files by storing the client data and one or more pat sets required to revert to one or more version of the client data on a remote server;

computer code for:

storing a local copy of the replicated client data on a local data storage device coupled to the computer;

receiving a request to revert to a predetermined version of the client data;

using the local copy as a seed, receiving a patch set corresponding to a predetermined version;

updating the local copy using the patch set to generated the predetermined version, wherein the remote server accepts heterogeneous data regardless of file format;

managing replication of the client data set with an application software on the computer;

generating a local manifest of the client data set during a replication;

storing the local manifest on a remote server along with a server data set corresponding to the client data set;

subsequently updating the local manifest for all write operations directed at the client data set;

receiving back up or replication job request; and

using the local manifest in place of the manifest on the remote server to determine files for copying to the server data set;

a system management platform coupled to the client software over the Internet, the system management platform receiving inputs from a web user portal to control operations of the client software and the system management platform to back up the customer computer; and

two or more data storage silos, each including:

a plurality of storage directors communicating with the client software; and

a clustered data storage array.

22. The system of claim 21 , wherein the client software communicates using Web-based Distributed Authoring and Versioning to collaborative updating and management of files on remote web servers and wherein the client software selects the number of threads.

23. The system of claim 21 , wherein the client software comprises a configurable parallelism selection for multi-processor efficiency and high latency connections, or for backing up NAS/SAN or RAID arrays with multiple disks.

24. The system of claim 21 , wherein the data storage silos comprises a pair of head nodes and a plurality of storage nodes, wherein each storage node comprises a computer with disks and an on-disk encryptor to generate clear text and sent over an Internet Small Computer System Interface (iSCSI), wherein iSCSI traffic is load balanced and fails over network links and connected to a plurality of switches and wherein iSCSI data comprise whole disk mappings and wherein the head nodes create RAID stripes across the storage nodes.

Assignments (12)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 14, 2024
From: MONTULLI, LOUIS JAMES; HARRISON, JASON; WHITEHEAD, JEFFREY; SCHIN, CHRIS; SEAH, MAGGIE
To: ZETTA, INC.
Reel/Frame 068602/0644 →
MERGER AND CHANGE OF NAME Recorded Aug 9, 2024
From: ZETTA, LLC; ZETTA, LLC
To: ARCZ ACQUISITIONCO LLC
Reel/Frame 068238/0590 →
MERGER AND CHANGE OF NAME Recorded Aug 9, 2024
From: ARCZ ACQUISITIONCO, LLC; ARCZ ACQUISITIONCO, LLC
To: ARCSERVE (USA) LLC
Reel/Frame 068238/0593 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 9, 2024
From: MONROE CAPITAL MANAGEMENT ADVISORS, LLC; ARCSTOR MIDCO LLC; ARCSERVE ACQUISITION COMPANY LLC; ARCSERVE (USA) LLC; STORAGECRAFT TECHNOLOGY, LLC
To: ARCSERVE, LLC
Reel/Frame 068238/0669 →
SECURITY INTEREST Recorded Mar 16, 2021
From: ARCSERVE (USA) LLC; STORAGECRAFT TECHNOLOGY LLC; ZETTA, LLC
To: MONROE CAPITAL MANAGEMENT ADVISORS, LLC, AS COLLATERAL AGENT
Reel/Frame 055603/0219 →
RELEASE OF SECURITY INTEREST Recorded Mar 16, 2021
From: SUNTRUST BANK, AS FIRST LIEN ADMINISTRATIVE AGENT
To: ZETTA, INC.
Reel/Frame 055611/0740 →
RELEASE OF SECURITY INTEREST Recorded Feb 4, 2021
From: SUNTRUST BANK
To: ZETTA, INC.
Reel/Frame 055148/0720 →
CHANGE OF NAME Recorded Jan 6, 2021
From: ZETTA, INC.
To: ZETTA, LLC
Reel/Frame 054912/0333 →
RELEASE OF THE SECURITY INTEREST RECORDED AT REEL/FRAME 043491/0271 Recorded Jan 3, 2020
From: SUNTRUST BANK
To: ZETTA, INC.
Reel/Frame 051464/0298 →
SECURITY INTEREST Recorded Sep 5, 2017
From: ZETTA, INC.
To: SUNTRUST BANK
Reel/Frame 043491/0271 →
RELEASE OF SECURITY INTEREST Recorded Jun 16, 2017
From: PACIFIC WESTERN BANK
To: ZETTA, INC.
Reel/Frame 042739/0570 →
SECURITY INTEREST Recorded Jul 29, 2016
From: ZETTA, INC.
To: PACIFIC WESTERN BANK
Reel/Frame 039294/0392 →
Continuity (1)
Related Publication 20140181051A1 · Jun 26, 2014