Parallel Iteration for Data Deduplication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional data deduplication systems require iterating over large sets of data blocks sequentially, leading to significant storage resource consumption and delayed detection of duplicates, which can result in stale data and inefficient memory utilization.

Innovation Solution

Implementing a parallel iteration scheme that selects and arranges sections of storage extents in an ordered manner to apply deduplication techniques, allowing for simultaneous processing of data blocks across multiple storage extents, thereby reducing the size of the index table and improving deduplication efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If sequential iteration over large sets of data blocks is used for deduplication, then memory utilization is improved (smaller index table), but processing speed deteriorates and storage resource consumption increases

Engineering Contradiction:
Improvememory utilizationVSAvoidprocessing speed
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent divides the large set of data blocks into multiple sections or chunks that can be processed in parallel. Each section is handled by a separate iteration thread, allowing simultaneous processing while maintaining manageable memory requirements for each individual section. This segmentation enables the system to process large datasets without requiring excessive memory resources.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from single-dimensional sequential processing to multi-dimensional parallel processing by introducing multiple iteration threads that operate simultaneously on different sections of the data. This dimensional change from sequential to parallel execution enables both improved processing speed and controlled memory utilization through proper thread management.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If parallel iteration is implemented to speed up duplicate detection, then processing speed is improved, but storage resource consumption increases

Engineering Contradiction:
Improveprocessing speedVSAvoidstorage resource consumption
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

By segmenting the data into manageable sections that can be processed by separate threads, the patent enables parallel processing while controlling the memory footprint of each thread. Each thread maintains only the index table entries relevant to its section, significantly reducing total storage resource consumption compared to a single-threaded approach that would need to hold all data in memory.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by having each iteration thread operate with localized data sections and maintain only the necessary index table entries for its specific section. This localized approach ensures that each thread uses memory efficiently for its specific task, preventing excessive overall memory consumption while maintaining high processing speed through parallel execution.

Inventive Principle:
Principle #3Local quality

3Quantity of substance

If sequential iteration is used to reduce memory usage, then storage resource consumption is reduced, but duplicate detection is delayed resulting in stale data

Engineering Contradiction:
Improvestorage resource consumptionVSAvoidduplicate detection delay
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent segments the data processing task into multiple parallel sections, each processed by a separate iteration thread. This segmentation enables simultaneous processing of multiple data sections, dramatically reducing the time required for duplicate detection while maintaining controlled memory usage through proper management of index table entries in each thread.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent ensures continuity of useful action by having multiple iteration threads operate simultaneously and continuously on different data sections without idle waiting time. This parallel continuous processing eliminates the delays inherent in sequential iteration, enabling timely duplicate detection while maintaining efficient memory utilization through coordinated thread execution.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS8977812B1Iterating in parallel for deduplication
Publication Date: 2015.03.10 EMC IP HLDG CO LLC
  • US8977812B1 patent drawing
  • US8977812B1 patent drawing
  • US8977812B1 patent drawing

AI summary

A method is used in iterating in parallel for deduplication. Based on an iteration scheme, a collection of sections is selected from a set of storage extents. Each section of the collection of sections includes subset of the contents of a storage extent of the set of storage extents. Based on the iteration scheme, each section of the collection of sections is arranged in an ordered arrangement. Based on the ordered arrangement, a deduplicating technique is applied in parallel to each section of the collection of sections.