Shared Dictionary Compression for Variable-Length Data Blocks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data compression systems face challenges in efficiently managing dictionaries for data blocks of varying lengths, leading to increased storage requirements and reduced performance due to the large number of dictionaries needed.

Innovation Solution

A data compression system that uses shared hash tables and dictionaries across different data lengths, reducing the number of tables and dictionaries required by dividing input data into blocks of varying lengths and utilizing a shared structure for hash tables and compression dictionaries.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If the number of patterns of data lengths is increased to improve compression performance, then compression accuracy is improved, but the number of dictionaries increases and physical storage area required increases

Engineering Contradiction:
Improvecompression accuracyVSAvoidphysical storage area
Core Design Contradiction:
Manufacturing precisionVSQuantity of substance

Solution Approach 1:

The patent creates a shared dictionary that serves multiple data length patterns simultaneously. Instead of having separate dictionaries for 2-byte, 4-byte, 8-byte, and 16-byte patterns, a single shared dictionary is used that can handle all these patterns, thereby reducing the total number of dictionaries while maintaining compression accuracy for all data lengths.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent merges multiple separate dictionaries into one shared dictionary structure. By combining the functionality of multiple dictionaries into a single unified structure, the system reduces the quantity of storage required while preserving the ability to compress data of various lengths effectively.

Inventive Principle:
Principle #5Merging (Combining)

2Adaptability or versatility

If the number of dictionaries is increased to handle more data length patterns, then adaptability to different data patterns is improved, but device complexity increases

Engineering Contradiction:
Improvehandling multiple data lengthsVSAvoidnumber of dictionaries
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The shared dictionary is designed to be universal, handling multiple data length patterns (2-byte, 4-byte, 8-byte, 16-byte) within a single structure. This universal approach maintains adaptability to different data patterns while reducing device complexity by eliminating the need for multiple separate dictionaries.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent segments the shared dictionary into multiple areas, each dedicated to handling specific data length patterns. This segmentation allows the single shared dictionary to efficiently manage different data lengths by directing each pattern to its appropriate area, maintaining versatility without increasing overall complexity.

Inventive Principle:
Principle #1Segmentation

3Productivity

If separate dictionaries are used for each data length pattern, then compression performance for specific patterns is optimized, but storage efficiency decreases

Engineering Contradiction:
Improvecompression performanceVSAvoidstorage efficiency
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent merges multiple separate dictionaries into one shared dictionary, improving storage efficiency by eliminating redundant storage. The shared dictionary maintains compression performance for specific patterns by providing dedicated areas within the shared structure for each data length pattern, thus achieving both storage efficiency and compression performance.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The shared dictionary implements local quality by creating distinct areas within the shared structure, where each area is optimized for specific data length patterns. This allows each pattern to receive specialized handling within the unified dictionary, maintaining high compression performance while using a single shared storage structure.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS9647682B1Data compression system and method
Publication Date: 2017.05.09 KK TOSHIBA
  • US9647682B1 patent drawing
  • US9647682B1 patent drawing
  • US9647682B1 patent drawing

AI summary

A divider divides an input data into a plurality of data blocks. A hash calculator calculates a hash value of each data block. A compression dictionary memory stores a compression dictionary that stores a previous input data and includes a shared dictionary shared by different data lengths. A hash table memory stores a hash table that stores an address representing a storage location of the data block corresponding to the hash value on the compression dictionary for each data block and includes a shared table shared by different data lengths. An address acquirer acquires the address corresponding to the data block based on the hash table. A matcher determines sameness between the previous data block indicated by the address and the new input data. An encoder generates a compressed data that includes matching information and a matched portion is converted to the address.