IP Library Granted Patent US 8,712,962
Granted Patent B1
US 8,712,962 · App. 13/308,877 · Granted Apr 29, 2014

Snapshots in de-duplication

Inventors: Assaf Natanzon (Tel Aviv, IL); David C. Dysert (Holliston, MA); Sujit S. Naik (Northborough, MA)
Assignee: EMC Corporation
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,712,962
App. No.
13/308,877
Filed
Dec 1, 2011
Granted
Apr 29, 2014
Kind
B1
Art Unit
2163
USPC
707/634
Abstract

In a first embodiment, a method and computer program product for use in replication comprising pushing a point in time (PIT) to a de-duplication device, creating a virtual LUN based on the PIT pushed to the de-duplication device, and exposing, via a Data Protection Appliance (DPA), the virtual LUN. In a second embodiment, a method and computer program product for use in replication comprising choosing an object to be recovered at a point in time (PI), spawning a virtual machine, creating a virtual LUN based on the PIT, exposing the virtual LUN to the virtual machine, recovering the object from the PIT mounted to the virtual machine, and un-exposing the virtual LUN to the virtual machine.

Claims (51)

1. A computer implemented method for data replication, the method comprising:

pushing a point in time (PIT) to a de-duplication device;

creating a virtual logic unit number (LUN) based on the PIT pushed to the de-duplication device;

exposing, via a Data Protection Appliance (DPA), the virtual LUN; and

enabling read write IO access to the virtual LUN; wherein write IOs of the IOs are written to a journal associated with the virtual LUN; wherein a determination is made for each read IO of the IOs whether the data associated with the each read IO has been overwritten and is in the journal; and based on a determination the each read IO has been overwritten servicing the read IO from the journal and based on a determination the read IO has not been overwritten servicing the read IO from the de-duplication device.

2. The method of claim 1 further comprising:

spawning a virtual machine (VM), wherein the VM contains an application; wherein the PIT is automatically mounted to the VM; and

running the application; wherein running the application includes running a catalog service against data contained in the PIT.

3. The method of claim 2 wherein the catalog service is run from the spawned virtual machine and changes to the application are tracked in a database; wherein IOs to the virtual LUN are intercepted by a splitter.

4. The method of claim 3 wherein the application is selected from a group consisting of an e-mail application and a database application and the cataloged item is selected from the group consisting of an e-mail and a database table of the database application.

5. A computer implemented method for data replication, the method comprising:

choosing an object in an image to be recovered at a point in time (PIT) of the image stored on a de-duplication device;

spawning a virtual machine;

creating, using a replication device, a virtual logic unit number (LUN) based on the PIT on the de-duplication device; wherein the replication device creates a back-up catalog database for the files being protected on PIT image;

exposing the virtual LUN, via the replication device, to the virtual machine;

recovering the object from the PIT of the image mounted to the virtual machine; and

un-exposing the virtual LUN to the virtual machine.

6. The method of claim 5 wherein a user searches for a change in the catalog database, wherein the database tracks changes to an application and the change corresponds to data to be recovered.

7. The method of claim 6 wherein the PIT corresponds to the change the user searched.

8. The method of claim 6 wherein the virtual LUN contains the data of the change the user requested; and wherein the method further comprises enabling read write IO access to the virtual LUN; wherein write IOs of the IOs are written to a journal associated with the virtual LUN; wherein a determination is made for each read IO of the IOs whether the data associated with the each read IO has been overwritten and is in the journal; and based on a determination the each read IO has been overwritten servicing the read IO from the journal and based on a determination the read IO has not been overwritten servicing the read IO from the de-duplication device.

9. The method of claim 7 further comprising:

running the application in the VM using the data with the change the user requested.

10. The method of claim 7 further comprising:

restoring the change the user requested from the VM to a different machine running the user application.

11. A computer program product for use in replication comprising:

a non-transitory computer readable medium encoded with computer executable program code for replication of data, the code configured to enable the execution of:

pushing a point in time (PIT) to a de-duplication device;

creating a virtual logic unit number (LUN) based on the PIT pushed to the de-duplication device; and

exposing, via a Data Protection Appliance (DPA), the virtual LUN; and

enabling read write IO access to the virtual LUN; wherein write IOs of the IOs are written to a journal associated with the virtual LUN; wherein a determination is made for each read IO of the IOs whether the data associated with the each read IO has been overwritten and is in the journal; and based on a determination the each read IO has been overwritten servicing the read IO from the journal and based on a determination the read IO has not been overwritten servicing the read IO from the de-duplication device.

12. The computer program product of claim 11 the code further configured to enable the execution of:

spawning a virtual machine (VM), wherein the VM contains an application; wherein the PIT is automatically mounted to the VM; and

running the application; wherein running the application includes running a catalog service against data contained in the PIT.

13. The computer program product of claim 12 wherein the catalog service is run from the spawned virtual machine and changes to the application are tracked in a database; wherein IOs to the virtual LUN are intercepted by a splitter.

14. The computer program product of claim 13 wherein the cataloged application is selected from a group consisting of an e-mail application and a database application and the cataloged item is selected from the group consisting of e-mails and database tables of a database of the database application.

15. A computer program product for use in replication comprising:

a non-transitory computer readable medium encoded with computer executable program code for replication of data, the code configured to enable the execution of:

choosing an object in an image to be recovered at a point in time (PIT) of the image stored on a de-duplication device;

spawning a virtual machine;

creating, using a replication device, a virtual logic unit number (LUN) based on the PIT on the de-duplication device; wherein the replication device creates a back-up catalog database for the files being protected on PIT image;

exposing the virtual LUN, via the replication device, to the virtual machine;

recovering the object from the PIT of the image mounted to the virtual machine; and

un-exposing the virtual LUN to the virtual machine.

16. The computer program product of claim 15 wherein a user searches for a change in catalog database, wherein the database tracks changes to an application and the change corresponds to data to be recovered.

17. The computer program product of claim 16 wherein the PIT corresponds to the change the user searched.

18. The computer program product of claim 16 wherein the virtual LUN contains the data of the change the user requested; and wherein the code further configured to enable the read write IO access to the virtual LUN; wherein write IOs of the IOs are written to a journal associated with the virtual LUN; wherein a determination is made for each read IO of the IOs whether the data associated with the each read IO has been overwritten and is in the journal; and based on a determination the each read IO has been overwritten servicing the read IO from the journal and based on a determination the read IO has not been overwritten servicing the read IO from the de-duplication device.

19. The computer program product of claim 17 the code further configured to enable the execution of:

running the application in the VM using the data with the change the user requested.

20. The computer program product of claim 17 further comprising:

restoring the change the user requested from the VM to a different machine running the user application.

21. The computer program product of claim 17 wherein the change requested by the user is to recovers an item selected from the group consisting of an e-mail and a database table.

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 Jul 22, 2013
From: EMC INTERNATIONAL COMPANY
To: EMC CORPORATION
Reel/Frame 030847/0412 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 24, 2013
From: DYSERT, DAVID C; NAIK, SUJIT S
To: EMC CORPORATION
Reel/Frame 030480/0071 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 24, 2013
From: NATANZON, ASSAF
To: EMC INTERNATIONAL COMPANY
Reel/Frame 030480/0098 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 1, 2011
From: DYSERT, DAVID C.; NAIK, SUJIT S.
To: EMC CORPORATION
Reel/Frame 027308/0411 →