SSD Compression Prediction for Throughput-Aware Data Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional data compression methods in storage systems often result in unnecessary latency and throughput degradation due to inefficient compression of data types and formats, especially in block storage systems where file types and formats are not easily identifiable, leading to poor compression ratios and performance losses.
Innovation Solution
A compression system with a predictor that analyzes metadata and entropy-based algorithms to determine the compressibility of data and selects the appropriate compression algorithm based on Quality of Service (QoS) requirements and device capabilities, optimizing compression performance in key-value storage systems.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If compression algorithms are applied to all incoming data, then storage capacity utilization is improved, but throughput and latency deteriorate due to unnecessary processing of already compressed data
Solution Approach 1:
The system performs preliminary analysis of incoming data to determine compressibility before applying compression algorithms. The compression predictor evaluates data characteristics and predicts whether compression will be effective, preventing unnecessary compression of already compressed or incompressible data types
Solution Approach 2:
The system dynamically changes compression parameters based on data type detection. Different compression algorithms and parameters are selected based on the predicted compressibility and type of data, optimizing the balance between storage efficiency and processing performance
2Quantity of substance
If compression algorithms are applied to all incoming data, then storage capacity utilization is improved, but processor cycles are wasted on incompressible data
Solution Approach 1:
The compression predictor performs preliminary evaluation of data compressibility using metadata analysis and entropy-based algorithms before committing processor resources to actual compression, avoiding wasted cycles on incompressible data
Solution Approach 2:
The system uses inherent data characteristics and metadata (such as file type information, entropy values, and data patterns) to self-determine compressibility without requiring extensive sampling or trial compression, reducing processor overhead
3Quantity of substance
If block storage systems compress individual logical blocks, then storage capacity is increased, but compression effectiveness deteriorates due to inability to identify file types
Solution Approach 1:
The system transitions from block-level compression to a finer-grained level of data organization where individual data objects or records can be identified and compressed based on their type. This dimensional change enables file type identification and targeted compression algorithms
4Quantity of substance
If block storage systems perform compression on all blocks, then storage capacity is increased, but system complexity increases due to tracking and mapping operations
Solution Approach 1:
The system extracts and utilizes metadata and identification information from data blocks to determine compressibility, separating the decision-making process from the compression execution. This reduces the complexity of tracking and mapping by focusing only on compressible data
Data Source
AI summary
Embodiments of the present invention include a compression system including one or more compressibility inputs; a compression predictor configured to predict the compressibility of data based on the one or more compressibility inputs; a compressor configured to compress the data; and one or more compression inputs. At least one of the compression predictor or the compressor is configured to determine how to compress the data based on the one or more compression inputs. The one or more compressibility inputs comprise at least one of an object extension dictionary, an object signature dictionary, and an entropy estimation algorithm library. The one or more compression inputs comprise at least one of a quality of service profile, a device performance profile and a compression algorithm performance chart.


