Storage Queue Segmentation for Disk Head Seeking Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Storage systems face performance constraints due to overwhelming backend resources and inefficient disk access, leading to delayed requests and reduced throughput, especially in scenarios with burst loads and uneven workload distribution.

Innovation Solution

Implementing a double queue technique with an incoming FIFO queue and an ordered queue for RAID group requests, where requests are processed in order by logical block address (LBA) and RAID group, preventing resource overload and optimizing disk head seeking.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If requests are processed using a single FIFO queue, then implementation is simple, but disk head seeking is excessive and throughput is reduced

Engineering Contradiction:
Improvequeue structureVSAvoidthroughput
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The single FIFO queue is segmented into two separate queues: an incoming queue for receiving requests and an ordered queue for processing requests in LBA order. This segmentation allows the system to maintain simplicity in request reception while improving throughput through ordered processing, resolving the contradiction between simple implementation and high productivity.

Inventive Principle:
Principle #1Segmentation

2Productivity

If requests are processed in LBA order using an ordered queue, then disk head seeking is reduced, but request processing delay increases due to ordering overhead

Engineering Contradiction:
Improvedisk access efficiencyVSAvoidrequest processing delay
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

Requests are preliminarily ordered by LBA in the ordered queue before being processed by the disk drive. By performing the ordering action in advance and maintaining a ready-to-process ordered queue, the system reduces disk head seeking during actual processing while minimizing the time loss associated with ordering operations.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If backend resources are overwhelmed with concurrent requests, then system capacity is utilized maximally, but request processing quality deteriorates and starvation occurs

Engineering Contradiction:
Improvesystem capacity utilizationVSAvoidrequest processing fairness
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system dynamically manages the ordered queue by continuously transferring requests from the incoming queue to the ordered queue based on processing status. This dynamic adjustment allows the system to maintain high capacity utilization while ensuring fair processing through LBA ordering, preventing starvation of any particular request.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8966173B1Managing accesses to storage objects
Publication Date: 2015.02.24 EMC IP HLDG CO LLC
  • US8966173B1 patent drawing
  • US8966173B1 patent drawing
  • US8966173B1 patent drawing

AI summary

A method is used in managing accesses to storage objects. Access I/Os being directed to at least one storage object are received into a first queue that operates on a first in first out basis. In accordance with the first in first out basis, a batch of the access I/Os is created from the first queue. The batch is transferred to a second queue that is controlled by ordering logic. The batch in the second queue is ordered in accordance with the ordering logic. All of the access I/Os from the second queue are processed in order, before any additional access I/Os are added to the second queue.