Storage Processor Dual Allocation Unit Size Data Blocks
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional data storage systems offer little benefit from compression as they disrupt block mapping when storing compressed data, and reading/writing data on a block-by-block basis is inefficient, leading to suboptimal disk and cache utilization.
Innovation Solution
Storing compressed data in blocks of a first allocation unit size and uncompressed data in blocks of a second allocation unit size larger than the first, allowing for better disk and cache utilization without disrupting block mapping.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If compressed data is stored in uniformly-sized blocks, then storage space utilization is improved, but block mapping is disrupted
Solution Approach 1:
The patent segments the storage system into two distinct block types: compressed blocks for storing compressed data and uncompressed blocks for storing uncompressed data. This segmentation allows each block type to be optimized independently, with compressed blocks using smaller allocation units to maximize space utilization while uncompressed blocks maintain the original allocation unit size to preserve block mapping integrity.
Solution Approach 2:
The patent applies local quality by assigning different allocation unit sizes to different data types within the same storage system. Compressed data blocks use a first allocation unit size optimized for compression efficiency, while uncompressed data blocks use a second allocation unit size that maintains compatibility with existing block mapping structures. This localized optimization resolves the contradiction by allowing space efficiency where needed while preserving mapping where required.
2Ease of operation
If data is read and written on a block-by-block basis, then simplicity of operation is maintained, but disk and cache utilization is suboptimal
Solution Approach 1:
The patent introduces dynamic block allocation where the system can choose between compressed and uncompressed blocks based on data characteristics and access patterns. The storage system dynamically selects appropriate block types for different data, allowing flexible optimization of disk and cache utilization while maintaining the simple block-by-block operation model through a unified interface that abstracts the complexity of block management.
Data Source
AI summary
Improved techniques for storing data involve storing compressed data in blocks of a first AU size and storing uncompressed data in blocks of a second AU size larger than the first AU size. For example, when a storage processor compresses a chunk of data, the storage processor checks whether the compressed chunk fits in the smaller AU size. If the compressed chunk fits, then the storage processor stores a compressed chunk in a block having the smaller AU size. Otherwise, the storage processor stores the uncompressed chunk in a block having the larger AU size. Advantageously, the improved techniques promote better disk and cache utilization, which improves performance without disrupting block mapping.


