IP Library Granted Patent US 11,874,795
Granted Patent B2
US 11,874,795 · App. 16/885,495 · Granted Jan 16, 2024

Targetless snapshot virtual replication data pointer table

Inventors: Jeffrey Wilson (Franklin, MA); Michael Ferrari (Douglas, MA); Sandeep Chandrashekhara (Shrewsbury, MA)
Assignee: Dell Products L.P.
G06F16/128G06F16/184G06F16/188G06F16/1827G06F16/9017
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 11,874,795
App. No.
16/885,495
Granted
Jan 16, 2024
Kind
B2
Abstract

A first direct index lookup table represents the current state of a storage object using entries with references corresponding to tracks of the storage object. A second direct index lookup table represents a first targetless snapshot of the storage object. A virtual replication data pointer table maps the entries of both the first direct index lookup table and the entries of the second direct index lookup table to backend storage via a system replication data pointer table. Updates to the storage object are represented using new entries in the first direct index lookup table and the system replication data pointer table. Movement of a track that is represented in multiple targetless snapshots that are represented by multiple direct index lookup tables is represented by updating the corresponding virtual replication data pointer table and system replication data pointer table rather than updating each of the direct index lookup tables.

Claims (34)

1. An apparatus comprising:

a data storage system comprising:

a plurality of compute nodes interconnected with a plurality of drives;

a plurality of storage objects on which data is logically stored, the storage objects being backed by the drives;

a storage object for which targetless snapshots are created, each targetless snapshot of the storage object being represented by a different one of a plurality of direct index lookup tables, and all of the direct index lookup tables referencing a common set of virtual replication data pointer tables such that multiple ones of the direct index lookup tables reference individual ones of the virtual replication data pointer tables;

a first direct index lookup table that represents current state of the storage object, the first direct index lookup table comprising entries with track references for tracks of the storage object;

a second direct index lookup table that represents a first targetless snapshot of the storage object, the second direct index lookup table comprising entries with track references for tracks of the storage object; and

a virtual replication data pointer table of the common set of virtual replication data pointer tables that maps the entries of the first direct index lookup table and the entries of the second direct index lookup table to the drives such that movement of data corresponding to an entry in the first direct index lookup table and an entry in the second direct index lookup table is represented by an update of the virtual replication data pointer table without updating the first direct index lookup table and without updating the second direct index lookup table.

2. The apparatus of claim 1 comprising a system replication data pointer table with entries that map to the drives, and wherein the entries of the virtual replication data pointer table map the entries of the first direct index lookup table and the entries of the second direct index lookup table to the entries of the system replication data pointer table.

3. The apparatus of claim 2 wherein each of a plurality of same-sized zones of the entries of the first direct index lookup table and the entries of the second direct index lookup table are represented by a different virtual replication data pointer table.

4. The apparatus of claim 3 wherein an update of a track of the storage object is represented by a new entry of a virtual replication data pointer table that represents the track.

5. The apparatus of claim 4 wherein the update is further represented by a corresponding entry of the first direct index lookup table that references the new entry.

6. The apparatus of claim 5 wherein the update is further represented by a new entry of the system replication data pointer table, wherein the new entry of a virtual replication data pointer table maps to the new entry of the system replication data pointer table.

7. The apparatus of claim 1 comprising a plurality of direct index lookup tables that represent a series of targetless snapshots of the storage object, wherein movement of a track of the series of targetless snapshots of the storage obj ect is represented by updating virtual replication data pointer table such that the plurality of direct index lookup tables are not updated.

8. A method comprising:

in a data storage system comprising a plurality of compute nodes interconnected with a plurality of drives, a plurality of storage objects on which data is logically stored, the storage objects being backed by the drives, and a storage object for which targetless snapshots are created, each targetless snapshot of the storage object being represented by a different one of a plurality of direct index lookup tables, and all of the direct index lookup tables referencing a common set of virtual replication data pointer tables such that multiple ones of the direct index lookup tables reference individual ones of the virtual replication data pointer tables:

representing a current state of the storage obj ect with a first direct index lookup table comprising entries with track references for tracks of the storage object;

representing a first targetless snapshot of the storage object with a second direct index lookup table comprising entries with track references for tracks of the storage object; and

mapping the entries of the first direct index lookup table and the entries of the second direct index lookup table to the drives with a virtual replication data pointer table of the common set of virtual replication data pointer tables such that movement of data corresponding to an entry in the first direct index lookup table and an entry in the second direct index lookup table is represented by an update of the virtual replication data pointer table without updating the first direct index lookup table and without updating the second direct index lookup table.

9. The method of claim 8 wherein the data storage system comprises a system replication data pointer table with entries that map to the drives, and wherein mapping the entries of the first direct index lookup table and the entries of the second direct index lookup table to the drives with a virtual replication data pointer table comprises mapping the entries of the virtual replication data pointer table to the entries of the system replication data pointer table.

10. The method of claim 9 comprising representing each of a plurality of same-sized zones of the entries of the first direct index lookup table and the entries of the second direct index lookup table with a different virtual replication data pointer table.

11. The method of claim 10 comprising representing an update of a track of the storage object with a new entry in a virtual replication data pointer table that represents the track.

12. The method of claim 11 further comprising representing the update with a corresponding entry of the first direct index lookup table that references the new entry.

13. The method of claim 12 further comprising representing the update with a new entry of the system replication data pointer table, wherein the new entry of a virtual replication data pointer table maps to the new entry of the system replication data pointer table.

14. The method of claim 8 wherein the storage system maintains a plurality of direct index lookup tables that represent a series of targetless snapshots of the storage object, and comprising representing movement of a track of the series of targetless snapshots of the storage object by updating virtual replication data pointer table such that the plurality of direct index lookup tables are not updated.

15. A non-transitory computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method for using a computer system to generate targetless snapshots of a storage object, each targetless snapshot of the storage object being represented by a different one of a plurality of direct index lookup tables, and all of the direct index lookup tables referencing a common set of virtual replication data pointer tables such that multiple ones of the direct index lookup tables reference individual ones of the virtual replication data pointer tables, the method comprising:

representing a current state of the storage obj ect with a first direct index lookup table comprising entries with track references for tracks of the storage object;

representing a first targetless snapshot of the storage object with a second direct index lookup table comprising entries with track references for tracks of the storage object; and

mapping the entries of the first direct index lookup table and the entries of the second direct index lookup table to drives with a virtual replication data pointer table of the common set of virtual replication data pointer tables such that movement of data corresponding to an entry in the first direct index lookup table and an entry in the second direct index lookup table is represented by an update of the virtual replication data pointer table without updating the first direct index lookup table and without updating the second direct index lookup table.

16. The non-transitory computer-readable storage medium of claim 15 wherein the computer system comprises a system replication data pointer table with entries that map to the drives, and wherein mapping the entries of the first direct index lookup table and the entries of the second direct index lookup table to the drives with the virtual replication data pointer table comprises mapping the entries of the virtual replication data pointer table to the entries of the system replication data pointer table.

17. The non-transitory computer-readable storage medium of claim 16 wherein the method comprises representing each of a plurality of same-sized zones of the entries of the first direct index lookup table and the entries of the second direct index lookup table with a different virtual replication data pointer table.

18. The non-transitory computer-readable storage medium of claim 17 wherein the method comprises representing an update of a track of the storage object with a new entry in a virtual replication data pointer table that represents the track.

19. The non-transitory computer-readable storage medium of claim 18 wherein the method comprises representing the update with a corresponding entry of the first direct index lookup table that references the new entry and a new entry of the system replication data pointer table, wherein the new entry of a virtual replication data pointer table maps to the new entry of the system replication data pointer table.

20. The non-transitory computer-readable storage medium of claim 19 wherein the computer system maintains a plurality of direct index lookup tables that represent a series of targetless snapshots of the storage object, and wherein the method comprises representing movement of a track of the series of targetless snapshots of the storage object by updating virtual replication data pointer table such that the plurality of direct index lookup tables are not updated.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053574/0221) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060333/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053578/0183) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060332/0864 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053573/0535) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060333/0106 →
RELEASE OF SECURITY INTEREST AT REEL 053531 FRAME 0108 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0371 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053578/0183 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053573/0535 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053574/0221 →
SECURITY AGREEMENT Recorded Aug 18, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 053531/0108 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 28, 2020
From: WILSON, JEFFREY; FERRARI, MICHAEL; CHANDRASHEKHARA, SANDEEP
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 052772/0714 →