Duplicate Data Detection Using Recent-Read Bloom Filter Signatures

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing storage systems face inefficiencies in preventing duplicate data entries, leading to unnecessary storage consumption and potential data redundancy.

Innovation Solution

Implementing a storage array controller that calculates signatures for incoming data and compares them against a recently read signature buffer to identify and prevent duplicate data entries, utilizing hash functions and bit-by-bit comparisons to ensure accurate duplication detection.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of substance

If traditional duplicate detection methods are used, then data redundancy is reduced, but storage performance and latency are degraded due to full buffer scans

Engineering Contradiction:
Improvestorage redundancyVSAvoidstorage performance
Core Design Contradiction:
Loss of substanceVSProductivity

Solution Approach 1:

The patent segments the duplicate detection process into two distinct phases: a quick filter phase using a Bloom filter that scans only recently read data, and a verification phase using a full buffer scan. This segmentation allows the system to quickly eliminate obvious non-duplicates without performing complete buffer scans for every write operation, thereby maintaining data redundancy reduction while improving storage performance.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary duplicate detection by maintaining a Bloom filter populated with signatures of recently read data. Before performing a complete buffer scan, the system first checks this pre-prepared Bloom filter to quickly identify potential duplicates. This preliminary action reduces the number of complete buffer scans needed, improving storage performance while still effectively reducing storage redundancy.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If full buffer scans are performed for every write operation, then duplicate detection accuracy is improved, but storage latency increases

Engineering Contradiction:
Improveduplicate detection accuracyVSAvoidstorage latency
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent segments duplicate detection into a fast preliminary check using the Bloom filter and a slower verification scan. The Bloom filter provides quick, low-latency filtering that catches most non-duplicates without requiring full buffer scans, thereby reducing storage latency while maintaining acceptable duplicate detection accuracy through the subsequent verification phase.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial action by performing a Bloom filter check on all write operations (excessive for accuracy alone) combined with selective full buffer scans only when the Bloom filter indicates a potential duplicate. This partial approach maintains high duplicate detection accuracy by verifying Bloom filter positives while avoiding unnecessary full scans for clear negatives, thus reducing storage latency.

Inventive Principle:
Principle #16Partial or excessive action

3Measurement precision

If Bloom filter false positives are investigated with full scans, then duplicate detection precision is improved, but storage performance deteriorates

Engineering Contradiction:
Improveduplicate detection precisionVSAvoidstorage performance
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent segments the investigation of Bloom filter matches into two stages: a quick signature comparison stage that checks only the hash signatures, and a slower full data comparison stage performed only when signatures match. This segmentation ensures that the majority of operations (signature comparisons) remain fast, preserving storage performance, while full scans are reserved only for cases where precision is critical.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial action by performing full buffer scans only partially - specifically, only when the Bloom filter returns a positive result indicating a potential duplicate. For the majority of cases where the Bloom filter returns negative, no full scan is performed. This selective approach maintains high duplicate detection precision for potential duplicates while preserving overall storage performance by avoiding unnecessary full scans.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS12399825B2Identifying duplicate data based on recently read data
Publication Date: 2025.08.26 PURE STORAGE INC
  • US12399825B2 patent drawing
  • US12399825B2 patent drawing
  • US12399825B2 patent drawing

AI summary

Deduplicating data based on recently reading the data, including: determining whether a calculated signature for write data matches a particular signature corresponding to data that was recently read from the storage device, wherein the signature is calculated using the write data as input; and after determining that the calculated signature for the write data matches the particular signature, obtaining the data that was recently read and comparing the data that was recently read to the write data.