Cache Coherency Manager for Distributed Storage Compute Functions
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In distributed computational functions across a network, maintaining real-time coherency between multiple cache memories is challenging, particularly in ensuring that client caches remain updated with the contents of local caches during the execution of storage compute functions, which is crucial for efficiency, security, and data integrity.
Innovation Solution
A system where a source device, connected via a network interface to a target device, uses a cache coherency manager to maintain real-time mirroring of data between the local cache of the target device and the client cache of the source device, allowing updates at a selected granularity such as time-based or operation-based, ensuring continuous synchronization of data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If real-time cache coherency is maintained between local cache and client cache during distributed computational functions, then data integrity and reliability are improved, but system complexity and overhead increase
Solution Approach 1:
The patent implements cache coherency by maintaining a copy of the local cache contents in the client cache. The cache coherency manager continuously mirrors the local cache to the client cache, ensuring that both caches have identical data without requiring complex synchronization protocols. This copying approach simplifies the coherency maintenance while ensuring data integrity across the distributed system.
Solution Approach 2:
The cache coherency manager acts as an intermediary component that handles the complexity of maintaining coherency between the local cache and client cache. By centralizing the coherency management function, the system avoids distributed consensus algorithms and complex handshaking protocols, thereby reducing overall system complexity while maintaining reliable data synchronization.
2Productivity
If continuous data mirroring is performed at selected granularity, then real-time access to computation results is enabled, but network bandwidth consumption increases
Solution Approach 1:
The patent implements periodic data mirroring at selected granularity rather than continuous streaming. The cache coherency manager mirrors the local cache to the client cache at predetermined intervals or triggered by specific events, enabling real-time access to computation results while significantly reducing network bandwidth consumption compared to continuous synchronization approaches.
Solution Approach 2:
The system performs partial data mirroring by selecting only the necessary granularity level for coherency maintenance. Rather than mirroring every individual data change, the system mirrors cache contents at strategic points during computational functions, achieving sufficient real-time access while minimizing unnecessary network traffic and energy consumption.
3Measurement precision
If cache coherency is maintained during SCF execution, then data accuracy is ensured, but execution time is extended due to synchronization overhead
Solution Approach 1:
The patent performs preliminary cache coherency setup before the storage compute function execution begins. The cache coherency manager establishes the mirroring mechanism in advance, allowing the SCF to execute without continuous synchronization interruptions. This preliminary action ensures data accuracy is maintained throughout execution while minimizing time overhead during the actual computational work.
Data Source
AI summary
Apparatus and method for maintaining real-time coherency between a local cache of a target device and a client cache of a source device during execution of a distributed computational function. In some embodiments, a source device, such as a host computer, is coupled via a network interface to a target device, such as a data storage device. A storage compute function (SCF) command is transferred from the source device to the target device. A local cache of the target device accumulates output data during the execution of an associated SCF over an execution time interval. Real-time coherency is maintained between the contents of the local cache and a client cache of the source device, so that the client cache retains continuously updated copies of the contents of the local cache during execution of the SCF. The coherency can be carried out on a time-based granularity or an operational granularity.


