SSD Data Management via Extent-Based Sequential Writes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Solid-state storage devices (SSDs) face limitations in write cycles and efficiency due to the need for entire erase blocks to be rewritten, leading to slower random writes and inefficient use of storage capacity in RAID systems, especially in environments with frequent data updates.

Innovation Solution

Assigning generation numbers to logical sets of data allows sequential rewriting without erasing storage locations, and matching stripe sizes to data extents in RAID systems to ensure concurrent access and minimize data loss, with data being written in sub-stripes or bursts to optimize storage and retrieval.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If random writes are performed on SSDs by erasing entire erase blocks, then data can be updated, but write speed deteriorates significantly

Engineering Contradiction:
Improvedata update capabilityVSAvoidwrite speed
Core Design Contradiction:
Ease of operationVSSpeed

Solution Approach 1:

The patent segments data into logical units called extents that can be independently managed. By segmenting data at the extent level rather than requiring erase block level operations, the system can update only the necessary portions of data without erasing entire erase blocks, thus improving write speed while maintaining data update capability

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary actions by pre-allocating erase blocks and preparing them in advance. Extents are mapped to erase blocks before actual data writes, and the system maintains extent maps that track data locations. This preliminary organization allows subsequent updates to proceed more efficiently without requiring full erase block clearing

Inventive Principle:
Principle #10Preliminary action

2Reliability

If SSDs are used in RAID mirror sets, then redundancy is provided, but storage capacity utilization deteriorates to only 50%

Engineering Contradiction:
Improvedata redundancyVSAvoidusable storage capacity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent applies local quality by providing redundancy only for specific extents rather than duplicating entire mirror sets. By using extent-based addressing and mapping, the system can provide selective redundancy where needed while allowing other portions of storage to be used for additional capacity, thus improving capacity utilization while maintaining necessary reliability

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent changes the fundamental parameter of redundancy implementation from full mirror set duplication to extent-level redundancy. By modifying how redundancy is applied (from block-level mirroring to extent-level protection), the system achieves the same reliability goal with significantly improved storage capacity utilization

Inventive Principle:
Principle #35Parameter changes

3Reliability

If entire erase blocks are rewritten for data updates, then data integrity is maintained, but the number of write cycles increases reducing SSD lifespan

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

Solution Approach 1:

The patent extracts the essential data update function from the erase block rewriting process. By separating data logic (extents) from physical storage structure (erase blocks), the system can update data without necessarily rewriting entire erase blocks, thus reducing write cycle consumption while maintaining data integrity through extent-based updates and mapping

Inventive Principle:
Principle #2Taking out (Extraction)

4Adaptability or versatility

If stripe sizes in RAID systems are independent of application data sizes, then RAID configuration is flexible, but data accessibility deteriorates when devices fail

Engineering Contradiction:
ImproveRAID configuration flexibilityVSAvoiddata accessibility
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent implements dynamics by making the extent map adaptive rather than fixed. The extent map can dynamically adjust to map extents to different physical locations and devices based on current conditions. This dynamic mapping allows the system to maintain data accessibility even when devices fail, while preserving RAID configuration flexibility through software-based rather than hardware-based constraints

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8850161B2Method of improving performance of a data storage device
Publication Date: 2014.09.30 RIVERBED TECH LLC
  • US8850161B2 patent drawing
  • US8850161B2 patent drawing
  • US8850161B2 patent drawing

AI summary

Methods are provided for efficiently storing data to a data storage device or subsystem. The data storage device may be a Solid-State Device (SSD), and may be implemented as part of a RAID (Redundant Array of Independent Disks) or other subsystem. When existing data is read and updated, and must be re-stored, the data is assembled and stored as if it were new data, and is written in a sequential manner, instead of being written to the same storage location. A newer generation number distinguishes it from the previous version. If the storage subsystem employs data striping, stripe size may be matched with the size of a logical collection of data (e.g., an extent), so that each such logical collection of data is wholly stored on just device in the storage subsystem. Concurrent device access may be supported by concurrently writing substripes of data to each device/extent.