Parallel Sub-I/O Request Handling in Data Storage Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In data storage systems, existing methods for processing host I/O requests are inefficient due to serial handling of extents, which limits performance and resource utilization, especially when underlying storage is allocated on an as-needed basis for 'thin' logical units (TLUs).

Innovation Solution

The technique involves issuing multiple sub-I/O requests concurrently for extents of underlying storage, with the option to reorder transfer initiation responses to maintain address ordering, and returning mapping information in a single response to enhance efficiency and performance, utilizing a memory-based storage cache for optimized data transfer.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple sub-I/O requests are issued concurrently for extents of underlying storage, then processing performance and resource utilization are improved, but complexity of request management and re-ordering logic increases

Engineering Contradiction:
Improveprocessing performanceVSAvoidrequest management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The host I/O request is segmented into multiple sub-I/O requests, each targeting a specific extent of underlying storage. This segmentation enables concurrent processing of different extents while maintaining the ability to manage each sub-request independently, thus improving performance without overwhelming system complexity

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Mapping information for all extents is obtained in advance before issuing sub-I/O requests. This preliminary action allows the system to prepare all necessary mapping data and request structures beforehand, enabling efficient concurrent processing while reducing the complexity of real-time request management

Inventive Principle:
Principle #10Preliminary action

2Loss of energy

If mapping information for all extents is returned in a single mapping response, then messaging overhead is reduced and efficiency is improved, but the complexity of handling and processing the consolidated information increases

Engineering Contradiction:
Improvemessaging overheadVSAvoidinformation processing complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

Mapping information for all extents is merged into a single mapping response instead of being returned separately for each extent. This consolidation reduces the number of messages exchanged and lowers messaging overhead, while the structured format of the combined response makes it manageable for processing

Inventive Principle:
Principle #5Merging (Combining)

3Stability of the object's composition

If extents are transferred in address order to maintain logical ordering, then interface consistency is maintained, but transfer speed may be reduced compared to parallel transfer

Engineering Contradiction:
Improveaddress ordering consistencyVSAvoidtransfer speed
Core Design Contradiction:
Stability of the object's compositionVSSpeed

Solution Approach 1:

The system dynamically handles the transfer of extents by initiating multiple sub-I/O requests concurrently and then re-ordering the responses to match address order before presenting them to the host-side interface. This dynamic approach maintains consistency while maximizing transfer speed through parallel operations

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

A re-ordering mechanism acts as an intermediary between the concurrent sub-I/O requests and the host-side interface. This intermediary receives responses in any order from parallel transfers, re-orders them according to address sequence, and then presents them to the interface, thus maintaining consistency without sacrificing transfer speed

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9612756B1Data storage system with parallel handling of sub-I/O requests for individual host I/O requests
Publication Date: 2017.04.04 EMC IP HLDG CO LLC
  • US9612756B1 patent drawing
  • US9612756B1 patent drawing
  • US9612756B1 patent drawing

AI summary

A method in a data storage system includes receiving a host I/O request from a host-side interface that specifies a range of logical block addresses (LBAs) of a mapped logical unit (MLU) of storage that is mapped through a device-side interface to underlying logical units of storage. Mapping information is obtained for extents of the underlying logical units of storage mapped to sub-ranges of the range of LBAs. Sub-I/O requests for the extents are concurrently issued to the device-side interface based on the mapping information. The device-side interface provides transfer initiation responses to initiate transfer of the extents, the responses being received and forwarded to the host-side interface to cause the host-side interface to transfer the extents in a transfer phase. The transfer initiation responses may be re-ordered as necessary to enable the host-side interface to transfer the extents in address order in satisfaction of the host I/O request.