Partial Data Seglet Decompression via Endpoint Mapping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data compression techniques result in increased delays due to the decompression process, as they require decompressing entire data seglets even when only a portion of the data is needed, which is inefficient in terms of computational resources and time.

Innovation Solution

Implementing a mapping that identifies the decompression endpoint for each data block within a data seglet, allowing for the decompression of only the necessary portion of the seglet, thereby reducing the computational resources and time required for decompression.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the entire data seglet is decompressed to retrieve a data block, then the data block can be accessed, but unnecessary computational resources and time are wasted decompressing data that will not be used

Engineering Contradiction:
Improvedata access efficiencyVSAvoiddecompression time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent divides the data seglet into individual compressed data blocks, each with its own length indicator. This allows the system to decompress only the specific block containing the requested data rather than decompressing the entire seglet, thereby reducing decompression time and computational resource usage while maintaining data access efficiency

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements partial decompression by using the data block length indicator to determine exactly how much data to decompress. The decompression process stops at the precise endpoint needed to retrieve the requested data block, avoiding the excessive action of decompressing the entire data seglet and eliminating waste of computational resources on unnecessary data

Inventive Principle:
Principle #16Partial or excessive action

2Quantity of substance

If data compression is applied to reduce storage space and transmission time, then data storage efficiency improves, but decompression delay increases

Engineering Contradiction:
Improvestorage capacityVSAvoiddecompression delay
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent stores the data block length indicator during the compression phase, before decompression is needed. This preliminary action allows the decompression process to immediately know the exact size of each data block, enabling rapid partial decompression without needing to process the entire compressed seglet, thus reducing decompression delay while maintaining storage efficiency

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses the stored length indicator to perform only the necessary partial decompression of each data block. This avoids the excessive decompression of entire data seglets, significantly reducing decompression delay while preserving the storage efficiency benefits of compression. The system decompresses exactly what is needed—no more, no less

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10027984B2Methods and systems for efficiently reading a data block from a data seglet with compressed data blocks
Publication Date: 2018.07.17 HEWLETT PACKARD ENTERPRISE DEV LP
  • US10027984B2 patent drawing
  • US10027984B2 patent drawing
  • US10027984B2 patent drawing

AI summary

When data blocks of a data seglet are compressed using a shared dictionary and when the requested data block (or blocks) do not include the last data block of the data seglet, an optimization in the read path may involve decompressing a certain portion of the data seglet from a starting position of the data seglet to a decompression endpoint of the data seglet, but not including the portion of the data seglet following the decompression endpoint. Such technique may involve the storing of a mapping that maps, for each data block within the data seglet, an identifier of the data block to a decompression endpoint that indicates a portion of the data seglet that includes the data block.