IP Library › Granted Patent US 10,235,092
Granted Patent B1
US 10,235,092 · App. 15/380,033 · Granted Mar 19, 2019

Independent parallel on demand recovery of data replicas in a storage system

Inventors: Assaf Natanzon (Tel Aviv, IL); Leehod Baruch (Rishon Leziyon, IL); Ron Bigman (Holon, IL); Amit Lieberman (Raanana, IL); Jehuda Shemer (Kfar Saba, IL)
Assignee: EMC IP HOLDING COMPANY LLC
G06F3/065G06F3/0619G06F3/0665G06F3/0683G06F21/563G06F2221/033
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,235,092
App. No.
15/380,033
Filed
Dec 15, 2016
Granted
Mar 19, 2019
Kind
B1
Examiner
YU, JAE UN
Art Unit
2135
USPC
711/162
Abstract

Described embodiments provide devices, systems and methods for operating a storage system. An object store located at the replication site stores data objects associated with data stored in storage of the production site. The replication site may generate a plurality of points in time (PITs) from the data objects and identify a PIT from the plurality of PITs.

Claims (52)

1. A storage system comprising:

a replication site configured to communicate with a production site;

an object store located at the replication site, the object store storing data objects associated with data stored in storage of the production site;

the replication site configured to:

generate a plurality of points in time (PITs) from the data objects; and

generate a plurality of virtual machines;

copy each of the generated plurality of PITs to a volume associated with one of the virtual machines;

test the plurality of pits, wherein at least some of the plurality of PITs are tested concurrently; and

select a PIT from the plurality of PITs based on an outcome of the test.

2. The system of claim 1 , Wherein the data objects comprise (i) a set of disk objects associated with data stored in a copy of a logical unit or virtual disk at a point in time of the production site, (ii) a set of change objects associated with one or more input/output (I/O) operations on the production site, and (iii) a set of metadata objects associated with the set of change objects.

3. The system of claim 2 , wherein the replication site is configured to generate the plurality of PITs by identifying, based at least in part upon the set of metadata objects: (i) one or more disk objects associated with the PIT, and (ii) one or more change objects associated with the PIT.

4. The system of claim 3 , wherein, to generate each PIT, the replication site is configured to:

generate one or more new disk objects;

generate new data by applying the identified one or more change objects to the identified one or more disk objects; and

store the new data to the one or more new disk objects.

5. The system of claim 1 , wherein to test each PIT, the replication site is configured to identify a most recent valid PIT in relation to a time of interest.

6. The system of claim 1 , wherein to test each PIT, the replication site is configured to, at least one of, validate data of the PIT and scan data of the PIT for malicious software code.

7. The system of claim 1 , wherein the replication site is configured to provide the identified PIT to at least one of the production site and a cloud-based virtual machine.

8. The system of claim 1 , wherein the replication site is further configured to delete data objects associated with non-identified ones of the plurality of PITs.

9. The system of claim 1 , wherein the replication site is configured to identify two or more PITs from the plurality of PITs, and provide each identified PIT to an associated identified user of the storage system.

10. The system of claim 1 , wherein PIT is selected concurrently with generating the plurality of PITs.

11. A method for operating a storage system comprising:

generating an object store located at a cloud replication site, the object store storing data objects associated with data stored in storage of a production site;

generating a plurality of points in time (PITs) from the data objects;

generating a plurality of virtual machines;

copying each of the generated plurality of PITs to a volume associated with one of the virtual machines;

testing the plurality of pits, at least some of the plurality of pits being tested concurrently; and

identifying a PIT from the plurality of PITs based on an outcome of the testing.

12. The method of claim 11 , wherein the data objects comprise (i) a set of disk objects associated with data stored in a copy of a logical unit or virtual disk at a point in time of the production site, (ii) a set of change objects associated with one or more input/output (I/O) operations on the production site, and (iii) a set of metadata objects associated with the set of change objects, the method further comprising generating the plurality of PITs by identifying, based at least in part upon the set of metadata objects: (i) one or more disk objects associated with the PIT, and (ii) one or more change objects associated with the PIT.

13. The method of claim 12 , wherein generating each PIT comprises:

generating one or more new disk objects;

generating new data by applying the identified one or more change objects to the identified one or more disk objects; and

storing the new data to the one or more new disk objects.

14. The method of claim 11 ,

wherein testing any of the PITs comprises at least one of: validating data of the PIT, scanning data of the PIT for malicious software code, and identifying a most recent valid PIT in relation to a time of interest.

15. The method of claim 11 , further comprising:

providing the identified PIT to at least one of: the production site and a cloud-based virtual machine; and

deleting data objects associated with non-identified ones of the plurality of PITs.

16. The method of claim 11 , further comprising identifying two or more PITs from the plurality of PITs, and providing each identified PIT to an associated identified user of the storage system.

17. A computer program product including a non-transitory computer readable storage medium having computer program code encoded thereon that when executed on a processor of a computer causes the computer to operate a storage system, the computer program product comprising:

computer program code for generating an object store located at a cloud replication site, the object store storing data objects associated with data stored in storage of a production site;

computer program code for generating a plurality of points in time (PITs) from the data objects; and

computer program code for generating a plurality of virtual machines;

computer program code for copying each of the generated plurality of PITs to a volume associated with one of the virtual machines;

computer program code for testing each PIT, at least some of the PITs being tested concurrently; and

computer program code for identifying a PIT from the plurality of PITs based on an outcome of the testing.

18. The computer program product of claim 17 , wherein the data objects comprise (i) a set of disk objects associated with data stored in a copy of a logical unit or virtual disk at a point in time of the production site, (ii) a set of change objects associated with one or more input/output (I/O) operations on the production site, and (iii) a set of metadata objects associated with the set of change objects, the computer program product further comprising computer program code for generating the plurality of PITs by identifying, based at least in part upon the set of metadata objects: (i) one or more disk objects associated with the PIT, and (ii) one or more change objects associated with the PIT.

19. The computer program product of claim 18 , further comprising:

computer program code for generating one or more new disk objects;

computer program code for generating new data by applying the identified one or more change objects to the identified one or more disk objects;

computer program code for storing the new data to the one or more new disk objects;

wherein testing each PIT comprises at least one of: validating data of the PIT, scanning data of the PIT for malicious software code, and identifying a most recent valid PIT in relation to a time of interest.

Assignments (7)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (050724/0466) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.)
Reel/Frame 060753/0486 →
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 AT REEL 050405 FRAME 0534 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058001/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 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Oct 15, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 050724/0466 →
SECURITY AGREEMENT Recorded Sep 17, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 050405/0534 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 20, 2016
From: NATANZON, ASSAF; BARUCH, LEEHOD; BIGMAN, RON; LIEBERMAN, AMIT; SHEMER, JEHUDA
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 040687/0284 →
Cited By (1)
US 12,530,304