Garbage Collection Page Delta Objects Storage Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Storage systems face challenges in providing flexibility to meet varying performance and feature requirements across different workloads, particularly in software-defined storage environments where custom hardware is not available to boost performance.
Innovation Solution
The implementation of garbage collection techniques in storage systems that utilize an object store for persistent storage, where a validity score is determined for data pages, and page delta objects are generated for changed data, optimizing garbage collection by writing only updated data to the object store instead of rewriting entire page objects.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If garbage collection rewrites entire page objects in the object store, then data persistence is ensured, but storage capacity is wasted and write performance deteriorates due to redundant writes
Solution Approach 1:
The patent segments a page object into multiple page delta objects, where each page delta object represents a portion of the page (e.g., a stripe or chunk). Instead of rewriting the entire page object during garbage collection, only the modified portions are written as individual page delta objects. This segmentation allows the system to maintain data persistence while minimizing redundant writes to the object store.
Solution Approach 2:
The patent changes the granularity parameter of data storage from page-level to delta-level. By tracking which specific portions of pages have been modified and only rewriting those portions as page delta objects, the system optimizes storage capacity utilization while ensuring data persistence through selective rewriting during garbage collection.
2Reliability
If garbage collection rewrites entire page objects, then data integrity is maintained, but processing resources are consumed inefficiently
Solution Approach 1:
The patent divides page objects into smaller page delta objects representing specific modified portions. During garbage collection, only these modified portions need to be rewritten and validated, rather than processing entire page objects. This segmentation significantly reduces the computational overhead and processing time while maintaining data integrity through selective validation of changed data.
Solution Approach 2:
The patent applies partial action by rewriting only the necessary portions of data (page deltas) instead of performing excessive full page rewrites. This approach maintains data integrity for modified regions while avoiding the wasted processing resources that would result from rewriting unchanged portions of page objects.
3Adaptability or versatility
If the storage system uses software-defined storage without custom hardware, then flexibility for different workloads is achieved, but performance enhancement options are limited
Solution Approach 1:
The patent changes the operational parameters of garbage collection from bulk page rewriting to selective delta rewriting. This parameter change optimizes write performance by reducing the amount of data transferred to and processed from the object store, thereby compensating for the lack of custom hardware acceleration in software-defined storage systems.
Solution Approach 2:
The patent discards the traditional approach of rewriting entire page objects and recovers performance by only rewriting modified portions as page delta objects. This selective recovery of write operations reduces I/O overhead and processing time, enhancing storage performance in software-defined environments without requiring custom hardware.
Data Source
AI summary
An apparatus comprises a processing device configured to initiate garbage collection for data pages stored in local storage of a storage node of a storage system. The processing device is also configured to determine, for a given data page stored in the local storage of the storage node, a validity score characterizing a size of changed data in the given data page, and to compare the validity score for the given data page to at least one designated threshold. The processing device is further configured to update a given page object for the given data page in an object store of persistent storage responsive to a first comparison result, and to generate, in the object store of the persistent storage, a page delta object for the given data page responsive to a second comparison result, the page delta object comprising the changed data in the given data page.


