Storage-Assisted Data Structure Compaction via Memory Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Data structures containing invalid data consume additional memory and storage space, and existing cleaning operations increase memory usage, IO operations, and power consumption.
Innovation Solution
Implement a memory access technique to load and merge valid data from storage device blocks into a more compact form, either at the host processor or storage device, reducing memory usage and IO operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If a cleaning operation is performed to merge valid data from storage device blocks, then memory usage is reduced, but IO operations and power consumption increase
Solution Approach 1:
The system performs preliminary actions by loading blocks of data into a cache memory structure before performing the cleaning operation. This allows the cleaning operation to proceed more efficiently using cached data rather than repeatedly accessing the storage device, thereby reducing IO operations and power consumption while still achieving memory usage reduction through valid data merging.
Solution Approach 2:
The patent introduces a cache memory as an intermediary between the host memory and storage device. The cache memory stores blocks of data temporarily, allowing the cleaning operation to merge valid data more efficiently without requiring direct, frequent IO operations to the storage device. This intermediary structure reduces the impact on IO operations and power consumption while achieving the goal of reducing memory usage through data consolidation.
2Quantity of substance
If a cleaning operation is performed to merge valid data from storage device blocks, then memory usage is reduced, but power consumption increases
Solution Approach 1:
The system performs preliminary actions by loading blocks of data into a cache memory structure before performing the cleaning operation. This allows the cleaning operation to proceed more efficiently using cached data rather than repeatedly accessing the storage device, thereby reducing power consumption while still achieving memory usage reduction through valid data merging.
Solution Approach 2:
The patent introduces a cache memory as an intermediary between the host memory and storage device. The cache memory stores blocks of data temporarily, allowing the cleaning operation to merge valid data more efficiently without requiring direct, frequent IO operations to the storage device. This intermediary structure reduces the power consumption associated with repeated data transfers and storage device access while achieving the goal of reducing memory usage through data consolidation.
3Quantity of substance
If valid data is merged into a compact form, then space utilization is optimized, but the complexity of the cleaning operation increases
Solution Approach 1:
The patent segments the cleaning operation into manageable steps: loading blocks of data into cache memory, identifying valid data within those blocks, merging valid data into a compact form, and updating the data structure. This segmentation reduces the overall complexity by breaking down the cleaning operation into discrete, controllable phases that can be executed systematically.
Solution Approach 2:
The cache memory serves as an intermediary that simplifies the cleaning operation complexity. By loading data into the cache first, the system can perform merging operations more easily without directly manipulating the complex storage device structure. The cache acts as a buffer that reduces the complexity of coordinating data transfers and merging operations across the storage system.
Data Source
AI summary
A method may include operating, by at least one processor, a data structure, receiving, by the at least one processor, from a storage device, using a memory access technique, information for a modification operation for the data structure, and performing, by the at least one processor, using the information, at least a portion of the modification operation. A system may include a storage device, and a host comprising at least one processor configured to operate a data structure, receive, from the storage device, using a memory access technique, information for a modification operation for the data structure, and perform, using the information, at least a portion of the modification operation. A device may include a storage medium, a memory, and a device controller configured to receive, using a memory access technique, information for a modification operation for a data structure and perform at least a portion of the modification operation.


