Shared Clock Caching in Distributed Storage Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed storage systems, frequent accesses to a shared clock across a network for time stamping purposes degrade system performance due to the need for constant updates and synchronization across multiple compute nodes.

Innovation Solution

Implement a caching mechanism in compute nodes for the shared clock, where a cached value is used when the time gap before the next update exceeds a threshold, and the actual clock value is read when the update is imminent, thereby reducing unnecessary network access and improving performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If frequent accesses to the shared clock are made across the network for timestamping purposes, then the timestamp accuracy is improved, but the system performance deteriorates

Engineering Contradiction:
Improvetimestamp accuracyVSAvoidsystem performance
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent applies preliminary action by caching the shared clock value in each compute node before it is needed for timestamping operations. The clock value is retrieved from shared storage and stored locally in advance, so that subsequent timestamping operations can use the cached value without accessing the network, thus maintaining timestamp accuracy while improving system performance.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent applies copying by creating local copies of the shared clock value in each compute node's memory. Instead of all compute nodes accessing the same physical clock resource over the network, each node maintains a copy of the clock value, eliminating network access overhead while preserving the ability to generate accurate timestamps.

Inventive Principle:
Principle #26Copying

2Measurement precision

If the shared clock is updated frequently across the network, then the clock synchronization accuracy is improved, but the network traffic and processing overhead increase

Engineering Contradiction:
Improveclock synchronization accuracyVSAvoidnetwork traffic and processing overhead
Core Design Contradiction:
Measurement precisionVSLoss of energy

Solution Approach 1:

The patent applies periodic action by updating the shared clock in the shared storage at fixed intervals rather than continuously or on every timestamping operation. Compute nodes cache the clock value and use it until the next periodic update, reducing network traffic and processing overhead while maintaining acceptable clock synchronization accuracy through the periodic refreshes.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS12124372B1Caching a shared clock of a distributed storage system
Publication Date: 2024.10.22 VAST DATA LTD
  • US12124372B1 patent drawing
  • US12124372B1 patent drawing
  • US12124372B1 patent drawing

AI summary

A method for reading a shared clock that is stored in a shared storage space of a storage system, the method may include (a) reading by a compute node a cached value of the shared clock when a time gap before a next update of the shared clock exceeds a time threshold, wherein the cached value is cached in the compute node and is valid during an allowable caching period, wherein the shared clock is shared by a group of compute nodes, wherein a default update of the shared clock has a cycle that exceeds the time threshold; and (b) reading by the compute node a read value of the shared clock when the time gap before the next update of the shared clock does not exceed the time threshold, wherein the read value of the shared clock is stored in the shared storage space.