IP Library Granted Patent US 10,031,680
Granted Patent B2
US 10,031,680 · App. 15/197,131 · Granted Jul 24, 2018

Incremental snapshot based technique on paged translation systems

Inventors: Ajith Kumar Battaje (Karnataka, IN); Tanay Goel (Chhattisgarh, IN); Rajendra Prasad Mishra (Santa Clara, CA)
Assignee: HGST Netherlands B.V.
G06F3/0619G06F3/065G06F3/067G06F12/1027G06F2212/68G06F2212/702
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,031,680
App. No.
15/197,131
Granted
Jul 24, 2018
Kind
B2
Abstract

A system comprising a processor and a memory storing instructions that, when executed, cause the system to identify a plurality of dump units associated with a translation table in a storage device, determine a plurality of snapshot markers associated with the plurality of dump units, calculate a first value of a first snapshot marker from the plurality of snapshot markers in the storage device, identify a second snapshot marker from an additional source, the second snapshot marker having a second value satisfying the first value, retrieve a dump unit associated with the second snapshot marker from the additional source, and reconstruct the translation table using the dump unit.

Claims (53)

1. A method comprising:

identifying a plurality of dump units associated with a translation table in a storage device;

determining a plurality of snapshot markers associated with the plurality of dump units;

calculating a first value of a first snapshot marker from the plurality of snapshot markers in the storage device;

identifying a second snapshot marker from an additional source, the second snapshot marker having a second value after the first value;

retrieving a dump unit associated with the second snapshot marker from the additional source; and

reconstructing the translation table using the dump unit.

2. The method of claim 1 , wherein the first snapshot marker includes a free running incrementing counter value denoting a timestamp of sufficient granularity.

3. The method of claim 1 , wherein the first snapshot marker includes a counter value associated with an update of a reverse translation table, the counter value being incremented each time the reverse translation table is persisted.

4. The method of claim 1 , wherein the additional source is a meta-log and the first snapshot marker includes a counter value associated with a meta-log entry, the counter value being incremented each time a new meta-log entry is created.

5. The method of claim 1 , wherein the additional source includes a reverse translation table and a meta-log.

6. The method of claim 1 , further comprising:

receiving a request to reconstruct translation table statistics;

identifying a third snapshot marker from the additional source, the third snapshot marker being associated with a subset of dump groups and the third snapshot marker having a third value after the first value;

reading the subset of dump groups associated with the translation table from the additional source; and

reconstructing the translation table statistics using the subset of dump groups associated with the translation table.

7. The method of claim 1 , wherein the reconstruction of the translation table using the dump unit further comprises adding the dump unit to the translation table in memory.

8. A method comprising:

receiving a request to create a translation table entry;

logging the translation table entry in a meta-log;

incrementing a first value of a first snapshot marker associated with the meta-log;

updating a reverse translation table with the translation table entry;

determining whether the updated reverse translation table is persisted in a storage device; and

in response to determining that the updated reverse translation table is persisted in the storage device, incrementing a second snapshot marker associated with the reverse translation table.

9. The method of claim 8 , further comprising:

storing the first snapshot marker and the second snapshot marker in memory.

10. The method of claim 8 , wherein the first snapshot marker includes a free running counter value denoting a timestamp of sufficient granularity.

11. The method of claim 8 , wherein the first snapshot marker includes a counter associated with an update of a translation table, the counter being incremented each time the translation table is persisted.

12. The method of claim 8 , wherein an additional source is a meta-log and the first snapshot marker includes a counter value associated with a meta-log entry, the counter value being incremented each time a new meta-log entry is created.

13. The method of claim 8 , further comprising:

receiving a request to reconstruct translation table statistics;

identifying a third snapshot marker from an additional source, the third snapshot marker being associated with a subset of dump groups and the third snapshot marker having a third value after the first value;

reading the subset of dump groups associated with a translation table from the additional source; and

reconstructing the translation table statistics using the subset of dump groups associated with the translation table.

14. A system comprising:

a processor; and

a memory storing instructions that, when executed, cause the system to:

identify a plurality of dump units associated with a translation table in a storage device;

determine a plurality of snapshot markers associated with the plurality of dump units;

calculate a first value of a first snapshot marker from the plurality of snapshot markers in the storage device;

identify a second snapshot marker from an additional source, the second snapshot marker having a second value satisfying the first value;

retrieve a dump unit associated with the second snapshot marker from the additional source; and

reconstruct the translation table using the dump unit.

15. The system of claim 14 , wherein the first snapshot marker includes a free running counter denoting a timestamp of sufficient granularity.

16. The system of claim 14 , wherein the first snapshot marker includes a counter associated with an update of a reverse translation table, the counter being incremented each time the reverse translation table is persisted.

17. The system of claim 14 , wherein the additional source is a meta-log and the first snapshot marker includes a counter associated with a meta-log entry, the counter being incremented each time a new meta-log entry is created.

18. The system of claim 14 , wherein the additional source includes a reverse translation table and a meta-log.

19. The system of claim 14 , further comprising:

receiving a request to reconstruct translation table statistics;

identifying a third snapshot marker from the additional source, the third snapshot marker being associated with a subset of dump groups and the third snapshot marker having a third value satisfying the first value;

reading the subset of dump groups associated with the translation table from the additional source; and

reconstructing the translation table statistics using the subset of dump groups associated with the translation table.

20. The system of claim 14 , wherein the reconstruction of the translation table using the dump unit, further comprises adding the dump unit to the translation table in memory.

Assignments (12)
PARTIAL RELEASE OF SECURITY INTERESTS Recorded Apr 25, 2025
From: JPMORGAN CHASE BANK, N.A., AS AGENT
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 071382/0001 →
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
PATENT COLLATERAL AGREEMENT Recorded Aug 23, 2024
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS THE AGENT
Reel/Frame 068762/0494 →
CHANGE OF NAME Recorded Jun 27, 2024
From: SANDISK TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067982/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067567/0682 →
PATENT COLLATERAL AGREEMENT - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
PATENT COLLATERAL AGREEMENT - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
RELEASE OF SECURITY INTEREST AT REEL 052915 FRAME 0566 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 059127/0001 →
SECURITY INTEREST Recorded Feb 6, 2020
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 052915/0566 →
CORRECTIVE ASSIGNMENT TO CORRECT THE INCORRECT SERIAL NO 15/025,946 PREVIOUSLY RECORDED AT REEL: 040831 FRAME: 0265. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Sep 15, 2017
From: HGST NETHERLANDS B.V.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 043973/0762 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 6, 2016
From: HGST NETHERLANDS B.V.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 040831/0265 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 11, 2016
From: BATTAJE, AJITH KUMAR; GOEL, TANAY; MISHRA, RAJENDRA PRASAD
To: HGST NETHERLANDS B.V.
Reel/Frame 039124/0818 →
Continuity (1)
Related Publication 20180004437A1 · Jan 4, 2018