Workload-Aware I/O Scheduler for Hybrid Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current I/O schedulers in software-defined hybrid storage systems fail to effectively manage and prioritize I/O requests across a combination of Hard Disk Drives (HDDs) and Solid State Drives (SSDs), leading to performance issues and inability to meet Service Level Agreements (SLAs) for diverse workloads, especially due to differences in I/O patterns, read/write ratios, and storage block sizes.
Innovation Solution
A workload-aware I/O scheduler with a queue managing module, request controlling sub-module, request dispatching sub-module, workload property database, and traffic monitoring module, which dynamically configures workload queues based on performance parameters like IOPS, throughput, and latency to ensure each workload meets its SLA, by classifying queue depths and wait times according to specific workload characteristics.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If current I/O schedulers are used in hybrid storage systems, then HDD performance can be maintained through merging and sorting, but SSD performance deteriorates due to unnecessary merging and sorting overhead
Solution Approach 1:
The I/O scheduler is segmented into different handling paths for HDD and SSD workloads. The system divides I/O request management into separate queues and scheduling mechanisms: one path for HDD that performs merging and sorting, and another path for SSD that bypasses these operations. This segmentation allows each storage type to be optimized independently, preventing SSD performance degradation while maintaining HDD efficiency.
2Device complexity
If a single I/O scheduler serves all workloads, then device simplicity is maintained, but workload performance deteriorates due to inability to meet diverse SLA requirements
Solution Approach 1:
The I/O scheduler implements dynamic configuration where queue depths and wait times are adjusted based on workload characteristics and performance requirements. The system monitors workload properties (sequential/random I/O, read/write ratio, storage block size) and dynamically modifies scheduling parameters to meet different SLA requirements. This dynamic adaptation allows a single scheduler to effectively serve diverse workloads without requiring multiple fixed-configuration schedulers.
3Loss of time
If I/O requests are merged and sorted for all storage devices, then HDD seek time is reduced, but SSD parallelism capability is underutilized
Solution Approach 1:
The scheduling approach is customized locally for each storage device type. HDD workloads receive merging and sorting treatment to reduce seek time and improve throughput, while SSD workloads receive direct queuing without merging or sorting to exploit parallelism. The system applies different quality characteristics (scheduling treatments) to different parts (storage devices) based on their specific requirements, optimizing overall system performance.
Data Source
AI summary
A workload-aware I/O scheduler in a Software-Defined Hybrid Storage (SDHS) system is disclosed. The scheduler includes a queue managing module, a workload property database, a traffic monitoring module, and a traffic modeling module. The queue managing module further has a request receiving sub-module, a request controlling sub-module, and a request dispatching sub-module. With the operations of the queue managing module, requests for accesses of HDDs and SSDs can be separately queued. Thus, performance of the SDHS can be improved. Meanwhile, the scheduler can be used for requests from a number of workloads at the same time while meet performance requirement of each workload.


