Tail Latency Aware Foreground Garbage Collection for SSDs

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern computer database systems face significant challenges with tail latency in Solid State Drives (SSDs), particularly due to garbage collection operations, which lead to poor performance and increased response times, especially when using log structured merge (LSM) trees.

Innovation Solution

Implementing a decision table within the SSD's flash translation layer to manage garbage collection by introducing additional threshold points for triggering foreground garbage collection, allowing for balanced input/output latency and distributing erase operations across multiple write commands to reduce worst-case scenarios.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If foreground garbage collection is performed to manage SSD storage, then storage reliability is improved, but query response time deteriorates due to operation delays

Engineering Contradiction:
Improvestorage reliabilityVSAvoidquery response time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs garbage collection operations in advance before they are critically needed. By monitoring free block thresholds and proactively executing garbage collection when thresholds are approached, the system prepares storage resources ahead of time, preventing query delays while maintaining storage reliability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent dynamically adjusts garbage collection behavior based on real-time system conditions. It monitors multiple thresholds (free blocks, query latency, write amplification) and adapts the timing and intensity of garbage collection operations accordingly, balancing storage management needs with query performance requirements.

Inventive Principle:
Principle #15Dynamics

2Quantity of substance

If garbage collection operations are executed to free storage blocks, then storage capacity is improved, but operational performance deteriorates due to concurrent query delays

Engineering Contradiction:
Improvestorage capacityVSAvoidoperational performance
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent performs partial garbage collection operations rather than complete cleanup. By collecting garbage on only a portion of blocks at a time and stopping when threshold targets are reached, it frees sufficient storage capacity without executing full garbage collection that would cause excessive performance degradation.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent implements periodic garbage collection based on monitored thresholds rather than continuous operation. It checks free block counts and performance metrics at intervals, executing garbage collection only when thresholds indicate it is appropriate, thus balancing capacity management with performance maintenance.

Inventive Principle:
Principle #19Periodic action

3Device complexity

If traditional garbage collection thresholds are used to trigger operations, then storage management is simplified, but tail latency increases due to inadequate threshold granularity

Engineering Contradiction:
Improvestorage management complexityVSAvoidtail latency
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent segments the garbage collection trigger mechanism into multiple threshold levels (e.g., different free block thresholds for different collection intensities). This segmentation allows nuanced control over when and how garbage collection occurs, reducing tail latency by preventing both premature and delayed collection while maintaining manageable complexity through structured threshold definitions.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10261897B2Tail latency aware foreground garbage collection algorithm
Publication Date: 2019.04.16 SAMSUNG ELECTRONICS CO LTD
  • US10261897B2 patent drawing
  • US10261897B2 patent drawing
  • US10261897B2 patent drawing

AI summary

A Solid State Drive (SSD) is disclosed. The SSD may include a host interface logic to receive a write command from a host and flash memory to store data. The SSD may also include an SSD controller, which may include storage for a just-in-time threshold and a tail latency threshold flash translation layer. The flash translation layer may invoke a just-in-time garbage collection strategy when the number of free pages on the SSD is less than the just-in-time threshold, and a tail latency-aware garbage collection strategy when the number of free pages is less than the tail latency threshold. The tail latency-aware garbage collection strategy may pair the write command with a garbage collection command.