Adaptive Cache Load Balancer for SSD Cloud Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional load balancers in cloud computing storage systems fail to effectively manage workload spikes, leading to performance degradation due to their inability to adaptively distribute I/O operations across SSDs in a multi-tier storage system.

Innovation Solution

An adaptive cache load balancer (ACLB) that detects workload changes using a spike-aware algorithm, categorizes workload spikes into different ranges, and employs a JSQ-based runtime random-greedy algorithm or optimization framework to distribute I/O streams across SSDs, balancing throughput, bandwidth, storage space, and wear-leveling to improve performance and extend SSD lifetimes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional load balancers (random and greedy algorithms) are used to distribute workload across SSDs, then the system structure remains simple and easy to implement, but performance degrades significantly during workload spikes

Engineering Contradiction:
ImproveI/O performance during workload spikesVSAvoidload balancing algorithm complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The load balancing algorithm dynamically adapts its behavior based on real-time workload conditions. During normal operation, it uses simple random or greedy algorithms. When a workload spike is detected through monitoring I/O queue depth and completion rates, it automatically switches to an adaptive algorithm that selects SSDs based on current load conditions, thereby improving performance during spikes without permanently increasing system complexity

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameters of the load balancing algorithm based on workload conditions. By monitoring key parameters such as I/O queue depth and completion rates, the system adjusts the algorithm's behavior - using different selection criteria for SSDs depending on whether the system is experiencing normal load or a workload spike, thus optimizing performance for different operational states

Inventive Principle:
Principle #35Parameter changes

2Loss of time

If SSDs are used as performance cache tier to absorb hot datasets, then I/O response time is reduced, but SSD wear increases due to concentrated write operations

Engineering Contradiction:
ImproveI/O response timeVSAvoidSSD lifetime
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The load balancing algorithm applies different distribution strategies to different SSDs based on their local conditions. When workload spikes are detected, the adaptive algorithm selects SSDs with lower current load or better wear-leveling status, thereby distributing write operations more evenly across the SSD tier and preventing any single SSD from becoming a bottleneck or wearing out prematurely

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system implements feedback mechanisms by continuously monitoring SSD performance metrics including I/O queue depth, completion rates, and wear levels. This feedback information is used to dynamically adjust the load balancing decisions, ensuring that SSDs are selected for new I/O operations based on their current state, which helps prevent overload and extends overall SSD tier reliability

Inventive Principle:
Principle #23Feedback

3Productivity

If adaptive load balancing with spike-aware algorithms is implemented, then workload distribution during spikes is improved, but computational overhead increases

Engineering Contradiction:
Improveworkload distribution efficiencyVSAvoidcomputational overhead
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The adaptive algorithm is not always active but is triggered only when workload spikes are detected through monitoring thresholds. During normal operation, the system uses lightweight random or greedy algorithms with minimal computational overhead. When spike conditions are detected (excessive I/O queue depth or low completion rates), the more computationally intensive adaptive algorithm is activated temporarily to redistribute the spike workload, thus limiting the computational overhead to only when necessary

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11403220B2Method and apparatus for adaptive cache load balancing for SSD-based cloud computing storage system
Publication Date: 2022.08.02 SAMSUNG ELECTRONICS CO LTD
  • US11403220B2 patent drawing
  • US11403220B2 patent drawing
  • US11403220B2 patent drawing

AI summary

An apparatus, a method, a method of manufacturing an apparatus, and a method of constructing an integrated circuit are provided. A processor of an application server layer detects a degree of a change in a workload in an input/output stream received through a network from one or more user devices. The processor determines a degree range, from a plurality of preset degree ranges, that the degree of the change in the workload is within. The processor determines a distribution strategy, from among a plurality of distribution strategies, to distribute the workload across one or more of a plurality of solid state devices (SSDs) in a performance cache tier of a centralized multi-tier storage pool, based on the determined degree range. The processor distributes the workload across the one or more of the plurality of solid state devices based on the determined distribution strategy.