Distributed Storage Data Synchronization via Persistent Memory

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed storage systems, data loss occurs when a network host fails during the caching period, as cached data is not written to persistent storage in time, leading to incomplete data synchronization and service disruptions.

Innovation Solution

Implementing a DAX-enabled file system with software-simulated persistent memory that directly writes data into simulated persistent memory, creating multiple copies for immediate transmission and caching, and using asynchronous writeback mechanisms to ensure data is stored in persistent storage without affecting access efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is cached in memory before being written to persistent storage, then data access efficiency is improved, but data reliability deteriorates because cached data may be lost if the system fails during the caching period

Engineering Contradiction:
Improvedata access efficiencyVSAvoiddata reliability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The data writing process is segmented into two independent paths: a synchronous path that immediately writes data to persistent storage for reliability, and an asynchronous path that writes to cache for performance. This segmentation allows the system to achieve both data reliability and access efficiency simultaneously.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary writing to persistent storage before allowing the operation to complete, ensuring data is safely stored even if the system fails during the subsequent caching operation. This preliminary action guarantees data reliability while the async cache write provides performance benefits.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If data is immediately written to persistent storage, then data reliability is improved, but data access efficiency deteriorates due to increased I/O operations

Engineering Contradiction:
Improvedata reliabilityVSAvoiddata access efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The I/O operations are segmented into essential synchronous writes to persistent storage and optional asynchronous writes to cache. This allows the system to maintain data reliability through guaranteed persistent storage writes while improving access efficiency by deferring non-critical cache writes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system creates a copy of the data for caching purposes while the original is written to persistent storage. This copying approach allows the persistent storage write to complete for reliability, while the cache copy provides performance optimization without blocking the critical path.

Inventive Principle:
Principle #26Copying

3Reliability

If a remote backup network host is activated to take over services, then service continuity is improved, but service restoration time increases due to data synchronization delays

Engineering Contradiction:
Improveservice continuityVSAvoidservice restoration time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Data is preliminarily synchronized to the remote backup host through asynchronous replication before failover is needed. This preliminary action ensures the backup host already has current data, enabling immediate service restoration without synchronization delays during the failover event.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Data replication to the remote backup host continues asynchronously in the background during normal operation, maintaining continuous data synchronization. This continuous useful action ensures the backup host is always ready for failover, eliminating service restoration delays.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS11544012B2Distributed storage system and data synchronization method applied thereto
Publication Date: 2023.01.03 QNAP SYST INC
  • US11544012B2 patent drawing
  • US11544012B2 patent drawing
  • US11544012B2 patent drawing

AI summary

A distributed storage system and a data synchronization method are used with a network. The system includes a first network host and a second network host. A first file system directly writes data generated by the first network host into a first software-simulated persistent memory. The data in the first software-simulated persistent memory is stored into a first remote block device and cached, respectively. The cached data is stored into a first persistent storage by asynchronous writeback mechanisms. The first remote block device transmits the received data to the second software-simulated persistent memory through the network. The data transmitted to the second software-simulated persistent memory is cached, and the cached data is stored into a second persistent storage by asynchronous writeback mechanisms. The second network host replaces the first network host to provide services when the first network host is out of service.