Self-Healing Merkle Tree Replication via Asynchronous Snapshot Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data replication processes using Merkle trees face significant latency and computational inefficiencies, especially when updating trees for every data block change, which can lead to substantial resource consumption and increased latency in synchronizing production and replica data.

Innovation Solution

Implementing asynchronous updates to Merkle trees using time-related values, such as snapshot identifiers, allows for efficient traversal and updating of trees only at snapshot granularity, minimizing hash recalculations and reducing latency by queuing and processing changes in batches, thereby reducing the complexity of updates from log(n)*n to approximately log(n)+k*log(k) for localized changes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If Merkle trees are updated for every data block change, then data synchronization accuracy is improved, but computational overhead and latency increase significantly

Engineering Contradiction:
Improvedata synchronization accuracyVSAvoidcomputational overhead
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The patent segments the continuous update process into discrete snapshot intervals. Instead of updating the Merkle tree for every individual data block change, the system captures snapshots at predetermined intervals and updates the tree only at these snapshot boundaries. This segmentation reduces the frequency of tree updates while maintaining synchronization accuracy at the snapshot granularity level.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements periodic snapshot capture at predetermined intervals rather than continuous updating. The Merkle tree is updated periodically at each snapshot boundary, creating a rhythmic update pattern that reduces computational overhead while ensuring data integrity is verified at regular intervals. This periodic action maintains synchronization accuracy without the constant computational burden of continuous updates.

Inventive Principle:
Principle #19Periodic action

2Reliability

If Merkle trees are updated for every data block change, then data integrity is maintained, but latency increases

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

Solution Approach 1:

The patent segments the data change stream into discrete snapshot intervals, updating the Merkle tree only at snapshot boundaries rather than for every individual block change. This segmentation maintains data integrity by capturing the state at defined intervals while reducing latency by eliminating the need for immediate tree updates on every data modification.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary snapshot capture at predetermined intervals before triggering Merkle tree updates. By pre-defining snapshot boundaries and accumulating data changes until the next snapshot point, the system ensures data integrity is captured at meaningful intervals without incurring the latency of immediate tree regeneration on every data change.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If all production data is sent to replica site, then data synchronization is ensured, but network bandwidth consumption increases

Engineering Contradiction:
Improvedata synchronizationVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent extracts only the essential synchronization information (Merkle root hashes and snapshot identifiers) from the complete data set and transmits this minimal information to the replica site. Instead of sending all production data, the system extracts the condensed Merkle tree representation that proves data integrity, dramatically reducing network bandwidth consumption while maintaining synchronization verification capability.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system creates and transmits a condensed copy of the data state in the form of Merkle root hashes rather than the actual data blocks. This cryptographic copy allows the replica site to verify data integrity without receiving the full data set, reducing network bandwidth consumption from transmitting terabytes of data to transmitting only the hash values.

Inventive Principle:
Principle #26Copying

4Manufacturing precision

If hash comparison is performed for all data blocks, then synchronization accuracy is improved, but processing time increases

Engineering Contradiction:
Improvesynchronization accuracyVSAvoidprocessing speed
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The patent extracts only the Merkle root hash from the complete Merkle tree structure and compares this single extracted value against the replica's root hash. Instead of comparing all individual block hashes, the system extracts the condensed root representation that encapsulates the entire data set's integrity, achieving synchronization verification with minimal processing time while maintaining full accuracy.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system segments the hash comparison operation into a single root hash comparison rather than processing all individual block hashes sequentially. By dividing the verification task into snapshot-level root hash comparison, the system achieves synchronization accuracy at the data block level with processing speed appropriate for root hash operations, dramatically improving productivity over full block-by-block comparison.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11921747B2Self healing fast sync any point in time replication systems using augmented Merkle trees
Publication Date: 2024.03.05 EMC IP HLDG CO LLC
  • US11921747B2 patent drawing
  • US11921747B2 patent drawing
  • US11921747B2 patent drawing

AI summary

Replication operations of replicating data from a production site to a replica site. The replication is performed using independent Merkle trees. The Merkle trees are updated asynchronously using Merkle trees that have been augmented with a time-based value. The synchronization is verified by comprising root hashes of the independent Merkle trees at certain points in time. The replication and Merkle trees are self-healing and trigger a resynchronization when a discrepancy is discovered.