Shared Cache Version Isolation for Rolling Distributed Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Concurrent operation of multiple versions of consumer electronics and backend systems sharing storage resources poses challenges due to potential conflicts in data updates, necessitating a method for seamless rolling updates in distributed systems.

Innovation Solution

A system and method for providing rolling updates in distributed systems with a shared cache, utilizing version-specific and agnostic identifiers to isolate and update data items in a shared cache memory, ensuring compatibility across different versions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If multiple versions of devices and backend systems share the same storage resources, then resource utilization is improved, but data update conflicts increase

Engineering Contradiction:
Improveresource utilizationVSAvoiddata update conflicts
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent segments the shared cache memory into version-specific regions using version-specific identifiers. Each version has its own isolated storage region within the shared cache, allowing concurrent access without conflicts. This segmentation resolves the contradiction by enabling multiple versions to share physical memory resources while maintaining logical isolation to prevent data update conflicts.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces version-specific identifiers as intermediaries between different versions and the shared cache memory. These identifiers act as mediators that route data requests to the appropriate version-specific region, allowing multiple versions to coexist in the shared storage resource without direct conflicts. The intermediary enables resource sharing while maintaining data integrity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If concurrent operation of multiple versions is enabled, then system adaptability is improved, but data integrity challenges increase

Engineering Contradiction:
Improvesystem adaptabilityVSAvoiddata integrity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent segments the cache memory into isolated version-specific regions, allowing concurrent operation of multiple versions while maintaining data integrity through physical separation. Each version operates independently in its own region, eliminating race conditions and ensuring data integrity during concurrent access.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by creating distinct storage characteristics for different versions within the shared cache. Each version-specific region has unique access patterns and data structures tailored to that version's requirements, allowing optimized performance for each version while maintaining overall system integrity.

Inventive Principle:
Principle #3Local quality

3Duration of action of stationary object

If rolling updates are implemented with shared cache, then service continuity is improved, but cache management complexity increases

Engineering Contradiction:
Improveservice continuityVSAvoidcache management complexity
Core Design Contradiction:
Duration of action of stationary objectVSDevice complexity

Solution Approach 1:

The patent segments the cache management task into version-specific regional operations. Each version has its own isolated region, so updates to one version do not affect others. This segmentation simplifies the rolling update process by allowing independent management of each version region while maintaining service continuity across the system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary action by pre-establishing version-specific identifiers and regions before updates occur. This preliminary structure is set up in advance, so when rolling updates are needed, the system can simply switch between pre-defined regions without complex real-time management, maintaining service continuity while reducing operational complexity.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12566706B2Providing rolling updates of distributed systems with a shared cache
Publication Date: 2026.03.03 ROKU INC
  • US12566706B2 patent drawing
  • US12566706B2 patent drawing
  • US12566706B2 patent drawing

AI summary

Disclosed herein are system, apparatus, article of manufacture, method, and/or computer program product embodiments for providing rolling updates of distributed systems with a shared cache. An embodiment operates by receiving a data item key corresponding to a request from a user profile operating on a computing device and receiving a version identifier corresponding to a first version of an application operating on the computing device. It is determined that a shared cache includes a first value and second value for the data item key. A key component is generated corresponding to the user profile. Both the generated key component and the data item key are provided to the shared cache, and the first value of the data item as stored in the shared cache is received. The first value of the first version of the data item is updated.