IP Library Granted Patent US 10,089,192
Granted Patent B2
US 10,089,192 · App. 14/957,025 · Granted Oct 2, 2018

Live restore for a data intelligent storage system

Inventors: Paula Long (Amherst, NH); Misha Zelikov (Needham, MA); Bryan Keith Panner (Windham, NH); Istvan Gonczi (Berkley, MA); Gregory James McHale (Brookline, NH); Janice Ann Lacy (Shrewsbury, MA); Kumar Kanteti (South Grafton, MA)
Assignee: HYTRUST, INC.
G06F11/1469G06F17/30067G06F17/30289G06F11/1466G06F11/2056
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 10,089,192
App. No.
14/957,025
Granted
Oct 2, 2018
Kind
B2
Abstract

A single system merges primary data storage, data protection, and intelligence. Intelligence is provided through in-line data analytics, and data intelligence and analytics are gathered on protected data and prior analytics, and stored in discovery points, all without impacting performance of primary storage. Real-time analysis is done in-line with the HA processing, enabling a variety of data analytics that are then used as part of a live restore operation. Data content can be live restored at an object or block level. Data recovery begins with metadata restoration, followed by near-instantaneous access to “hot” regions of data being restored, allowing site operation to continue or resume while a restore is ongoing.

Claims (59)

1. A data analytics system comprising:

a. one or more processors programmed to operate primary node software, wherein the primary node software:

i. intercepts data access requests;

ii. mirrors data referenced in the data access requests to provide high availability for data included in the data access requests;

iii. executes in-line analytics on the data access requests to provide analytics metadata;

iv. forwards the analytics metadata to intelligence node software; and

v. directs the data access requests to a primary storage pool;

b. one or more processors programmed to operate the intelligence node software, wherein the intelligence node software:

vi. receives analytics metadata from the primary node software;

vii. stores the mirrored data to an intelligence storage pool;

viii. performs further analytics on the mirrored data and/or previously executed in-line analytics; and

ix. creates discovery points within the intelligence storage pool; and

c. the primary node software and intelligence node software further, upon an indication of a need to restore data, cooperate to perform a live restore operation to the primary storage pool from the intelligence storage pool using the analytics metadata,

wherein the primary node software or intelligence node software further perform a live restore operation on an individual file, and

wherein the live restore operation further restores metadata related to the file atomically, allows user input/output (I/O) to the file being restored, and continues to restore user data related to the file as a background task.

2. The system of claim 1 wherein the live restore operation additionally:

a. restores only object metadata first as a foreground process;

b. allows user I/O access to objects prior to complete restoration of user data associated with the object metadata; and

c. restores the user data associated with the object metadata as a background process.

3. The system of claim 2 wherein the primary node software or intelligence node software further:

prioritize the user data associated with the object metadata being restored based on the analytics metadata.

4. The system of claim 2 wherein the primary node software or intelligence node software further:

use the analytics metadata and user I/O operations to prioritize regions of a user data object being restored.

5. The system of claim 3 wherein the primary node software or intelligence node software further:

a. restore multiple objects at a time; and

b. restore user data using the analytics metadata and user I/O to determine a priority for restoring the multiple objects.

6. The system of claim 1 wherein the primary node software or intelligence node software further:

a. intercept subsequent live file requests; and

b. force live restore from a first one of the discovery points, wherein the first discovery point further includes source data.

7. The system of claim 2 wherein the primary node software or intelligence node software further:

use a restore bitmap to track restore progress to allow random I/O to the objects before the objects are completely restored.

8. The system of claim 7 wherein the restore bitmap represents regions that support automatic atomic restoration.

9. The system of claim 1 wherein the primary node software or intelligence node software further:

a. obtain a size of the file to be restored from the intelligence pool;

b. create a new file in a RestorePath in the primary pool with an object identifier FileOID;

b. restore metadata for a user data object to be restored;

c. create a RestoreLink file having an object identifier and a RestoreLinkOID;

d. save at least the restore size, FileOID and zero restore bitmap in the RestoreLink file; and

e. save the RestoreLinkOID on a corresponding attribute in a new file being restored in the primary pool.

10. The system of claim 1 wherein the live restore operation further:

prioritizes restore of individual blocks within the file being restored based on user I/O and the previously gathered analytics.

11. The system of claim 1 wherein the intelligence node software further performs a directory/file system live restore operation on a directory and/or file system level to restore multiple files and/or directories in parallel.

12. The system of claim 11 wherein the directory/file system live restore operation further:

a. creates directory/file system metadata;

b. allows user I/O to the file system/directory being live restored as a background task; and

c. restores individual files as a file live restore operation.

13. The system of claim 11 wherein the directory/file system live restore operation further:

prioritizes restoration of multiple files within a directory/file system based on user I/O and the previously gathered analytics.

14. The system of claim 1 wherein the primary node software or intelligence node software further:

perform block level live restore for restoring data extents from a recovery site to a primary site.

15. The system of claim 14 wherein the block level live restore further:

a. restores metadata for the primary site atomically, including system metadata for file systems and discovery points;

b. transfers an allocated extents map from a Virtual Disk Layer (VDL) on the recovery site to the VDL on the primary site; and

c. allows user I/O to the primary site while performing restore of user data each extent as a background task.

16. The system of claim 15 wherein the primary node software or intelligence node software further:

a. prune resulting metadata; and

b. resolve TRIM operations to the VDL as result of either such pruning or as a result of allowing user I/O to the primary site while the primary site is being restored.

17. The system of claim 14 wherein the block level live restore further:

prioritizes restore of each extent based on the user I/O and previously gathered analytics.

Assignments (7)
SECURITY INTEREST Recorded Mar 27, 2024
From: ENTRUST CORPORATION
To: BMO BANK N.A., AS COLLATERAL AGENT
Reel/Frame 066917/0024 →
MERGER Recorded Mar 18, 2024
From: HYTRUST, INC.
To: ENTRUST CORPORATION
Reel/Frame 066806/0262 →
SECURITY AGREEMENT Recorded Feb 1, 2021
From: HYTRUST, INC.
To: BMO HARRIS BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 055190/0660 →
TERMINATION OF INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Jan 7, 2021
From: SILICON VALLEY BANK
To: HYTRUST, INC.
Reel/Frame 054925/0059 →
SECURITY INTEREST Recorded Sep 24, 2019
From: HYTRUST, INC.
To: SILICON VALLEY BANK
Reel/Frame 050474/0933 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 7, 2017
From: DATAGRAVITY, INC.
To: HYTRUST, INC.
Reel/Frame 042930/0758 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 29, 2016
From: LONG, PAULA; ZELIKOV, MISHA; PANNER, BRYAN KEITH; GONCZI, ISTVAN; MCHALE, GREGORY JAMES; LACEY, JANICE ANN; KANTETI, KUMAR
To: DATAGRAVITY, INC.
Reel/Frame 037851/0627 →
Continuity (4)
Continuation In Part 14157974 · Jan 17, 2014
Continuation In Part 14017754 · Sep 4, 2013
Provisional Application 61834806 · Jun 13, 2013
Related Publication 20160170844A1 · Jun 16, 2016