Hybrid Memory Subsystem Host Failover via CXL Protocols

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current memory sub-systems are inefficient in tracking and storing small changes to database records, as they often require partial modification of data blocks or use full blocks for small amounts of change data, leading to inefficiencies in data storage and retrieval.

Innovation Solution

A memory sub-system configured to provide both memory and storage services using Compute Express Link (CXL) protocols, allowing for efficient tracking and storage of changes via write-ahead logs and simple sorted tables, with volatile memory backed by a backup power source to ensure data persistence during power failures, enabling the solid-state drive to act as both a memory device and storage device.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If volatile memory is used for tracking changes, then storage speed and accessibility are improved, but data persistence during power failures deteriorates

Engineering Contradiction:
Improvestorage speedVSAvoiddata persistence
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent implements a backup power source that activates before main power failure to preserve volatile memory contents. The backup power source charges in advance and automatically engages when power failure occurs, allowing the system to maintain volatile memory operation long enough to complete critical write-ahead log operations and maintain data integrity without requiring slower non-volatile memory for all operations.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If non-volatile memory is used for persistent storage, then data persistence is improved, but storage overhead and retrieval efficiency deteriorate

Engineering Contradiction:
Improvedata persistenceVSAvoidretrieval efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments storage into two distinct layers: volatile memory for high-speed tracking of database changes using write-ahead logs, and non-volatile memory for persistent storage of the actual database records. This segmentation allows each storage type to be optimized for its specific function, with volatile memory handling frequent small-change tracking and non-volatile memory providing durable record storage, thereby achieving both efficiency and persistence without the overhead of using non-volatile memory for all operations.

Inventive Principle:
Principle #1Segmentation

3Ease of manufacture

If separate memory and storage devices are used, then functional clarity is improved, but system complexity and failover difficulty deteriorate

Engineering Contradiction:
Improvefunctional clarityVSAvoidsystem complexity
Core Design Contradiction:
Ease of manufactureVSDevice complexity

Solution Approach 1:

The patent merges memory and storage devices into a single hybrid device that provides both volatile and non-volatile memory resources through a unified interface. This single device implementation maintains the functional separation of memory and storage operations while eliminating the need for separate physical devices, thereby reducing system complexity and enabling simpler failover mechanisms where a single device can be seamlessly replaced or recovered without coordinating multiple device failures.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS20240184783A1Host System Failover via Data Storage Device Configured to Provide Memory Services
Publication Date: 2024.06.06 MICRON TECHNOLOGY INC
  • US20240184783A1 patent drawing
  • US20240184783A1 patent drawing
  • US20240184783A1 patent drawing

AI summary

Host system failover via a memory sub-system storing in-memory data for database operations. Over a connection from a host interface of the memory sub-system, a first portion of the memory sub-system can be attached to a first host system as a memory device accessible via a first protocol; and a second portion of the memory sub-system can be attached to the first host system as a storage device accessible via a second protocol. A database manager running in the first host system can store the in-memory data in the memory device and store a persistent copy of database records in the storage device. When the first host system fails, the memory sub-system can be reconnected to a second host system to use the in-memory data for continued database operations.