Localized Application File Compression Using Deduplication and Differencing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The increasing number of localized application files due to language support results in significant file size growth, leading to inefficient storage and deployment of software applications, with existing compression techniques failing to effectively reduce the size of these files.
Innovation Solution
A method that compares and processes application files in a primary language with their localized counterparts, eliminating identical files and using differencing algorithms for XML files to create a single compressed file, reducing file size through efficient data storage and compression techniques.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If software applications provide support for multiple language localizations, then the application becomes more adaptable to global customers, but the number and size of application files significantly increase
Solution Approach 1:
The patent merges multiple localized application files into a single compressed file by identifying and eliminating duplicate content across language versions. Files that are identical across different localizations are consolidated into one copy, while only the unique localized portions are stored separately, dramatically reducing the total number of files while maintaining full language support capability.
Solution Approach 2:
The compressed application file structure is designed to serve multiple language localizations simultaneously through a universal framework. The single compressed file contains a shared base structure that can dynamically provide different language versions, making one file perform the function of multiple separate localized files.
2Adaptability or versatility
If software applications include more template files and features to improve user friendliness, then the application becomes more functional, but the final application size increases
Solution Approach 1:
Multiple template files across different localizations are merged into a single compressed file structure. The system identifies identical template files across language versions and consolidates them, storing only one copy instead of repeating the same content in multiple files, thereby reducing overall application size while preserving all template functionality.
3Quantity of substance
If conventional compression techniques are applied to localized application files, then some size reduction is achieved, but the compression is not effective enough for localized files
Solution Approach 1:
The compression process segments the localized application files by separating identical content from unique localized content. By dividing files into shared portions and language-specific portions, the system can apply compression more effectively to each segment, achieving superior compression ratios compared to applying conventional compression to entire localized files as monolithic units.
Solution Approach 2:
Instead of compressing each localized file independently, the system creates copies of identical files across localizations, identifies them as duplicates, and replaces multiple copies with a single reference. This copying and deduplication approach achieves much higher compression effectiveness than traditional compression algorithms applied to each file separately.
Data Source
AI summary
A method for compressing a first application file and second application file includes accessing the first and the second application files, the first application file being in a first language and the second application being in a second language and being a counterpart of the first application file, decompressing the first and second application files to access internal files for the first and the second application files, comparing one of the first internal files to one of the second internal files, upon determining that the first internal file is identical to the second internal file, copying one of the internal files to an output folder, and upon determining that the files are not identical, copying both of the internal files to the output folder, or executing a differencing procedure on the first and second internal files to identify differences between them, storing data about the differences in the output folder, and compressing the output folder into one output file.


