Virtualization Storage De-duplication via Read-Time Fingerprinting

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In virtualization environments, existing approaches to storage management are inefficient due to coarse-grained administration and the inability to effectively de-duplicate data within high-performance tiers, leading to suboptimal resource utilization and performance.

Innovation Solution

Implementing a content cache on high-performance storage tiers, such as RAM and flash, that uses fingerprints (like SHA1) to associate and de-duplicate data chunks, allowing for efficient read operations while writing data without initial de-duplication, thereby optimizing storage utilization and performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If data is written without initial de-duplication to high-performance storage tiers, then write operations are faster, but storage space is wasted due to duplicated data

Engineering Contradiction:
Improvewrite operation speedVSAvoidstorage space utilization
Core Design Contradiction:
SpeedVSLoss of substance

Solution Approach 1:

The system performs de-duplication during read operations rather than write operations. When data is read from high-performance storage tiers, the system checks for duplicate copies and consolidates them, thereby eliminating storage waste without impacting write speed. This preliminary action is deferred to the read phase, allowing writes to proceed at full speed.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The de-duplication process is integrated into the read operation itself, where the system serves data requests while simultaneously performing de-duplication. The read operation serves dual purposes: delivering data to the user and identifying/consolidating duplicates, thereby eliminating the need for separate de-duplication processing.

Inventive Principle:
Principle #25Self-service

2Loss of substance

If de-duplication is performed during read operations in high-performance tiers, then storage utilization improves, but read operation complexity increases

Engineering Contradiction:
Improvestorage space utilizationVSAvoidread operation complexity
Core Design Contradiction:
Loss of substanceVSDevice complexity

Solution Approach 1:

The system merges the de-duplication function with the read operation, so that a single read operation simultaneously retrieves data and performs de-duplication checking. This consolidation eliminates the need for separate de-duplication processing steps, reducing overall system complexity while achieving storage optimization.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The read operation is designed to perform multiple functions: data retrieval, duplicate detection, and duplicate consolidation. This multi-functional approach eliminates the need for specialized de-duplication hardware or software components, thereby reducing system complexity while achieving storage optimization.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Speed

If a content cache is implemented on high-performance storage tiers, then read performance improves, but storage capacity is reduced

Engineering Contradiction:
Improveread operation speedVSAvoidstorage capacity
Core Design Contradiction:
SpeedVSVolume of stationary object

Solution Approach 1:

The system extracts duplicate data copies from high-performance storage tiers and consolidates them into a single copy. This extraction process eliminates wasted storage space while maintaining the content cache functionality, as the cache retains only unique data blocks that need to be cached for performance optimization.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system changes the state of stored data from duplicated multiple copies to a single de-duplicated copy, thereby changing the storage capacity parameter. This parameter change is achieved through fingerprint-based identification and consolidation, which allows the system to maintain cache effectiveness while reducing total storage requirements.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10120577B2Method and system for implementing performance tier de-duplication in a virtualization environment
Publication Date: 2018.11.06 NUTANIX INC
  • US10120577B2 patent drawing
  • US10120577B2 patent drawing
  • US10120577B2 patent drawing

AI summary

The present application provides an improved approach for managing performance tier de-duplication in a virtualization environment. A content cache is implemented on high performance tiers of storage in order to maintain a working set for the user virtual machines accessing the system, and associates fingerprints with data stored therein. During write requests from the user virtual machines, fingerprints are calculated for the data to be written. However, no de-duplication is performed during the write. During read requests, fingerprints corresponding to the data to be read are retrieved and matched with the fingerprints associated with the data in the content cache. Thus, while multiple pieces of data having the same fingerprints may be written to the lower performance tiers of storage, only one of those pieces of data having that fingerprint will be stored in the content cache for fulfilling read requests.