Host Connectivity States for I/O Request Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional storage systems face inefficiencies in managing data storage and retrieval due to direct write operations to storage drives, leading to increased latency and unnecessary write operations, which can impact reliability and performance.

Innovation Solution

Implementing a system where host connectivity states are used to avoid queuing I/O requests by utilizing non-volatile random access memory (NVRAM) as a buffer for data destined to be written to storage drives, allowing for quicker access and reduced latency, and offloading device management responsibilities from storage drives to storage array controllers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If direct write operations are performed to storage drives, then data is stored reliably, but latency increases and write operations become unnecessary frequent

Engineering Contradiction:
Improvedata storage reliabilityVSAvoidwrite latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements a write buffer that temporarily holds data before it is written to storage drives. This preliminary buffering action allows multiple write requests to be accumulated and processed together, reducing the frequency of actual write operations to the drives while maintaining data reliability through proper buffering management and flush operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces a write buffer as an intermediary component between the host system and storage drives. This buffer mediates write operations by absorbing write requests, managing data temporarily, and coordinating with storage drives at an optimized pace, thereby reducing latency without compromising data integrity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If I/O requests are queued for processing, then storage drives can manage writes systematically, but latency increases due to queuing overhead

Engineering Contradiction:
Improvewrite operation efficiencyVSAvoidqueuing latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent extracts the queuing function from the storage drive and relocates it to a write buffer in memory. This separation allows the storage drive to process writes systematically while the buffer handles request accumulation and management, eliminating queuing overhead at the drive level and reducing overall latency.

Inventive Principle:
Principle #2Taking out (Extraction)

3Adaptability or versatility

If storage drives manage their own device responsibilities, then drive autonomy is maintained, but system complexity increases and management becomes difficult

Engineering Contradiction:
Improvedrive autonomyVSAvoiddevice management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a storage array controller that centralizes device management responsibilities. This controller serves multiple storage drives simultaneously, providing unified management for tasks such as write buffering, data placement, and drive coordination. This multi-functional approach maintains drive autonomy while reducing overall system complexity through centralized control.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS11803453B1Using host connectivity states to avoid queuing I/O requests
Publication Date: 2023.10.31 PURE STORAGE INC
  • US11803453B1 patent drawing
  • US11803453B1 patent drawing
  • US11803453B1 patent drawing

AI summary

Using host connectivity states to avoid queuing I/O requests: identifying a fault in data communications between a first storage system and a second storage system among a plurality of storage systems across which a dataset is synchronously replicated; updating, upon identifying the fault, an access state of a data communications path between first storage system and a host from an active state to a transitional state with respect to the dataset; and indicating, to the host, a first access state change.