Client-Side Cache Copy for Distributed Storage Write Acknowledgement

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional distributed storage systems in a non-hyperconverged context face inefficiencies in data writing due to the need for network communication to create multiple replicas, leading to slower write speeds compared to hyperconverged systems, where data is written locally without the need for remote network access.

Innovation Solution

A storage client in a distributed storage system stores a cache copy of data locally and considers the write operation complete upon receiving acknowledgement of a single replica made in a remote storage node, eliminating the need for additional network communication to create secondary replicas.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multiple replicas of data are created in remote storage nodes, then data redundancy and reliability are ensured, but network traffic increases and write speed decreases

Engineering Contradiction:
Improvedata redundancyVSAvoidwrite speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system creates a cache copy of data in the storage client's local memory before writing to remote storage nodes. This preliminary local caching allows the write operation to be acknowledged as complete once a single replica is created remotely, rather than waiting for multiple replicas to be written over the network. The local cache serves as a preliminary storage layer that improves write speed while maintaining data redundancy through the remote replica.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If data is written to remote storage nodes over the network, then distributed storage architecture is maintained, but network traffic increases and performance decreases

Engineering Contradiction:
Improvedistributed storage architectureVSAvoidwrite performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The storage system is segmented into two layers: local cache memory in the storage client and remote storage nodes. The data writing process is divided into creating a local cache copy and creating a remote replica. This segmentation allows the system to maintain distributed storage architecture while improving performance by handling different storage operations at different locations - fast local caching and reliable remote replication.

Inventive Principle:
Principle #1Segmentation

3Speed

If cache copy is stored locally in storage client memory, then read speed improves and network traffic reduces, but local storage space is consumed

Engineering Contradiction:
Improveread speedVSAvoidlocal storage space
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The system changes the state of data storage by creating a cache copy in the storage client's local memory. This parameter change from remote-only storage to local-plus-remote storage enables faster read operations and reduced network traffic. The cache copy acts as a local buffer that can be quickly accessed without network communication, while the remote storage nodes maintain the authoritative data copies.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10895997B2Durable client-side caching for distributed storage
Publication Date: 2021.01.19 NUTANIX INC
  • US10895997B2 patent drawing
  • US10895997B2 patent drawing
  • US10895997B2 patent drawing

AI summary

Systems and methods are disclosed herein for writing data, including storing, by a storage client, a cache copy of the data in a memory of the storage client and receiving, by the storage client, acknowledgement indicating that a single replica of the data is made in a storage node remote to the storage client.