Deduplicating Data Segment Reference Limits

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional deduplicating data systems face issues with storage space fragmentation and data corruption due to uneven deletion rates of data segments and multiple files referencing the same segments, leading to inefficient storage management.

Innovation Solution

Implementing a method that identifies data segments with reference limits, creates additional instances when limits are reached, and manages these instances to prevent corruption by storing them in separate containers, allowing for frequent freeing of storage space and efficient data repair.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If multiple data objects reference the same data segment to reduce storage space, then storage efficiency is improved, but data corruption risk increases when segments become corrupt

Engineering Contradiction:
Improvestorage space utilizationVSAvoiddata corruption risk
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent creates a copy of the data segment (second instance) when the reference limit is reached, allowing the system to maintain multiple references without increasing corruption risk. The copy is stored in a separate container, providing redundancy that prevents total data loss if the original segment becomes corrupt.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent divides data into segments and further segments the management of these segments by creating separate containers for different instances of the same segment. This segmentation isolates corruption risks to specific containers while maintaining overall system functionality.

Inventive Principle:
Principle #1Segmentation

2Productivity

If data segments are deleted when unreferenced to free storage space, then storage fragmentation increases over time, but implementing reference limits adds system complexity

Engineering Contradiction:
Improvestorage space freeing rateVSAvoidreference management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces a reference limit parameter that changes the behavior of data segment management. By setting a maximum number of references allowed for each segment, the system achieves predictable storage freeing patterns without complex management overhead. The limit parameter simplifies the deletion policy from arbitrary to rule-based.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If data segments are stored in separate containers to prevent corruption spread, then storage fragmentation is reduced, but system complexity increases

Engineering Contradiction:
Improvecorruption isolationVSAvoidcontainer management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges the corruption isolation function with the existing container structure used for data segment storage. By making containers separate entities that can hold multiple segment instances, the system achieves corruption isolation without introducing a completely new management layer. The container structure is leveraged to provide both storage organization and reliability functions.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS9256612B1Systems and methods for managing references in deduplicating data systems
Publication Date: 2016.02.09 COHESITY INC
  • US9256612B1 patent drawing
  • US9256612B1 patent drawing
  • US9256612B1 patent drawing

AI summary

A computer-implemented method for managing references in deduplicating data systems may include (1) identifying a first instance of a data segment stored within a deduplicating data system that reduces redundant data storage by storing at least two data objects such that each of the two data objects references the first instance of the data segment, (2) identifying an additional data object to be stored by the deduplicating data system that includes the data segment, (3) determining whether a reference limit associated with the first instance of the data segment has been reached, and (4) storing, based at least in part on determining that the reference limit associated with the first instance of the data segment has been reached, a second instance of the data segment within the deduplicating data system. Various other methods, systems, and computer-readable media are also disclosed.