IP Library Granted Patent US 10,366,014
Granted Patent B1
US 10,366,014 · App. 15/492,184 · Granted Jul 30, 2019

Fast snap copy

Inventor: Richard Ruef (Santa Cruz, CA)
Assignee: EMC IP HOLDING COMPANY LLC
G06F12/121G06F3/065G06F3/0619G06F3/0685G06F12/0804G06F2212/1032G06F2212/60G06F2212/69
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,366,014
App. No.
15/492,184
Granted
Jul 30, 2019
Kind
B1
Abstract

A fast snap is a consistent point-in-time copy or logical copy of a storage object that can be created more quickly than an ordinary snap. In order to generate a fast snap a storage array creates a copy or logical copy of all of the dirty data associated with a source device by copying or logically copying dirty pages cache into a separate record in volatile memory, instantiates an unpopulated snap device that is backed by persistent storage, and generates a mapping between the record and the unpopulated snap device. The mapping includes the information needed to populate the unpopulated snap device with the dirty pages from the record. Once the fast snap has been created it is possible to service IOs to the source device and the fast snap device because the data can be accessed from the record and the cache.

Claims (41)

1. A method comprising:

generating a snap in a storage array by:

creating a separate record in volatile memory of dirty data in volatile memory associated with a source device in non-volatile data storage drives;

instantiating an unpopulated snap device;

generating a mapping between the record and the unpopulated snap device;

reporting a snap as generated on the snap device after generating the mapping; and

destaging the dirty data to the snap device and the source device after reporting the snap as generated on the snap device.

2. The method of claim 1 comprising destaging the dirty data from the record to the unpopulated snap device by flushing the dirty data to the data storage drives.

3. The method of claim 2 comprising creating the record by logically copying the dirty data from a cache associated with the memory.

4. The method of claim 3 comprising destaging the dirty data from the cache to the source device by flushing the dirty data to the data storage drives.

5. The method of claim 1 wherein creating the record of dirty data comprises creating a record of dirty pages.

6. The method of claim 1 comprising servicing IOs directed to the unpopulated snap device by accessing the record.

7. The method of claim 1 comprising creating the record by logically copying the dirty data from a cache associated with the memory.

8. The method of claim 7 comprising servicing IOs directed to the source device by accessing the cache.

9. An apparatus comprising:

a storage array comprising:

a plurality of interconnected computing nodes, each of the computing nodes comprising at least one processor and non-transitory volatile memory in which dirty data is maintained until destaged;

a plurality of groups of non-volatile data storage drives, each group of data storage drives connected with one of the computing nodes;

a source device comprising contiguous logical block addresses that map to non-contiguous addresses of the data storage drives; and

fast snap generation instructions stored on the memory that comprise:

instructions that create a separate record in the memory of the dirty data associated with the source device;

instructions that instantiate an unpopulated snap device;

instructions that generate a mapping between the record and the unpopulated snap device;

instructions that report a snap as generated on the snap device after the mapping is generated; and

instructions that destage the dirty data to the snap device and the source device after the snap is reported as generated on the snap device.

10. The apparatus of claim 9 comprising instructions that destage the dirty data from the record to the unpopulated snap device by flushing the dirty data to the data storage drives.

11. The apparatus of claim 10 wherein the record is created by logically copying the dirty data from a cache associated with the memory, and comprising instructions that destage the dirty data from the cache to the source device by flushing the dirty data to the data storage drives.

12. The apparatus of claim 11 wherein the dirty data comprises dirty pages.

13. The apparatus of claim 9 comprising instructions that service IOs directed to the unpopulated snap device by accessing the record.

14. The apparatus of claim 9 wherein the record is created by logically copying the dirty data from a cache associated with the memory, and comprising instructions that service IOs directed to the source device by accessing the cache.

15. The apparatus of claim 9 wherein the source device comprises a production device.

16. A non-transitory computer-readable media comprising:

instructions that generate a snap, comprising:

instructions that create a separate record in volatile memory comprising a logical copy of dirty data in the volatile memory associated with a source device in non-volatile data storage drives;

instructions that instantiate an unpopulated snap device;

instructions that generate a mapping between the record and the unpopulated snap device

instructions that report a snap as generated on the snap device after the mapping is generated; and

instructions that destage the dirty data to the snap device and the source device after the snap is reported as generated on the snap device.

17. The non-transitory computer-readable media of claim 16 comprising instructions that destage the dirty data from the record to the unpopulated snap device by flushing the dirty data to non-volatile data storage drives.

18. The non-transitory computer-readable media of claim 17 wherein the record is created by logically copying the dirty data from a cache associated with the memory, and comprising instructions that destage the dirty data from the cache to the source device by flushing the dirty data to the data storage drives.

19. The non-transitory computer-readable media of claim 18 comprising instructions that service IOs directed to the unpopulated snap device by accessing the record.

Assignments (8)
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 (042769/0001) Recorded Apr 26, 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 (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.)
Reel/Frame 059803/0802 →
RELEASE OF SECURITY INTEREST AT REEL 042768 FRAME 0585 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058297/0536 →
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 →
PATENT SECURITY INTEREST (CREDIT) Recorded Jun 12, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 042768/0585 →
PATENT SECURITY INTEREST (NOTES) Recorded Jun 12, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 042769/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 20, 2017
From: RUEF, RICHARD
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 042078/0159 →