Flash Storage RAID Meta Store for Power Loss Data Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Implementing RAID operations in newer storage devices like SSDs and NVDIMM-F is challenging due to their physical location in DIMM slots and control by a processor memory controller, leading to reduced I/O performance and SSD lifespan from excessive write operations during power off events.

Innovation Solution

A flash storage device with SRAM and flash memory that receives I/O attribute information from a host device, stores it in a RAID meta store area, and performs I/O operations, reducing write amplification by flushing this information to flash memory only during power off events, thus minimizing write operations to SSDs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a software RAID controller is used to enable RAID operations on SSDs, then RAID functionality is achieved, but I/O performance is reduced due to additional write operations

Engineering Contradiction:
ImproveRAID functionalityVSAvoidI/O performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent introduces a device driver as an intermediary layer between the host and SSDs that manages RAID operations. The device driver includes a write cache that temporarily stores write data before it is committed to the SSDs, reducing the number of immediate write operations and improving I/O performance while maintaining RAID functionality.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent implements a write cache that performs preliminary buffering of write operations. Data is first written to the write cache in memory, and then asynchronously transferred to the SSDs. This preliminary action decouples the host I/O operations from the actual SSD write operations, improving performance by avoiding synchronous write waits.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If a device driver with write cache is used to improve I/O performance, then write operations are reduced, but data integrity may be compromised during power off events

Engineering Contradiction:
ImproveI/O performanceVSAvoiddata integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements a feedback mechanism where the device driver monitors the write cache for data that needs to be flushed to the SSDs. A flush indicator is set when data remains in the write cache during a power off event, triggering a recovery process that reads the cached data and writes it to the SSDs to maintain data integrity.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent prepares for potential power off events by maintaining a write cache that can buffer data during normal operations. This cushioning mechanism allows the system to handle power interruptions gracefully by using the cached data for recovery, ensuring data integrity without compromising normal I/O performance.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

3Reliability

If excessive write operations are performed during power off events, then data integrity is maintained, but SSD lifespan is reduced

Engineering Contradiction:
Improvedata integrityVSAvoidSSD lifespan
Core Design Contradiction:
ReliabilityVSDuration of action of stationary object

Solution Approach 1:

The write cache acts as an intermediary that absorbs write operations during power off events. Instead of directly writing to the SSDs, data is first buffered in the write cache, which can be cleared or flushed selectively. This reduces the frequency and intensity of write operations to the SSDs, extending their lifespan while maintaining data integrity through the cache's recovery capabilities.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent implements a mechanism where data in the write cache is discarded from the cache structure but recovered by being written to the SSDs during power off events. The flush indicator triggers this recovery process, ensuring that data is not lost while reducing the need for continuous write operations that would otherwise degrade SSD lifespan.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS10445178B2Methods and systems for controlling redundant array of inexpensive disks (RAID) operations
Publication Date: 2019.10.15 SAMSUNG ELECTRONICS CO LTD
  • US10445178B2 patent drawing
  • US10445178B2 patent drawing
  • US10445178B2 patent drawing

AI summary

Methods, apparatuses, systems, and/or non-transitory computer readable media for controlling Redundant Array of Inexpensive Disks (RAID) operations by a flash storage device are described. The method includes receiving Input/Output (I/O) attribute information of a RAID operation in an I/O command from a host device. Further, the I/O attribute information is stored in a RAID meta store area reserved on the flash storage device. Further, the method includes flushing the I/O attribute information along with meta data of the flash storage device in the RAID meta store area to a flash of the flash storage device on occurrence of a sudden power off. Furthermore, the method includes transferring the I/O attribute information, flushed to the flash, to the host device for performing data correction for one or more flash storage devices in the system based on the I/O attribute information received from each flash storage device.