Systems, methods, and devices for fault resilient storage
Abstract
A method of operating a storage device may include determining a fault condition of the storage device, selecting a fault resilient mode based on the fault condition of the storage device, and operating the storage device in the selected fault resilient mode. The selected fault resilient mode may include one of a power cycle mode, a reformat mode, a reduced capacity read-only mode, a reduced capacity mode, a reduced performance mode, a read-only mode, a partial read-only mode, a temporary read-only mode, a temporary partial read-only mode, or a vulnerable mode. The storage device may be configured to perform a namespace capacity management command received from the host. The namespace capacity management command may include a resize subcommand and/or a zero-size namespace subcommand. The storage device may report the selected fault resilient mode to a host.
Claims
exact text as granted — not AI-modified1 . A method of operating a storage array, the method comprising:
allocating a first rescue space of a first fault resilient storage device of the storage array; allocating a second rescue space of a second fault resilient storage device of the storage array; determining a fault resilient operating mode of a third fault resilient storage device of the storage array; and mapping user data from the third fault resilient storage device to the first rescue space and the second rescue space based on determining the fault resilient operating mode.
2 . The method of claim 1 , wherein:
a first block of the user data is mapped to the first rescue space; and a second block of the user data is mapped to the second rescue space.
3 . The method of claim 1 , wherein the user data comprises a strip of data.
4 . The method of claim 3 , wherein:
a first portion of the strip of data is mapped to the first rescue space; and the first portion of the strip of data comprises a number of data blocks based on a size of the strip of data and a size of the data blocks.
5 . The method of claim 4 , wherein the number of data blocks is further based on a total number of storage devices in the storage array.
6 . The method of claim 1 , further comprising reassigning at least one device identifier (ID) of the first fault resilient storage device to a device ID of the third fault resilient storage device.
7 . The method of claim 1 , further comprising redirecting one or more inputs and/or outputs (IOs) from the third fault resilient storage device to the first rescue space and the second rescue space.
8 . The method of claim 1 , wherein the first rescue space has a capacity based on a capacity of the first fault resilient storage device and a total number of storage devices in the storage array.
9 . The method of claim 3 , wherein the first rescue space has a capacity of strips based on a size of the first rescue space and a block size.
10 . A system comprising a storage array comprising:
a first fault resilient storage device; a second fault resilient storage device; a third fault resilient storage device; and a volume manger configured to:
allocate a first rescue space of the first fault resilient storage device;
allocate a second rescue space of the second fault resilient storage device;
determine a fault resilient operating mode of the third fault resilient storage device; and
map user data from the third fault resilient storage device to the first rescue space and the second rescue space based on determining the fault resilient operating mode.
11 . The system of claim 10 , wherein the volume manager is further configured to:
map a first block of the user data to the first rescue space; and map a second block of the user data to the second rescue space.
12 . The system of claim 10 , wherein:
the user data comprises a strip of data; and the volume manager is further configured to map a first portion of the strip of data to the first rescue space.
13 . The system of claim 12 , wherein the first portion of the strip of data comprises a number of data blocks based on a size of the strip of data and a size of the data blocks.
14 . The system of claim 13 , wherein the number of data blocks is further based on a total number of storage devices in the storage array.
15 . A method of operating a storage array, the method comprising:
determining a first parameter of a first fault resilient storage device of the storage array; determining a second parameter of a second fault resilient storage device of the storage array; and determining a quality-of-service (QoS) of the storage array based on the first parameter and the second parameter.
16 . The method of claim 15 , further comprising adjusting the first parameter based on the QoS.
17 . The method of claim 16 , wherein the first parameter is adjusted automatically based on monitoring the first parameter.
18 . The method of claim 16 , wherein the first parameter is adjusted automatically based on monitoring the second parameter.
19 . The method of claim 16 , wherein the first parameter is adjusted by configuring a component of the storage array.
20 . The method of claim 16 , wherein the first parameter is adjusted by controlling the operation of a component of the storage array.
21 . The method of claim 15 , wherein the first parameter comprises one of a number of storage devices in the storage array, a number of data blocks in a strip of user data for the first fault resilient storage device, a write method for redirecting data from the first fault resilient storage device to the second fault resilient storage device, a number of faulty storage devices supported by the storage array, or a storage capacity of the first fault resilient storage device.
22 . A system comprising a storage array comprising:
a first fault resilient storage device; a second fault resilient storage device; and a volume manger configured to:
determine a first parameter of a first fault resilient storage device;
determine a second parameter of a second fault resilient storage device; and
determine a quality-of-service (QoS) of the storage array based on the first parameter and the second parameter.
23 . The system of claim 22 , wherein the volume manger is further configured to adjust the first parameter based on the QoS.
24 . The system of claim 23 , wherein the volume manger is further configured to adjust the first parameter automatically based on monitoring the first parameter.
25 . The system of claim 23 , wherein the volume manger is further configured to adjust the first parameter automatically based on monitoring the second parameter.Join the waitlist — get patent alerts
Track US2022291996A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.