Solid-State Storage Data Grouping by Expected Lifespan

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional storage systems face inefficiencies in garbage collection due to the need to rewrite data frequently, which consumes resources and wears out solid-state storage devices, as they lack an effective method to group data with similar expected lifespans together.

Innovation Solution

A tagging module generates tags for data sets based on various attributes, allowing a storage controller to determine the expected lifespan of each set and group data with similar lifespans together, reducing the need for frequent rewrites during garbage collection.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Duration of action of stationary object

If traditional storage systems perform garbage collection without grouping data by lifespan, then data management is simple, but the number of rewrites increases and storage device lifespan decreases

Engineering Contradiction:
Improvestorage device lifespanVSAvoiddata management complexity
Core Design Contradiction:
Duration of action of stationary objectVSDevice complexity

Solution Approach 1:

The patent segments data into different groups based on their expected lifespan characteristics by assigning lifespan tags (e.g., short-lived, medium-lived, long-lived). This segmentation allows the garbage collection process to treat different data groups differently, rewriting only the necessary portions and avoiding unnecessary rewrites of data that will be retained, thereby extending storage device lifespan without requiring complete system redesign.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary action by tagging data with expected lifespan information at the time of data placement or before garbage collection. This advance classification enables the garbage collection process to efficiently identify which data blocks need rewriting and which can be skipped, reducing the total number of rewrites and extending storage device lifespan without adding complex real-time decision-making during the collection process.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If data is frequently rewritten during garbage collection, then storage space is reclaimed efficiently, but resource consumption increases and storage device wears out faster

Engineering Contradiction:
Improvegarbage collection efficiencyVSAvoidresource consumption
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent applies local quality by treating different data blocks with different rewriting behaviors based on their individual lifespan characteristics. Instead of uniformly rewriting all data blocks during garbage collection, the system applies selective rewriting only to blocks tagged as short-lived or medium-lived, while preserving long-lived blocks. This localized approach reclaims necessary storage space while minimizing unnecessary resource consumption.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system changes the parameter of data blocks by assigning lifespan tags that indicate their expected retention duration. This parameter change enables the garbage collection algorithm to adjust its rewriting behavior dynamically - rewriting data blocks with short expected lifespans while skipping those with long lifespans, thereby improving garbage collection efficiency without proportionally increasing resource consumption.

Inventive Principle:
Principle #35Parameter changes

3Quantity of substance

If all data blocks are rewritten during garbage collection, then storage space is fully reclaimed, but the process consumes excessive resources and wears out solid-state storage faster

Engineering Contradiction:
Improvestorage space reclamationVSAvoidstorage device wear
Core Design Contradiction:
Quantity of substanceVSObject-generated harmful factors

Solution Approach 1:

The patent segments the data population into distinct lifespan categories (short-lived, medium-lived, long-lived) using tagging. During garbage collection, this segmentation enables selective rewriting where only short-lived and medium-lived data blocks are rewritten to reclaim space, while long-lived blocks are preserved. This approach achieves effective storage space reclamation while minimizing the harmful effect of excessive rewrites on storage device wear.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system converts the potentially harmful effect of frequent rewrites into a benefit by using lifespan tagging to identify which data blocks are candidates for rewriting. Data blocks tagged as short-lived are intentionally rewritten and reclaimed, while long-lived blocks are protected from unnecessary rewrites. This transforms the rewrite operation from a uniformly harmful process into a selective, beneficial space-reclamation mechanism that extends device lifespan.

Inventive Principle:
Principle #22Blessing in disguise (Convert harm into benefit)

Data Source

PatentUS12135888B2Intelligent grouping of data based on expected lifespan
Publication Date: 2024.11.05 PURE STORAGE INC
  • US12135888B2 patent drawing
  • US12135888B2 patent drawing
  • US12135888B2 patent drawing

AI summary

A storage system includes solid-state storage devices and a storage controller operatively coupled to the solid-state storage devices, the storage controller including a processing device, to store sets of data at one or more solid-state storage devices of the plurality of solid-state storage devices. The processing device may also generate tags for each of the sets of data based on one or more metadata items associated with each set of data. The processing device may also determine an expected lifespan for each set of data based on the one or more tags generated for the respective set of data. The processing device may also group each of the one or more sets of data into respective ones of a plurality of memory blocks based on the expected lifespan for each set of data, wherein each memory block corresponds to sets of data of a particular expected lifespan.