Multi-tiered Metadata Scheme for SSD Write Amplification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Data storage devices like SSDs face a tradeoff between metadata size and flexibility, leading to significant overhead in metadata storage, which can increase write amplification and reduce the useful life of SSDs due to the need for large non-volatile memory and frequent write operations.

Innovation Solution

A multi-tiered metadata scheme is employed to describe user data blocks, with upper and lower tier formats for different group sizes, reducing metadata size and write amplification by dynamically allocating metadata based on the number of user data blocks, and utilizing a metadata logging scheme to accumulate updates before transferring them to the main store.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a large non-volatile memory is used to store metadata for tracking every LBA block, then the flexibility and tracking capability of the metadata system is improved, but the device complexity and cost increase significantly

Engineering Contradiction:
Improvemetadata tracking capabilityVSAvoiddevice complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the metadata storage into multiple levels: a small non-volatile memory for critical metadata, a larger non-volatile memory for additional metadata, and volatile memory for frequently accessed metadata. This segmentation allows the system to track every LBA block with full flexibility while avoiding the complexity and cost of using a single large non-volatile memory for all metadata storage.

Inventive Principle:
Principle #1Segmentation

2Measurement precision

If metadata is stored for every individual LBA block, then the precision of data location tracking is improved, but the quantity of metadata and write amplification increases

Engineering Contradiction:
Improvedata location tracking precisionVSAvoidmetadata quantity
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent merges multiple LBA blocks into metadata entries that track ranges of blocks rather than individual blocks. The metadata structure includes start LBA and end LBA fields that define contiguous ranges, allowing precise tracking of data locations while significantly reducing the quantity of metadata needed compared to tracking every individual block separately.

Inventive Principle:
Principle #5Merging (Combining)

3Reliability

If frequent write operations are performed to update metadata, then the reliability of data location tracking is improved, but the write amplification and SSD lifespan are adversely affected

Engineering Contradiction:
Improvedata location tracking reliabilityVSAvoidwrite amplification
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent implements preliminary action by maintaining a write buffer that accumulates metadata updates before writing them to non-volatile memory. Multiple small metadata updates are buffered and then written in larger batches, reducing the frequency of write operations to the SSD while maintaining reliable data location tracking. This approach significantly reduces write amplification and extends SSD lifespan.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8402205B2Multi-tiered metadata scheme for a data storage array
Publication Date: 2013.03.19 SEAGATE TECH LLC
  • US8402205B2 patent drawing
  • US8402205B2 patent drawing
  • US8402205B2 patent drawing

AI summary

Method and apparatus for managing metadata associated with a data storage array. In accordance with various embodiments, a group of user data blocks are stored to memory cells at a selected physical address of the array. A multi-tiered metadata scheme is used to generate metadata which describes the selected physical address of the user data blocks. The multi-tiered metadata scheme provides an upper tier metadata format adapted for groups of N user data blocks, and a lower tier metadata format adapted for groups of M user data blocks where M is less than N. The generated metadata is formatted in accordance with a selected one of the upper or lower tier metadata formats in relation to a total number of the user data blocks in the group.