Local Lock Semantics for Active-Active Storage Clusters

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Active-Active storage clusters face performance limitations due to the need for node synchronization to ensure consistent access and update of data and metadata objects, which requires resource-intensive internode exchanges and can increase latency and lock contention.

Innovation Solution

Implementing a local lock semantics schema where each node acquires local locks independently before sending a commit message, eliminating the need for internode lock synchronization and reducing the protected section's duration, thus optimizing resource usage and reducing latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If nodes are synchronized to guarantee consistent access/update of data and metadata objects, then data consistency is improved, but cluster performance deteriorates

Engineering Contradiction:
Improvedata consistencyVSAvoidcluster performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the locking mechanism into local locks at each node rather than using global locks that require internode synchronization. Each node independently acquires and releases locks on its local metadata pages, eliminating the need for coordinated synchronization between nodes while maintaining consistency within each node's local state.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by implementing lock semantics that are specific to each node's local state rather than requiring uniform global locking. Each node manages its own lock state independently, allowing local optimization without compromising overall system consistency. The lock duration is localized to each node's critical section, reducing the time locks are held and minimizing contention.

Inventive Principle:
Principle #3Local quality

2Reliability

If internode lock synchronization is used to ensure consistent access, then data consistency is improved, but resource consumption increases

Engineering Contradiction:
Improvedata consistencyVSAvoidresource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent extracts the synchronization requirement from the locking mechanism itself. Instead of using locks that require internode synchronization, the patent removes the synchronization dependency by using local locks that are managed independently at each node. The commit message mechanism handles consistency without requiring lock coordination between nodes, effectively taking out the problematic synchronization aspect.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Each node serves itself by independently acquiring, holding, and releasing locks on its local metadata pages without requiring assistance or coordination from other nodes. The local lock mechanism is self-contained, with each node managing its own lock state and critical sections autonomously, eliminating the need for resource-intensive internode lock synchronization protocols.

Inventive Principle:
Principle #25Self-service

3Reliability

If global locks are used for metadata pages, then data consistency is improved, but lock contention increases

Engineering Contradiction:
Improvedata consistencyVSAvoidlock contention period
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the lock scope from global to local, dividing the previously unified lock management into independent local lock instances at each node. This segmentation allows multiple nodes to hold and release locks simultaneously without contention, as each node's locks are independent. The critical section duration is reduced because locks are released locally without waiting for internode synchronization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Nodes acquire local locks on metadata pages before sending commit messages, performing the locking action preliminarily and independently. This preliminary action allows the lock to be held for the minimal necessary duration at each node, reducing the overall lock contention period. The commit message transmission and lock release are decoupled, allowing locks to be released as soon as the local critical section is complete.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12007976B2System and method for consistent metadata access based on local locks semantics in a multi-node cluster
Publication Date: 2024.06.11 EMC IP HLDG CO LLC
  • US12007976B2 patent drawing
  • US12007976B2 patent drawing
  • US12007976B2 patent drawing

AI summary

A method, computer program product, and computer system for acquiring, by a first node, local locks of the first node associated with a metadata log transaction, wherein the first node acquires the local locks of the first node prior to sending a commit message to a second node. The second node may acquire local locks of the second node associated with the metadata log transaction, wherein the second node acquires the local locks of the second node based upon, at least in part, receiving the commit message from the first node.