Dynamic Dictionary Encoding for Cross-Device Text Compression
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional text compression technologies face limitations in efficiently utilizing compressed data across different devices due to the use of static dictionaries, which restrict the expansion and utilization of compressed data on computers with varying dictionary sizes, especially when compressing and decompressing data between terminal devices and cloud systems.
Innovation Solution
The implementation of a dynamic dictionary that assigns new compressed codes to unregistered words and includes preliminary information, allowing for effective encoding and decoding of input data across devices with different dictionary sizes by storing the dynamic dictionary within the compressed file.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If a small-scale dictionary is used in terminal devices to suppress storage capacity, then storage capacity is reduced, but the ability to handle unknown words and perform data mining is limited
Solution Approach 1:
The dictionary is divided into two segments: a small-scale first dictionary stored in terminal devices for basic compression, and a large-scale second dictionary stored in cloud systems for handling unknown words and data mining. This segmentation allows terminal devices to maintain low storage requirements while still enabling comprehensive word handling through cloud-based expansion.
Solution Approach 2:
The encoding system acts as an intermediary that manages dictionary selection and code assignment. It determines whether to use codes from the first dictionary or assign new codes from the second dictionary, mediating between the limited terminal device resources and the comprehensive cloud-based dictionary to resolve the contradiction between storage capacity and adaptability.
2Adaptability or versatility
If a large-scale dictionary is used in cloud systems to perform data mining, then data mining capability is improved, but storage capacity consumption increases
Solution Approach 1:
The dictionary is divided into two segments: a small-scale first dictionary stored in terminal devices for basic compression, and a large-scale second dictionary stored in cloud systems for handling unknown words and data mining. This segmentation allows terminal devices to maintain low storage requirements while still enabling comprehensive word handling through cloud-based expansion.
Solution Approach 2:
Instead of distributing the entire large-scale dictionary to all terminal devices, the system creates a lightweight copy (first dictionary) containing only frequently used words. The full dictionary (second dictionary) remains in the cloud system, allowing terminal devices to achieve compression functionality with minimal storage while maintaining access to comprehensive word coverage through the cloud-based copy.
3Device complexity
If a static dictionary is used for compression, then encoding simplicity is maintained, but the utilization of compressed data across different devices is limited
Solution Approach 1:
The system transitions from a purely static dictionary approach to a dynamic encoding system that can adapt between two dictionary types. The encoding device dynamically selects whether to use the first dictionary (for simplicity and compatibility) or the second dictionary (for enhanced adaptability and data mining), allowing the system to maintain encoding simplicity when needed while enabling cross-device utilization when beneficial.
Solution Approach 2:
The system changes the parameter of dictionary scale based on the encoding context and target device capabilities. By selectively using codes from the first dictionary or assigning new codes from the second dictionary, the system adapts the encoding parameters to balance simplicity and adaptability, enabling compressed data to be effectively utilized across devices with different dictionary scales.
Data Source
AI summary
A non-transitory computer-readable recording medium stores an encoding program that causes a computer to execute a process. The process includes first encoding a first character string in input data to a first code, when the first character string being registered in a first dictionary, the first code being associated with the first character string in the first dictionary; second encoding a second character string in input data to a second code and registering the second character string to a dynamic dictionary, when the second character string being not registered in the first dictionary, the second code being associated with the second character string and preliminary information in the dynamic dictionary; and generating encoded data including the encoded input data and the dynamic dictionary.


