Stable Memory Layer for Clustered Storage Write Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Synchronous write transactions in clustered file systems suffer from performance penalties due to high write latency and the inability to delay write transactions, affecting workloads with a high ratio of commits and requiring immediate data storage acknowledgement.

Innovation Solution

Integrating a file system cache with a distributed non-volatile memory layer to temporarily hold committed data, replicate it across nodes, and distinguish between master and replica copies, allowing for delayed flushing to persistent storage while ensuring data integrity and availability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If synchronous write transactions are performed in a clustered file system, then data integrity and availability are ensured, but write latency increases significantly

Engineering Contradiction:
Improvedata integrityVSAvoidwrite latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent introduces a stable memory layer as an intermediary between the file system cache and persistent storage. This mediator layer accepts write transactions immediately, providing fast acknowledgment to clients, while asynchronously synchronizing data to persistent storage in the background. This resolves the contradiction by decoupling the immediate write acknowledgment from the slower persistent storage operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system performs preliminary actions by pre-allocating and pre-configuring the stable memory layer before write transactions occur. The stable memory is prepared in advance to accept and hold write data, allowing immediate acknowledgment without waiting for persistent storage operations. This preliminary preparation enables fast synchronous writes while maintaining data integrity through subsequent async synchronization.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If data is immediately written to persistent storage for every synchronous write transaction, then data persistence is ensured, but write performance deteriorates

Engineering Contradiction:
Improvedata persistenceVSAvoidwrite performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The stable memory layer serves as a mediator that accepts write transactions and provides immediate acknowledgment, while asynchronously persisting data to stable storage. This intermediary approach ensures data persistence through the stable memory layer's reliability while maintaining high write performance by avoiding synchronous waits for persistent storage operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system performs preliminary actions by pre-configuring the stable memory layer to handle write transactions before they arrive. The stable memory is prepared in advance to immediately accept and acknowledge writes, while persistence operations are performed asynchronously in the background, thus maintaining high write performance while ensuring data persistence.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If multiple replicas are maintained across cluster nodes for fault tolerance, then availability is improved, but system complexity increases

Engineering Contradiction:
ImproveavailabilityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements copying by creating replicas of data across multiple cluster nodes. Each node maintains copies of the stable memory layer, allowing any node to serve read requests and providing fault tolerance. This copying approach improves availability while managing complexity through standardized replication mechanisms and automatic synchronization protocols.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The stable memory layer is designed with multi-functionality, serving as both a fast write buffer and a fault-tolerant replica storage. The same stable memory infrastructure provides both performance optimization and availability guarantees, reducing overall system complexity by consolidating multiple functions into a single universal component.

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

Data Source

PatentUS9916201B2Write performance in fault-tolerant clustered storage systems
Publication Date: 2018.03.13 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9916201B2 patent drawing
  • US9916201B2 patent drawing
  • US9916201B2 patent drawing

AI summary

Embodiments relate to supporting transaction data committed to a stable storage. Committed data in the cluster is stored in the persistent cache layer and replicated and stored in the cache layer of one or more secondary nodes. One copy is designated as a master copy and all other copies are designated as replica, with an exclusive write lock assigned to the master and a shared write lock extended to the replica. An acknowledgement of receiving the data is communicated following confirmation that the data has been replicated to each node designated to receive the replica. Managers and a director are provided to support management of the master copy and the replicas within the file system, including invalidation of replicas, fault tolerance associated with failure of a node holding a master copy, recovery from a failed node, recovered of the file system from a power failure, and transferring master and replica copies within the file system.