IP Library Granted Patent US 11,210,183
Granted Patent B2
US 11,210,183 · App. 16/741,952 · Granted Dec 28, 2021

Memory health tracking for differentiated data recovery configurations

Inventors: Ariel Navon (Revava, IL); Alex Bazarsky (Holon, IL); Eran Sharon (Rishon Lezion, IL); Idan Alrod (Herzeliya, IL)
Assignee: Western Digital Technologies, Inc.
G06F11/1469G06F3/067G06F3/0614G06F3/0653G06F11/076G06F11/1451G06F11/1461G06F11/1464G06F11/3034
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,210,183
App. No.
16/741,952
Granted
Dec 28, 2021
Kind
B2
Abstract

Example systems and methods provide differentiated data recovery configurations based on memory health data. A distributed storage system, such as a cloud-based storage system, stores backup data from a remote storage device using a first data recovery configuration. Based on memory health data collected from the remote storage device, a change in a memory health state of the remote storage device may be determined. Responsive to the change in the memory health state, a different data recovery configuration may be used for storing backup data going forward and reallocating previously stored backup data in the distributed storage system.

Claims (106)

1. A computer-implemented method, comprising:

storing, using a first data recovery configuration, a redundant set of data from a remote storage device to a distributed storage system, wherein the distributed storage system includes an array of non-volatile storage devices configured to store the redundant set of data from the remote storage device;

receiving memory health data associated with the remote storage device, wherein the memory health data corresponds to a memory health state of a non-transitory medium of the remote storage device;

determining, based on the memory health data, a change in the memory health state of the non-transitory medium of the remote storage device; and

reallocating, using a second data recovery configuration, the redundant set of data in the distributed storage system responsive to the change in the memory health state.

2. The computer-implemented method of claim 1 , wherein:

the remote storage device is a non-volatile memory device at a site that is remote from the distributed storage system; and

reallocating the redundant set of data in the distributed storage system comprises periodically backing up a difference between a current set of data stored on the remote storage device and a comprehensive copy of data stored on the remote storage device at an earlier time.

3. The computer-implemented method of claim 1 , further comprising:

determining a periodic backup configuration for the remote storage device;

determining at least one initial memory health value for the remote storage device; and

determining, based on the at least one initial memory health value and the periodic backup configuration, the first data recovery configuration.

4. The computer-implemented method of claim 3 , further comprising:

determining a service level for at least one system resource of the distributed storage system;

determining, based on the service level, an allocation of the at least one system resource to storing the redundant set of data in the distributed storage system, wherein determining the first data recovery configuration is further based on the allocation of the at least one system resource; and

determining, based on the allocation of the at least one system resource and the change in the memory health state, the second data recovery configuration.

5. The computer-implemented method of claim 1 , wherein:

storing, using the first data recovery configuration, the redundant set of data in the distributed storage system includes encoding the redundant set of data in a first plurality of encoded data symbols according to a first parity level;

reallocating, using the second data recovery configuration, the redundant set of data in the distributed storage system includes encoding at least a portion of the redundant set of data in a second plurality of encoded data symbols according to a second parity level; and

the second parity level accommodates a different error rate for recovery of the portion of the redundant set of data than the first parity level.

6. The computer-implemented method of claim 1 , wherein the memory health data includes at least one memory health value selected from:

a bit error rate value;

a write/erase cycles value;

a program loop counter value;

an erase loop counter value;

a leak detection measurement value;

an erratic program disturbance value;

a bad blocks value; or

a voltage margin value.

7. The computer-implemented method of claim 1 , further comprising:

receiving the redundant set of data from the remote storage device according to a periodic backup schedule, wherein receiving memory health data from the remote storage device is executed in conjunction with receiving the redundant set of data according to the periodic backup schedule.

8. The computer-implemented method of claim 1 :

further comprising:

determining a plurality of physical storage units in the remote storage device; and

storing reference values that associate the redundant set of data stored in the distributed storage system with the plurality of physical storage units storing corresponding data in the remote storage device;

wherein:

receiving memory health data from the remote storage device includes receiving at least one memory health value for each physical storage unit of the plurality of physical storage units;

determining the change in the memory health state includes:

determining that at least one memory health value for a first physical storage unit of the plurality of physical storage units fulfills a decreased reliability condition; and

determining that at least one memory health value for a second physical storage unit of the plurality of physical storage units does not fulfill the decreased reliability condition;

reallocating, using the second data recovery configuration, the set of redundant data in the distributed storage system includes storing, responsive to determining the decreased reliability condition, data associated with the first physical storage unit using the second data recovery configuration; and

data associated with the second physical storage unit remains stored using the first data recovery configuration.

9. The computer-implemented method of claim 1 , wherein determining the change in the memory health state includes:

determining at least one decreased reliability threshold; and

evaluating the memory health data against the at least one decreased reliability threshold.

10. The computer-implemented method of claim 1 , further comprising:

collecting historical memory health data for a population of remote storage devices of a remote storage device type associated with the remote storage device;

determining, based on the collected historical memory health data, a data reliability model for the remote storage device type; and

determining, based on the data reliability model, at least one decreased reliability threshold, wherein determining the change in the memory health state includes evaluating the memory health data against the at least one decreased reliability threshold.

11. A system, comprising:

a storage system configured to store, using a first data recovery configuration, a redundant set of data from a remote storage device, wherein the storage system includes an array of non-volatile storage devices configured to store the redundant set of data from the remote storage device;

a memory health monitor configured to receive memory health data associated with the remote storage device, wherein the memory health data corresponds to a memory health state of a non-transitory medium of the remote storage device; and

a reliability manager configured to:

determine, based on the memory health data, a change in a memory health state of the remote storage device; and

initiate, responsive to the change in the memory health state, a second data recovery configuration, wherein the storage system is further configured to store, using the second data recovery configuration, redundant data from the remote storage device.

12. The system of claim 11 , wherein:

the remote storage device is a non-volatile memory device at a site that is remote from the storage system; and

the storage system is further configured to periodically store a difference between a current set of data stored on the remote storage device and a comprehensive copy of data stored on the remote storage device at an earlier time.

13. The system of claim 11 :

further comprising:

a backup interface configured to determine a periodic backup configuration for the remote storage device;

wherein:

the reliability manager is further configured to:

determine at least one initial memory health value for the remote storage device; and

determine, based on the at least one initial memory health value and the periodic backup configuration, the first data recovery configuration.

14. The system of claim 13 , wherein:

the reliability manager is further configured to:

determine a service level for at least one system resource of the storage system;

determine, based on the service level, an allocation of the at least one system resource to storing redundant data in the storage system, wherein the first data recovery configuration is further based on the allocation of the at least one system resource; and

determine, based on the allocation of the at least one system resource and the change in the memory health state, the second data recovery configuration.

15. The system of claim 11 , wherein:

the storage system is further configured to:

encode, responsive to the first data recovery configuration, the redundant set of data in a first plurality of encoded data symbols according to a first parity level; and

encode, responsive to the second data recovery configuration, redundant data in a second plurality of encoded data symbols according to a second parity level; and

the second parity level is configured to accommodate a different error rate for recovery of data than the first parity level.

16. The system of claim 11 :

further comprising:

a backup interface configured to receive backup data from the remote storage device according to a periodic backup schedule;

wherein:

the memory health monitor is further configured to receive memory health data from the remote storage device in conjunction with the backup interface receiving backup data according to the periodic backup schedule.

17. The system of claim 11 , wherein:

the memory health monitor is further configured to:

determine a plurality of physical storage units in the remote storage device;

store reference values that associate data stored in the storage system with the plurality of physical storage units storing corresponding user data in the remote storage device; and

receive at least one memory health value for each physical storage unit of the plurality of physical storage units;

the reliability manager is further configured to:

determine that at least one memory health value for a first physical storage unit of the plurality of physical storage units fulfills a decreased reliability condition; and

determine that at least one memory health value for a second physical storage unit of the plurality of physical storage units does not fulfill the decreased reliability condition;

the storage system is further configured to:

store, responsive to determining the decreased reliability condition, redundant data associated with the first physical storage unit using the second data recovery configuration; and

redundant data associated with the second physical storage unit remains stored using the first data recovery configuration.

18. The system of claim 11 , wherein:

the reliability manager is further configured to:

determine at least one decreased reliability threshold; and

evaluate the memory health data against the at least one decreased reliability threshold.

19. The system of claim 11 , wherein:

the reliability manager is further configured to:

access historical memory health data for a population of remote storage devices of a remote storage device type associated with the remote storage device;

determine, based on the historical memory health data, a data reliability model for the remote storage device type;

determine, based on the data reliability model, at least one decreased reliability threshold; and

evaluate the memory health data against the at least one decreased reliability threshold.

20. A system, comprising:

a storage system configured to store, using a first data recovery configuration, a redundant set of data from a remote storage device, wherein the storage system includes an array of non-volatile storage devices configured to store the redundant set of data from the remote storage device;

means for receiving memory health data associated with the remote storage device, wherein the memory health data corresponds to a memory health state of a non-transitory medium of the remote storage device;

means for determining, based on the memory health data, a change in a memory health state of the remote storage device; and

means for initiating, responsive to the change in the memory health state, a second data recovery configuration, wherein the storage system is further configured to store, using the second data recovery configuration, redundant data from the remote storage device.

Assignments (5)
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 052025 FRAME 0088 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058965/0699 →
SECURITY INTEREST Recorded Feb 26, 2020
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 052025/0088 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 11, 2020
From: NAVON, ARIEL; BAZARSKY, ALEX; SHARON, ERAN; ALROD, IDAN
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 051786/0116 →
Continuity (1)
Related Publication 20210216412A1 · Jul 15, 2021
Cited By (3)
US 12,316,490 US 12,346,193 US 12,360,812