Multi-version Data Document Control via Block Fingerprinting
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for software upgrades and data document versioning are inefficient due to lengthy processing times and low compression rates, as they fail to effectively identify and manage common and unique data contents between different versions.
Innovation Solution
A multi-version control method that generates data-block fingerprints for both versions, determines common and unique data contents, and indexes them, allowing for efficient storage and restoration of data by identifying identical and distinct content blocks using XOR operations and binary search.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If traditional software upgrade processing is used with multifarious editing actions, then version control functionality is achieved, but processing time is long and time efficiency is poor
Solution Approach 1:
The patent segments data documents into fixed-length data blocks and generates fingerprints for each block. This segmentation allows the system to process only relevant blocks during version comparison and restoration, rather than processing entire documents, thereby significantly reducing processing time and improving time efficiency.
Solution Approach 2:
The patent uses fingerprint copying and matching to identify common data blocks between versions. Instead of comparing actual data contents, the system copies and compares compact fingerprint representations, which dramatically speeds up the version comparison and restoration process.
2Loss of substance
If only indexing relationship between two versions is established, then version switching flexibility is achieved, but compression rate is not high enough
Solution Approach 1:
The patent extends the version control from traditional two-version indexing to multi-version control by organizing versions in a tree structure with benchmark versions and newer versions. This dimensional extension allows the system to identify common data blocks across multiple versions, achieving higher compression rates while maintaining version switching flexibility through the extended index structure.
3Volume of stationary object
If detailed contents compression is not performed, then processing simplicity is maintained, but storage space is not optimized
Solution Approach 1:
The patent extracts and stores only the essential identification information (fingerprints, lengths, and position information) of common data blocks rather than storing complete detailed contents. This extraction approach significantly reduces storage space requirements while maintaining the ability to restore versions, with the added benefit that fingerprint generation and comparison adds manageable processing complexity.
Applied Scientific Principles
This section explains which scientific principles are used to turn an abstract innovation direction into a practical engineering solution.
Function Achieved in This Case
This method significantly reduces storage space and improves time efficiency by storing only length and position information of common data contents, enabling quick restoration and enhanced compression rates across multiple versions.
Implementation Method 1
performing the exclusive-OR (XOR) operation on the data contents of the sub-blocks, and a result of XOR is used as the data-block fingerprint
Data Source
AI summary
The invention discloses a multi-version control method for data documents, and a device thereof. The method comprises generating data-block fingerprints for all data blocks of a benchmark version; determining common data contents common between a newer version and the benchmark version according to the data-block fingerprints, and indexing the common data contents; determining the data contents peculiar to the newer version, i.e. not contained in the benchmark version according to the indexes, and indexing these particular data contents; determining positions of these data contents in the newer version according to the indexes; determining the data blocks with identical data contents between the two versions through the comparisons of data-block fingerprints and data contents; extracting the data contents common between the two versions, the data contents peculiar to the newer version, as well as the positions of the data contents in the newer version.


