Storage Drive Lossy Compression With Adaptive Algorithm Selection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing on-drive data compression methods are unintelligent, ignoring data characteristics and types, leading to inefficient use of CPU cycles and energy, as they always perform lossless compression and rely on the host for lossy data compression, which can be resource-intensive.
Innovation Solution
A storage device capable of intelligently performing lossy data compression by selecting appropriate algorithms based on parameters, metadata, and user preferences, allowing for varying levels of control and offloading CPU-intensive tasks from the host.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If lossless data compression is always used on the drive, then data integrity is maintained, but storage efficiency and CPU resource utilization are suboptimal
Solution Approach 1:
The system dynamically selects between lossless and lossy compression algorithms based on data type classification and user preferences. The compression method is not fixed but adapts to different data characteristics, allowing the system to optimize for either integrity or efficiency depending on the specific data being processed
Solution Approach 2:
The system changes the compression parameter (lossless vs. lossy) based on data type and user settings. By modifying this critical parameter according to data characteristics, the system achieves both high integrity for appropriate data types and high efficiency for others
2Productivity
If the host performs lossy data compression, then storage efficiency is improved, but CPU cycles and energy consumption increase significantly
Solution Approach 1:
The system extracts the data compression function from the host CPU and relocates it to the storage device. This extraction transfers the computational burden from the host to the drive, improving storage efficiency without penalizing host CPU resources
Solution Approach 2:
The storage device performs compression on its own without requiring host intervention. The drive autonomously classifies data, selects algorithms, and executes compression, making the system self-sufficient and eliminating the need for host CPU participation in compression operations
3Device complexity
If unintelligent compression is used where every file is compressed with the same algorithm, then device complexity is reduced, but compression effectiveness and resource utilization deteriorate
Solution Approach 1:
The system segments the compression process into distinct stages: data classification, algorithm selection, and compression execution. By dividing the process into modular segments, the system achieves high effectiveness without excessive complexity, as each segment handles a specific task independently
Solution Approach 2:
The storage device implements a universal compression system that handles multiple data types with multiple algorithms through a unified interface. The system provides multi-functionality by adapting to different data types while maintaining a consistent user experience and control mechanism
Data Source
AI summary
A method for lossy data compression, the method including receiving raw data at a storage device, receiving a request to compress flag, accessing an onboard data compression algorithm library containing various data compression algorithms respectively corresponding to lossy data compression schemes, selecting one of the data compression algorithms based on a number of parameters, running the selected data compression algorithm either online such that the raw data is compressed by the storage device when it is received, and is then stored on the storage device as compressed data, or offline such that the raw data is stored at the storage device, is later compressed by the storage device according to the selected data compression algorithm, and is resaved at the storage device as compressed data.

