Opportunistic Compression for Storage Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The transition to 4 KiB object sizes in computing systems diminishes the effectiveness of data compression, leading to reduced storage efficiency and network bandwidth optimization, as devices with 4 KiB native sector sizes incur overhead for smaller sector sizes and limit compression effectiveness on small data objects.

Innovation Solution

The technique involves opportunistically compressing data by merging adjacent 4 KiB objects into 64 KiB objects when possible, particularly during large writes, sequential workloads, and remote backups, using a storage system with a Merkle tree structure and look-aside bits to manage compression and decompression efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data is compressed into smaller sizes to improve storage efficiency, then storage efficiency improves, but device complexity increases due to overhead for emulating smaller sector sizes

Engineering Contradiction:
Improvestorage efficiencyVSAvoidoverhead for emulating smaller sector
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent segments data into fixed 4 KiB objects that align with native sector sizes, avoiding the need to compress individual smaller objects. This segmentation strategy allows compression to operate at the object level rather than at the sector level, eliminating the overhead of emulating smaller sectors while maintaining storage efficiency through compression of complete 4 KiB objects.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the compression parameter from operating on variable-sized sectors to operating on fixed 4 KiB objects. By standardizing the object size to match the native sector size, the system achieves compression efficiency without the device complexity overhead associated with emulating smaller sector sizes.

Inventive Principle:
Principle #35Parameter changes

2Quantity of substance

If compression is applied to 4 KiB objects to improve storage efficiency, then storage efficiency improves, but compression effectiveness diminishes

Engineering Contradiction:
Improvestorage efficiencyVSAvoidcompression effectiveness
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent merges multiple 4 KiB objects into larger compressed units, particularly during large writes and sequential workloads. By combining adjacent 4 KiB objects into 64 KiB or larger compressed blocks, the system maintains high compression effectiveness while working with the 4 KiB object constraint. This merging approach allows compression algorithms to process larger data volumes more effectively.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent dynamically adjusts compression behavior based on workload characteristics. During sequential workloads and large writes, the system merges objects to enable more effective compression. For random access patterns, it maintains individual 4 KiB object handling. This dynamic adaptation ensures compression effectiveness is optimized for the current operational context.

Inventive Principle:
Principle #15Dynamics

3Quantity of substance

If compression is applied to small data objects to improve storage efficiency, then storage efficiency improves, but compression/decompression overhead increases

Engineering Contradiction:
Improvestorage efficiencyVSAvoidcompression/decompression overhead
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent applies compression selectively rather than universally. It compresses data when and where it provides benefit, such as during large writes and sequential workloads, while avoiding compression for small or randomly accessed objects where the overhead would exceed the benefits. This partial application strategy reduces unnecessary compression/decompression overhead while maintaining storage efficiency where compression is effective.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11119681B2Opportunistic compression
Publication Date: 2021.09.14 HEWLETT PACKARD ENTERPRISE DEV LP
  • US11119681B2 patent drawing
  • US11119681B2 patent drawing
  • US11119681B2 patent drawing

AI summary

A method for storing data in a storage system, includes opportunistically compressing a plurality of objects of a first size during a write operation, storing the compressed objects of the first size if they compress acceptably, and storing other objects of a second size uncompressed. It further includes determining during a read operation whether an object of the second size is stored as a part of a compressed object; if the object of the second size is not stored as a part of a compressed object of the first size, then reading the object of the second size from storage; if the object of the second size is stored as a part of the compressed object of the second size, then: reading the compressed object of the first size from storage; uncompressing the compressed object of the first size; and extracting the object of the second size.