Backup Server Data Replication via Serialized Stream Sorting

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Periodic replication of changed data can be time-consuming and resource-intensive, leading to inconsistencies between replica and master servers, especially during updates.

Innovation Solution

A method and system for creating backups or replicas involve receiving a serialized stream of data changes, sorting and storing them, sending acknowledgments, writing to a single file, and merging with existing backup data on the replica server, optimizing data transfer and maintaining coherence.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If periodic replication is used to backup changed data, then data consistency between master and replica servers is maintained, but the replication process becomes time-consuming and resource-intensive

Engineering Contradiction:
Improvedata consistencyVSAvoidreplication time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by buffering incoming data changes in memory before writing to disk, and by pre-establishing the replication infrastructure. This allows the actual data transfer to be completed more quickly when replication is triggered, reducing overall replication time while maintaining consistency through the buffered data queue.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The replication process is segmented into distinct phases: data buffering in memory, acknowledgment sending to the master server, and disk writing. This segmentation allows parallel processing of multiple operations and enables the system to handle replication more efficiently by not blocking on any single operation.

Inventive Principle:
Principle #1Segmentation

2Reliability

If periodic replication is used to backup changed data, then data consistency between master and replica servers is maintained, but system resources are consumed excessively

Engineering Contradiction:
Improvedata consistencyVSAvoidsystem resource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The system extracts only the changed data portions from the master server and buffers them in memory on the replica server, rather than replicating entire files or databases periodically. This extraction approach significantly reduces the amount of data that needs to be processed and transferred, lowering system resource consumption while maintaining data consistency for the changed portions.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system performs partial replication by only buffering and replicating the specific data changes that occur, rather than performing complete periodic backups. This partial action approach reduces resource consumption by avoiding redundant replication of unchanged data while still ensuring consistency for the modified portions.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If data is written to multiple files during replication, then data can be processed in parallel, but data coherence and consistency become difficult to maintain

Engineering Contradiction:
Improvedata processing speedVSAvoiddata coherence
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system merges multiple incoming data change streams into a single buffered queue in memory before writing to disk. This merging approach maintains data coherence by ensuring all changes are collected and ordered properly before persistence, while still allowing parallel processing of the buffering and acknowledgment operations that lead up to the unified write operation.

Inventive Principle:
Principle #5Merging (Combining)

4Loss of energy

If acknowledgment is sent immediately upon receiving data stream, then network bandwidth is utilized efficiently, but data integrity cannot be ensured if replication is interrupted

Engineering Contradiction:
Improvenetwork bandwidth usageVSAvoiddata integrity
Core Design Contradiction:
Loss of energyVSReliability

Solution Approach 1:

The system performs preliminary buffering of data in memory and sends acknowledgments to the master server before actually writing to disk. This preliminary action allows the network transaction to complete efficiently while the data is still in the buffer, ensuring that if an interruption occurs, the buffered data can be recovered and written without requiring retransmission, thus maintaining both bandwidth efficiency and data integrity.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10031961B1Systems and methods for data replication
Publication Date: 2018.07.24 CA TECH INC
  • US10031961B1 patent drawing
  • US10031961B1 patent drawing
  • US10031961B1 patent drawing

AI summary

Systems, methods, and software program products discussed herein can create a backup or replica of a master. A method can include receiving, at a backup server, a serialized stream of data representative of changes to a first file of a computer and sorting the received stream of data and storing the sorted data in a memory. The method can include sending an acknowledgment to the computer indicating that the stream of data was received, writing all the sorted data to a single second file, and merging, on the backup server, the written data with data representative of a backup of data on the computer in response to writing all the sorted data to the single second file.