Storage Processor Status Synchronization for Seamless Failover

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In high-availability data arrays, active and passive storage processors may not always see the same status of the data array, leading to inconsistencies that can hinder seamless transitions and data synchronization.

Innovation Solution

A method where the active storage processor and passive storage processor exchange status indicators to synchronize their views of the data array, with normalization techniques such as preventing access to certain drives or redirecting IO commands if inconsistencies are detected, ensuring both processors see the same status before the passive processor transitions to an active state.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If the passive storage processor transitions to active status without status synchronization, then the transition speed is improved, but the data consistency and system reliability deteriorate

Engineering Contradiction:
Improvetransition speedVSAvoiddata consistency
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The system performs preliminary status synchronization between the active and passive storage processors before the passive processor transitions to active status. The active processor provides a status change indicator, and both processors exchange data array status indicators to ensure they see the same status before the transition occurs. This preliminary action prevents inconsistency during the transition.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms where the passive storage processor sends a join request indicator to the active processor, and the active processor responds with a status change indicator. Both processors continuously exchange status indicators to confirm they have consistent views of the data array status, creating a closed-loop feedback system that ensures reliability.

Inventive Principle:
Principle #23Feedback

2Device complexity

If the active and passive storage processors maintain independent status views, then the system complexity is reduced, but the synchronization accuracy and data integrity worsen

Engineering Contradiction:
Improvesystem complexityVSAvoidstatus synchronization accuracy
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The system merges the status views of the active and passive storage processors by having them continuously exchange and compare status indicators. Both processors maintain their own status views but regularly synchronize them through message exchange, ensuring they see the same data array status without requiring a single centralized status repository.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The status indicators act as intermediaries between the active and passive storage processors. These indicators carry status information back and forth, allowing the processors to compare their views and detect inconsistencies without directly sharing their internal state representations, thus maintaining independence while achieving synchronization.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If status normalization is performed by preventing access to certain drives, then the status consistency is improved, but the system productivity and resource utilization deteriorate

Engineering Contradiction:
Improvestatus consistencyVSAvoidsystem productivity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system dynamically adjusts drive accessibility based on the detected status inconsistency. When inconsistency is detected, the active processor prevents the passive processor from seeing certain drives to normalize status. Once consistency is achieved, normal access is restored. This dynamic adjustment ensures consistency only when necessary, minimizing impact on productivity.

Inventive Principle:
Principle #15Dynamics

4Reliability

If the system implements comprehensive status synchronization protocols, then the data integrity is improved, but the transition time and operational overhead worsen

Engineering Contradiction:
Improvedata integrityVSAvoidtransition time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system implements partial synchronization by exchanging only the critical status indicators needed to ensure consistency, rather than synchronizing all possible state information. The active processor sends a status change indicator and both processors exchange data array status indicators, providing just enough information to ensure integrity without excessive overhead.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS9405488B1System and method for storage management
Publication Date: 2016.08.02 EMC IP HLDG CO LLC
  • US9405488B1 patent drawing
  • US9405488B1 patent drawing
  • US9405488B1 patent drawing

AI summary

A method, computer program product, and computing system for receiving, on an active storage processor from a passive storage processor, a join request indicator. The join request indicator indicates that the passive storage processor wants to transition to an active status. The active storage processor and the passive storage processor are both coupled to a data array. A status change indicator is provided from the active storage processor to the passive storage processor, wherein the status change indicator indicates that the passive-to-active transition of the passive storage processor has been initiated. A first data array status indicator is received on the active storage processor from the passive storage processor, wherein the first data array status indicator indicates the status of the data array as seen by the passive storage processor. A second data array status indicator is generated on the active storage processor, wherein the second data array status indicator indicates the status of the data array as seen by the active storage processor.