Immutable Location Metadata for Low-I/O Deduplication Reads

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Deduplication storage systems experience performance degradation due to the consumption of network bandwidth and processing resources from frequent input/output operations when accessing remote storage for read requests, particularly in cloud-based environments.

Innovation Solution

Assign immutable storage locations to data units during initial ingest and record these locations in container indexes, allowing read operations to be performed directly from manifests without loading container indexes into memory, thereby reducing the number of data transfers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If container indexes are loaded into memory for each read request to access data unit locations, then read operations can be performed, but network bandwidth and processing resources are consumed due to frequent input/output operations

Engineering Contradiction:
Improveread operation capabilityVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
Ease of operationVSLoss of energy

Solution Approach 1:

The patent applies preliminary action by recording the storage location of each data unit in a manifest during the initial data ingest process. This pre-recorded location information eliminates the need to load container indexes into memory for subsequent read requests, as the manifest already contains the necessary location data. The preliminary recording of storage locations during ingest resolves the contradiction by enabling direct read operations without frequent I/O operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts the essential information needed for read operations (data unit storage locations) from the container index and places it directly into the manifest during ingest. By extracting and pre-storing this critical location information in the manifest, the system eliminates the need to access and load the entire container index for each read request, thereby reducing network bandwidth consumption and I/O operations.

Inventive Principle:
Principle #2Taking out (Extraction)

2Ease of operation

If container indexes are loaded into memory for each read request, then data unit locations can be determined, but processing resources are consumed

Engineering Contradiction:
Improvedata unit location determinationVSAvoidprocessing resource consumption
Core Design Contradiction:
Ease of operationVSUse of energy by moving object

Solution Approach 1:

The patent applies preliminary action by pre-calculating and recording the storage location of each data unit in the manifest during the initial ingest process. This eliminates the need to load container indexes into memory for subsequent read requests, as the manifest already contains the pre-computed location information. The preliminary recording of storage locations resolves the contradiction by enabling direct location determination without consuming processing resources on each read request.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates a copy of the essential location information from the container index and stores it in the manifest during ingest. This copy of the location data in the manifest allows read operations to proceed without accessing the original container index, thereby eliminating the need to load container indexes into memory and reducing processing resource consumption.

Inventive Principle:
Principle #26Copying

3Ease of operation

If frequent input/output operations are performed to access remote storage, then read requests can be fulfilled, but system performance degrades

Engineering Contradiction:
Improveread request fulfillmentVSAvoidsystem performance
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent applies preliminary action by recording the storage location of each data unit in a manifest during the initial data ingest process. This pre-recorded location information enables direct access to data units without requiring frequent I/O operations to query container indexes. The preliminary recording of storage locations resolves the contradiction by enabling read request fulfillment with minimal I/O operations, thereby improving system performance.

Inventive Principle:
Principle #10Preliminary action

4Loss of energy

If container indexes are not loaded into memory, then network bandwidth is conserved, but read operations cannot be performed

Engineering Contradiction:
Improvenetwork bandwidth conservationVSAvoidread operation capability
Core Design Contradiction:
Loss of energyVSEase of operation

Solution Approach 1:

The patent applies preliminary action by pre-recording the storage location of each data unit in the manifest during ingest. This pre-stored location information in the manifest enables read operations to be performed without loading container indexes into memory, as the manifest already contains the necessary location data. This resolves the contradiction by maintaining read operation capability while conserving network bandwidth.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12436927B2Storage location metadata for a deduplication storage system
Publication Date: 2025.10.07 HEWLETT PACKARD ENTERPRISE DEV LP
  • US12436927B2 patent drawing
  • US12436927B2 patent drawing
  • US12436927B2 patent drawing

AI summary

Example implementations relate to deduplication operations in a storage system. An example includes receiving a stream of data units to be stored in a persistent storage of a deduplication storage system; generating a manifest to record a received order of the data units; indexing the data units in container indexes, where each container index records fingerprints and immutable storage locations of one or more data units; in response to a determination that the manifest has reached a threshold size, determining immutable storage locations that are recorded in the container indexes; and updating the manifest to record the determined immutable storage locations.