Storage Object Affinity for Active-Active Cluster Write Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Active-active clustered systems experience significant latency and performance degradation due to the high amount of internode communications required to obtain locks and synchronize writes, which hampers read-write IO operations.

Innovation Solution

Implementing storage object affinity by designating a primary storage node as the owner of a storage object, allowing it to set local locks and perform IO operations independently without internode communications, while the secondary node communicates only to obtain locks and transfer ownership after a predetermined number of requests.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If storage nodes communicate with each other to obtain locks and synchronize writes in an active-active clustered system, then data consistency and reliability are ensured, but latency increases and IO performance degrades

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

Solution Approach 1:

The patent segments the storage system into primary and secondary storage nodes with distinct roles. The primary node handles write operations and maintains the authoritative copy of data, while secondary nodes serve read operations and maintain copies. This segmentation eliminates the need for continuous inter-node communication during normal operations, reducing latency while maintaining data consistency through controlled synchronization only when ownership changes occur.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by pre-establishing ownership relationships between storage nodes and storage objects before operations occur. The primary storage node is designated in advance as the owner of specific storage objects, allowing it to independently handle write operations without real-time communication with secondary nodes. This preliminary assignment of ownership enables fast local operations while ensuring reliability through predefined responsibility allocation.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If storage nodes engage in internode communications to obtain locks and synchronize outstanding writes, then data integrity is maintained, but IO bandwidth and throughput are reduced

Engineering Contradiction:
Improvedata integrityVSAvoidIO bandwidth
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the lock management and synchronization functions from the critical write path. Instead of requiring inter-node communication for every write operation, the primary storage node independently manages locks and performs writes using locally accessible buffers. This extraction of synchronization overhead from the main IO path eliminates the bottleneck caused by internode communications, significantly improving IO bandwidth while maintaining data integrity through the primary node's authoritative control.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The primary storage node provides self-service by independently managing its own write operations, lock acquisition, and data synchronization without requiring continuous assistance from secondary nodes. It uses its locally accessible buffer to store data and only communicates with secondary nodes when ownership transfer is needed. This self-service approach enables high-speed local operations while maintaining system-wide data integrity through controlled synchronization events.

Inventive Principle:
Principle #25Self-service

3Reliability

If multiple storage nodes simultaneously access the same storage objects with read-write permissions, then system availability and fault tolerance are improved, but coordination overhead and processing complexity increase

Engineering Contradiction:
Improvesystem availabilityVSAvoidcoordination overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces asymmetry in the roles of storage nodes within the cluster. Instead of all nodes having equal read-write access to all storage objects, one node is designated as primary with full write permissions, while other nodes are secondary with restricted access. This asymmetric architecture maintains high availability through role redundancy but dramatically reduces coordination overhead by eliminating the need for symmetric lock management and synchronization protocols that would be required in a fully peer-to-peer system.

Inventive Principle:
Principle #4Asymmetry

Data Source

PatentUS11144252B2Optimizing write IO bandwidth and latency in an active-active clustered system based on a single storage node having ownership of a storage object
Publication Date: 2021.10.12 EMC IP HLDG CO LLC
  • US11144252B2 patent drawing
  • US11144252B2 patent drawing
  • US11144252B2 patent drawing

AI summary

Techniques for optimizing write IO bandwidth and latency in an active-active clustered system using storage object affinity to a single node. The active-active clustered system can include at least a primary storage node and a secondary storage node that maintain their own journals. The respective journals are directly accessible to both storage nodes. The journals are synchronized for each page or entity of a storage object when a storage IO request is issued to a storage node to which the storage object does not have affinity. Such synchronization is performed in the framework of acquiring a lock on the entity of the storage object during internode communications. To facilitate recovery from a disaster, data loss, and/or data corruption, transaction IDs associated with storage IO operations are employed to facilitate identification of the most up-to-date reference or description information for a given data or metadata page of a storage object.