Non-Volatile Memory Controller Cache Flush via Read Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Data stored in servers with non-volatile memory is at risk of loss due to faulty servers, and existing methods lack effective mechanisms for secure and efficient data storage, particularly in scenarios where network resources and computing resources are limited.

Innovation Solution

A data storage method where a first server with non-volatile memory receives write instructions from a second server, stores data in both its cache and storage medium, and actively flushes data to the storage medium upon detection of a read instruction, ensuring data persistence and reducing overheads by minimizing unnecessary operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If data is stored only in the cache of the non-volatile memory controller, then write speed is improved, but data reliability deteriorates because data may be lost if the server fails before flushing to storage medium

Engineering Contradiction:
Improvewrite speedVSAvoiddata reliability
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The system performs a read operation immediately after a write operation to trigger the flush of data from cache to storage medium before the server may fail. This preliminary action ensures data is persisted to non-volatile storage while maintaining the appearance of fast writes, resolving the contradiction between write speed and data reliability.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If data is flushed to storage medium immediately after writing to cache, then data reliability is improved, but write speed deteriorates due to the time required for flushing

Engineering Contradiction:
Improvedata reliabilityVSAvoidwrite speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The system uses a feedback mechanism where a read instruction sent by the second server triggers the flush operation. The first server detects this read instruction and automatically flushes the data from cache to storage medium, creating a feedback loop that ensures data reliability without requiring the second server to manage flush operations directly, thus maintaining write speed while improving reliability.

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If the second server manages both computing tasks and storage operations, then functionality is complete, but performance deteriorates due to increased computational load

Engineering Contradiction:
ImprovefunctionalityVSAvoidserver performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The storage management functionality is extracted from the second server and implemented in the first server. The first server autonomously detects read instructions and manages the flush operations from cache to storage medium, removing the burden of storage management from the second server. This allows the second server to focus on computing tasks while the first server handles storage operations, improving overall system performance while maintaining complete functionality.

Inventive Principle:
Principle #2Taking out (Extraction)

4Reliability

If the first server autonomously detects read instructions and triggers flushes, then data security is improved, but device complexity increases

Engineering Contradiction:
Improvedata securityVSAvoidcontrol logic complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The first server's controller is designed with multi-functionality, handling both the detection of read instructions and the triggering of flush operations within a single integrated component. This universal design consolidates the control logic in one place, improving data security through autonomous operation while minimizing the increase in device complexity by avoiding separate dedicated components for each function.

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

Data Source

PatentEP3839749B1Data storage method, device and server
Publication Date: 2024.09.11 HUAWEI TECH CO LTD
  • EP3839749B1 patent drawingFigure 1
  • EP3839749B1 patent drawingFigure 2
  • EP3839749B1 patent drawingFigure 3

AI summary

This disclosure discloses a data storage method and apparatus, and a server. The method includes: receiving, by a first server, a write instruction sent by a second server, storing target data in a cache of a controller, detecting a read instruction for the target data, and storing the target data in a storage medium of a non-volatile memory based on the read instruction. In other words, when the second server needs to write the target data to the first server, the target data is not only written to the cache of the first server, but also written to the storage medium of the first server. This can ensure that the data in the cache is written to the storage medium promptly.