SSD Garbage Collection Coordination for I/O Redirection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed storage systems face performance issues due to the time-consuming nature of garbage collection operations in Solid State Drives (SSDs), which can lead to temporary unavailability of data and impact Input/Output (I/O) performance if all SSDs perform garbage collection simultaneously.

Innovation Solution

Implementing a coordinated garbage collection mechanism that selects SSDs based on free erase block counts and estimates the time required for garbage collection, allowing for staggered execution to minimize the impact on I/O operations and ensure continuous data availability by redirecting read and write requests and synchronizing data changes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If garbage collection is performed on SSDs, then invalid pages are recovered and free blocks are released, but the SSD becomes temporarily unavailable and I/O performance deteriorates

Engineering Contradiction:
Improvedata availabilityVSAvoidI/O performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system segments the garbage collection process by dividing SSDs into groups and performing garbage collection on one SSD at a time rather than all simultaneously. This segmentation allows the storage system to maintain data availability while minimizing the impact on I/O performance by ensuring that at least some SSDs remain operational during garbage collection operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by monitoring the state of SSDs and identifying candidates for garbage collection before actually executing the operation. The coordinator receives information about free erase block counts and schedules garbage collection at optimal times when it will have minimal impact on I/O performance, thereby maintaining data availability while preparing for the operation in advance.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If all SSDs perform garbage collection simultaneously, then garbage collection efficiency is maximized, but the entire distributed storage system becomes unavailable

Engineering Contradiction:
Improvegarbage collection efficiencyVSAvoidsystem availability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system divides the fleet of SSDs into multiple groups and performs garbage collection on one SSD from each group at different times. This segmented approach ensures that garbage collection operations are distributed across time, preventing complete system unavailability while still maintaining high garbage collection efficiency through coordinated scheduling across multiple SSDs.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements periodic garbage collection actions by scheduling operations at intervals rather than simultaneously. The coordinator monitors SSD states and schedules garbage collection periodically on different SSDs, ensuring that the system maintains availability while garbage collection continues to proceed efficiently across the distributed storage system over time.

Inventive Principle:
Principle #19Periodic action

3Productivity

If garbage collection is delayed to maintain I/O performance, then I/O operations continue smoothly, but invalid pages accumulate and free blocks are depleted

Engineering Contradiction:
ImproveI/O performanceVSAvoidfree erase blocks
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The system implements feedback mechanisms by continuously monitoring the state of SSDs, including free erase block counts and I/O performance metrics. The coordinator receives this information and uses it to dynamically adjust the timing and scheduling of garbage collection operations, ensuring that garbage collection is performed when it will free up necessary blocks while minimizing impact on I/O performance.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system adopts a dynamic approach to garbage collection scheduling, adapting the timing and frequency of operations based on real-time system conditions. When I/O performance is high and free blocks are sufficient, garbage collection is delayed or performed on less critical SSDs. When free blocks become depleted or I/O load is low, garbage collection is accelerated, allowing the system to balance between maintaining I/O performance and preserving free block availability.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11544187B2IO redirection methods with cost estimation
Publication Date: 2023.01.03 SAMSUNG ELECTRONICS CO LTD
  • US11544187B2 patent drawing
  • US11544187B2 patent drawing
  • US11544187B2 patent drawing

AI summary

A distributed storage system node is disclosed. The distributed storage system node may include at least one storage device, which may act as the primary replica for data subject to an Input/Output (I/O) request. A cost analyzer may calculate a local estimated time required to complete the I/O request at the primary replica, and a remote estimated time required to complete the I/O request at a secondary replica of the data. An I/O redirector may direct the I/O request to either the primary replica or the secondary replica based on the local estimated time required and the one remote estimated time required.