Hash-Based Data Transfer in Distributed Deduplication Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed deduplication storage systems, naive data transfer methods result in inefficiencies due to the transfer of duplicate data blocks, leading to excessive network and processing resource usage.

Innovation Solution

Implementing hash-based data transfers where source nodes transmit content-based hashes to destination nodes, which respond with a bitmap indicating duplicate blocks, allowing only unique data blocks to be transmitted, and using a write buffer to prevent data corruption by incrementing reference counts and writing new blocks as needed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If naive data transfer is used in deduplicated storage systems, then data can be transferred between nodes, but duplicate data blocks are transferred unnecessarily, increasing network and processing resource usage

Engineering Contradiction:
Improvedata transfer efficiencyVSAvoidnetwork and processing resource usage
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The source node calculates hashes of data blocks before transfer and sends these hashes to the destination node in advance. The destination node uses these hashes to check its deduplication index and determine which blocks are duplicates before the actual data transfer occurs, preventing unnecessary network transmission

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts only the hash values (metadata) from the actual data blocks for preliminary comparison. By separating the hash verification step from the data transfer step, the system identifies and excludes duplicate blocks without transferring the full data, reducing network bandwidth consumption

Inventive Principle:
Principle #2Taking out (Extraction)

2Quantity of substance

If naive data transfer is used, then all data blocks are transferred from source to destination, but this results in transferring significantly more data than required, wasting network bandwidth

Engineering Contradiction:
Improvedata transfer volumeVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
Quantity of substanceVSLoss of energy

Solution Approach 1:

The destination node creates a bitmap copy representing the transfer status of all data blocks. This bitmap is sent back to the source node to indicate which blocks were duplicates and which need transfer, enabling the source to send only the necessary data blocks rather than all blocks

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent replaces the mechanical approach of transferring all data blocks with a computational approach using hash-based comparison. By substituting physical data transfer with hash value comparison and bitmap communication, the system dramatically reduces the actual data movement while maintaining transfer completeness

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Productivity

If naive data transfer is used, then reading and writing operations are performed on all data blocks, but this increases processing overhead and storage operations beyond what is actually needed

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidread and write operation time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The source node performs hash calculations and the destination node performs hash lookups in its deduplication index before initiating data transfer. This preliminary processing identifies duplicate blocks upfront, allowing the system to skip reading, transferring, and writing operations for duplicate blocks entirely

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts only the necessary data blocks (non-duplicates) for transfer by comparing hashes against the destination's deduplication index. By separating duplicate identification from the transfer process, the system performs minimal read and write operations, reducing processing overhead and storage I/O

Inventive Principle:
Principle #2Taking out (Extraction)

4Loss of energy

If hash-based data transfer is implemented, then duplicate data blocks are identified and omitted from transfer, but additional processing is required to calculate and compare hashes

Engineering Contradiction:
Improvenetwork resource usageVSAvoidhash calculation and comparison processing
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The patent transforms the data representation from full data blocks to compact hash values for comparison purposes. By changing the parameter being transmitted and compared from bytes of data to fixed-size hash values, the system reduces network overhead while the computational cost of hash calculation is minimal compared to transferring actual data

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11403260B2Hash-based data transfer in distributed deduplication storage systems
Publication Date: 2022.08.02 VMWARE INC
  • US11403260B2 patent drawing
  • US11403260B2 patent drawing
  • US11403260B2 patent drawing

AI summary

Exemplary methods, apparatuses, and systems include a destination node receiving, from a source node, a hash of data stored by the source node and designated for transfer from the source node to the destination node. In response to determining the hash received from the source node maps to data stored by the destination node, the destination node reads the data into a write buffer and transmits an indication to the source node that the data is present at the source node. The destination node reads the data from write buffer and, in response to determining the data read from the write buffer remains unchanged as stored by the destination node, increases a reference count for the data as stored by the destination node.