Dense Tree Data Structure for Storage Deduplication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data deduplication techniques in storage systems suffer from substantial overhead due to the need to read and write entire fingerprint databases and lack indexing capabilities, leading to inefficient duplicate data removal.

Innovation Solution

The implementation of a dense tree data structure with multiple levels, allowing for efficient data deduplication by merging fingerprint entries between levels and facilitating real-time lookup and deduplication operations through indexing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a flat file fingerprint database is used for data deduplication, then the system can store and compare fingerprints, but the overhead of reading and writing the entire database for each deduplication operation is substantial

Engineering Contradiction:
Improvededuplication operation efficiencyVSAvoidtime for reading and writing entire fingerprint database
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent divides the flat file fingerprint database into a hierarchical tree structure with multiple levels. Each node in the tree contains a subset of fingerprints, organized such that the root node contains all fingerprints and child nodes contain partitions of their parent's fingerprints. This segmentation allows the system to search only relevant portions of the database rather than reading the entire flat file, significantly reducing I/O overhead and improving deduplication operation efficiency.

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If a flat file fingerprint database is used, then the database can be implemented simply, but there is no means to facilitate lookup operations within the file

Engineering Contradiction:
Improvelookup operation capabilityVSAvoiddata structure complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent transitions from a one-dimensional flat file structure to a multi-dimensional hierarchical tree structure. Each level of the tree represents a dimension of organization, with nodes at different levels providing progressively finer partitioning of the fingerprint data. This dimensional transformation enables efficient lookup operations by allowing the system to navigate through hierarchical levels rather than scanning a flat file, while the tree structure itself provides the indexing mechanism needed for fast access.

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

Data Source

PatentUS9798728B2System performing data deduplication using a dense tree data structure
Publication Date: 2017.10.24 NETAPP INC
  • US9798728B2 patent drawing
  • US9798728B2 patent drawing
  • US9798728B2 patent drawing

AI summary

In one embodiment, as new blocks of data are written to storage devices of a storage system, fingerprints are generated for those new blocks and inserted as entries into a top level (L0) of a dense tree data structure. When L0 is filled, the contents from L0 may be merged with level 1 (L1). After the initial merge, new fingerprints are added to L0 until L0 fills up again, which triggers a new merge. Duplicate fingerprints in L0 and L1 are identified which, in turn, indicates duplicate data blocks. A post-processing deduplication operation is then performed to remove duplicate data blocks corresponding to the duplicate fingerprints. In a different embodiment, as new fingerprint entries are loaded into L0, those new fingerprints may be compared with existing fingerprints loaded into L0 and/or other levels to facilitate inline deduplication to identify duplicate fingerprints and subsequently perform the deduplication operation.