Virtual Entry Lifetime Extension Through Deferred Reclamation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The end-of-life processing of virtual entries in data storage systems consumes memory and CPU bandwidth, impacting performance due to the need to immediately reclaim virtual entries when their reference count reaches zero.
Innovation Solution
The virtual entry lifetime is expanded by maintaining entries with a reference count of zero until necessary, postponing reclamation to conserve CPU processing resources and optimize deduplication index management.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If virtual entries are immediately reclaimed when reference count reaches zero, then memory utilization is optimized, but CPU bandwidth and processing performance are degraded
Solution Approach 1:
The system performs preliminary actions by maintaining virtual entries with zero reference count in a cache structure before actual reclamation is needed. This allows the system to prepare and stage reclamation operations in advance, reducing the immediate CPU processing burden when reclamation actually occurs.
Solution Approach 2:
An intermediary data structure (cache) is introduced between the virtual entry and its final reclamation. This cache holds virtual entries with zero reference count temporarily, acting as a buffer that decouples the reference count update operation from the actual reclamation operation, thereby reducing CPU bandwidth consumption during normal operations.
2Productivity
If virtual entries are maintained with zero reference count, then CPU processing resources are conserved, but memory consumption increases
Solution Approach 1:
The system changes the state parameter of virtual entries by introducing a new reference count value (a second zero or negative value) that indicates the entry should be maintained in cache rather than immediately reclaimed. This parameter change allows the system to differentiate between virtual entries that should be freed immediately and those that can be cached for later reclamation.
3Stability of the object's composition
If end-of-life processing is performed immediately, then data structure consistency is maintained, but system performance and storage efficiency are reduced
Solution Approach 1:
Instead of performing end-of-life processing continuously or immediately for each virtual entry, the system implements periodic batch processing. Virtual entries with zero reference count are collected and processed together in periodic batches, reducing the overall processing overhead while maintaining data structure consistency through controlled updates.
Data Source
AI summary
A method, computer program product, and computing system for expanding the lifetime of virtual entries in a data storage system. A deduplication function of a virtual layer of a data storage system is monitored, a reference count of a virtual entry is incremented when a data page is written to a physical layer of the data storage system and the reference count of the virtual entry is decremented when a data page is deleted from the virtual layer. The virtual entry in the virtual layer is maintained when the reference count reaches a predetermined value and the virtual entry is reclaimed when a predetermined action of the data storage system is to be performed.


