I/O Request Mirroring in Clustered Storage Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Clustered storage systems face inefficiencies in I/O processing due to computationally intensive I/O shipping, especially in failover scenarios where data ownership transfer and rebuilding are time-consuming and complex.

Innovation Solution

Implementing I/O mirroring between storage nodes, allowing one node to process data on behalf of another without transferring the entire I/O request, and enabling seamless ownership transfer and data rebuilding to maintain high availability and reduce failover time.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If I/O shipping is used to transfer I/O requests between storage controllers, then data availability is maintained during failover, but computational overhead and processing time increase significantly

Engineering Contradiction:
Improvedata availabilityVSAvoidI/O processing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by maintaining pre-synchronized mirror copies of data across multiple storage controllers before failover is needed. When a failover condition occurs, the standby controller already has the data ready to process I/O requests immediately, eliminating the time-consuming data transfer that would otherwise be required during failover.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The invention creates and maintains duplicate copies of data on different storage controllers through continuous mirroring operations. Instead of transferring data during failover, the system already has identical copies available on standby controllers, allowing immediate I/O processing without the computational overhead of real-time data shipping.

Inventive Principle:
Principle #26Copying

2Reliability

If I/O shipping is implemented to enable failover processing, then redundancy is achieved, but computational complexity and resource consumption increase

Engineering Contradiction:
Improvefailover capabilityVSAvoidI/O processing complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system merges the data storage and processing functions across multiple controllers by maintaining synchronized mirror copies. Instead of having one controller own data exclusively and ship it during failover, multiple controllers simultaneously maintain identical data copies, allowing any controller to process I/O requests without complex ownership transfer protocols.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

Each storage controller is designed to be universal and capable of processing any I/O request for any logical volume in the cluster, not just the volumes it exclusively owns. This multi-functionality is achieved through continuous data mirroring, allowing any controller to immediately handle I/O requests regardless of which controller originally received them, simplifying the failover mechanism.

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

3Productivity

If exclusive data ownership is assigned to one storage controller, then I/O processing efficiency is improved for that controller, but failover time and data rebuilding complexity increase

Engineering Contradiction:
ImproveI/O processing efficiencyVSAvoidfailover time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

While maintaining local ownership for efficient I/O processing, the system enhances each controller's local data quality by continuously mirroring data to other controllers. This creates a distributed redundancy where each controller has both local ownership efficiency and local data copies for immediate failover capability, eliminating the trade-off between efficiency and failover speed.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS9274901B2I/O request mirroring in a clustered storage system
Publication Date: 2016.03.01 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LTD
  • US9274901B2 patent drawing
  • US9274901B2 patent drawing
  • US9274901B2 patent drawing

AI summary

Clustered storage systems and methods are presented herein. One clustered storage system includes a logical volume comprising first and second pluralities of storage devices. The first plurality of storage devices is different from the second plurality of storage devices and includes at least the same data as the second plurality of devices. The storage system also includes a first storage node operable to process first I/O requests to the first plurality of storage devices and a second storage node communicatively coupled to the first storage node and operable to process second I/O requests to the second plurality of storage devices. An I/O request of the first I/O requests initiates a redirection condition that the first storage node detects. Then, based on the redirection condition, the first storage node directs the second storage node to process data of the I/O request.