Multi-Level Version Format for Fast File Comparison
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current version labeling systems for large-scale software products, such as Microsoft Windows, struggle to track irregular patches and user modifications, leading to inefficiencies in file comparison processes that consume significant processor resources and network bandwidth.
Innovation Solution
A system and method that generate and compare multi-level folder and file hash indexes to determine the contents of directories at a binary level, allowing for quick identification of matching and non-matching files and folders, thereby enabling efficient updates without requiring a full directory comparison.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If a file compare is executed on each individual file to determine which files do not match, then the comparison accuracy is improved, but the processing time and processor resources are significantly increased
Solution Approach 1:
The patent segments the file comparison process into two distinct stages: (1) comparing file metadata (size, name, attributes) to quickly identify potential matches, and (2) performing binary content comparison only on files that fail the metadata check. This segmentation allows the system to achieve accurate comparison results while minimizing the time-consuming binary comparison operations to only the necessary subset of files.
Solution Approach 2:
The patent performs preliminary actions by first comparing file metadata (names, sizes, attributes) before executing the more resource-intensive binary content comparison. This preliminary filtering step quickly eliminates files that are obviously different, allowing the system to proceed with accurate binary comparison only on files that pass the initial metadata check, thereby reducing overall processing time while maintaining accuracy.
2Measurement precision
If a file compare is executed on large files, then the comparison accuracy is improved, but the network bandwidth consumption is significantly increased
Solution Approach 1:
The patent segments the network transfer and comparison process by first comparing file metadata locally without network transfer, and only transferring binary content for files that fail the metadata check. This segmentation eliminates unnecessary network bandwidth consumption while preserving comparison accuracy for the subset of files that require detailed verification.
Solution Approach 2:
The patent applies partial action by performing only the necessary metadata comparison for all files, and reserving the more resource-intensive binary comparison (and associated network transfer) for only those files that fail the metadata check. This partial approach achieves sufficient comparison accuracy while minimizing network bandwidth consumption.
3Ease of operation
If version labels are used to track software changes, then the tracking simplicity is improved, but the ability to track irregular patches and user modifications is worsened
Solution Approach 1:
The patent merges multiple tracking approaches by combining traditional version label metadata comparison with binary content comparison. This hybrid approach maintains the simplicity of version label tracking for routine updates while adding the versatility of binary comparison to detect irregular patches, user modifications, and other changes that version labels cannot capture.
Solution Approach 2:
The patent creates a universal tracking system that performs both metadata comparison (for simplicity and routine updates) and binary content comparison (for versatility and detecting all types of changes). This multi-functional approach allows the same system to handle both simple version tracking and complex change detection scenarios.
Data Source
AI summary
A system and method to implement a technique to compare a collection of files. A reference index is extracted from a reference version file. The reference index specifies contents of a reference directory at a binary level. A target index is extracted from a target version file. The target index specifies contents of a target directory at the binary level. The target index is compared against the reference index to determine whether the contents of the target directory match the contents of the reference directory.


