Clustered Memory Resiliency via Segmentation and Caching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Clustered memory systems face higher latency and lower bandwidth compared to local memory, and are susceptible to failures that can cause computing devices to crash, as they lack redundancy and efficient resource management.

Innovation Solution

Implementing redundancy through replication and erasure coding techniques, such as internal and external erasure coding, to ensure data availability and improve latency and bandwidth constraints, while also using management hosts to monitor and manage memory resources across the network.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data is stored in clustered memory servers to improve memory utilization efficiency, then memory resource availability increases, but access latency increases and bandwidth decreases compared to local memory

Engineering Contradiction:
Improvememory resource availabilityVSAvoidmemory access speed
Core Design Contradiction:
Quantity of substanceVSSpeed

Solution Approach 1:

The patent segments memory resources by dividing clustered memory into multiple chunks and distributing them across different memory servers. Each computing device is assigned specific chunks, allowing direct access to frequently used data while maintaining overall memory pool utilization. This segmentation reduces access latency for hot data while preserving the expanded memory capacity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements local quality by caching frequently accessed memory chunks in local memory of computing devices. This creates a two-tiered system where hot data resides in fast local memory while cold data remains in clustered memory servers, optimizing both access speed and resource utilization efficiency.

Inventive Principle:
Principle #3Local quality

2Quantity of substance

If clustered memory systems are implemented to expand memory capacity, then memory availability increases, but system reliability decreases due to susceptibility to failures

Engineering Contradiction:
Improvememory capacityVSAvoidsystem reliability
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent implements preliminary action through proactive data replication and redundancy mechanisms. Before failures occur, data is replicated across multiple memory servers and chunks are pre-loaded into local memory caches. This ensures that even if a memory server fails, the computing device can continue operating with data already present in local memory or quickly retrieve it from replicated locations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent provides beforehand cushioning by maintaining redundant copies of critical data and implementing error correction codes in the clustered memory system. This creates a buffer against failures, allowing the system to withstand memory server failures without crashing and maintaining data integrity even when capacity is expanded across multiple nodes.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

3Quantity of substance

If memory servers are used to provide additional memory resources, then memory utilization efficiency improves, but resource management complexity increases

Engineering Contradiction:
Improvememory utilization efficiencyVSAvoidresource management complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent implements universality by creating a unified memory management system that treats local memory and clustered memory as a single resource pool. The memory manager can allocate, move, and manage chunks across different locations transparently, providing multi-functional capabilities including caching, replication, and load balancing within a single management framework, thereby improving utilization without proportionally increasing complexity.

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

Solution Approach 2:

The patent enables self-service through automated memory management mechanisms where the system autonomously performs chunk allocation, data replication, cache management, and failure recovery. The memory manager automatically monitors system state and makes optimization decisions without manual intervention, reducing the operational complexity despite the enhanced resource utilization capabilities.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS12086469B2Resiliency and performance for cluster memory
Publication Date: 2024.09.10 VMWARE INC
  • US12086469B2 patent drawing
  • US12086469B2 patent drawing
  • US12086469B2 patent drawing

AI summary

Disclosed are various embodiments for improving the resiliency and performance for clustered memory. A computing device can mark a page of the memory as being reclaimed. The computing device can then set the page of the memory as read-only. Next, the computing device can submit a write request for the contents of the page to individual ones of a plurality of memory hosts. Subsequently, the computing device can receive individual confirmations of a successful write of the page from the individual ones of the plurality of memory hosts. Then, the computing device can mark the page as free in response to receipt of the individual confirmations of the successful write from the individual ones of the plurality of memory hosts.