Sparse File Rolling Checksum Hole-Chunk Designation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional rolling checksum methods inefficiently process sparse files by dividing large sequences of unused bytes into multiple chunks, increasing data transfer and storage requirements.

Innovation Solution

Implementing a new filtering behavior that dynamically sets chunk-end thresholds and hole sizes to identify and handle sparse files by designating a single 'hole-chunk' for large sequences of unused bytes, reducing the number of chunks and metadata needed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If traditional rolling checksum methods divide large sequences of unused bytes into multiple chunks, then chunk processing becomes systematic and manageable, but data transfer and storage requirements increase

Engineering Contradiction:
Improvechunk processing complexityVSAvoiddata transfer and storage requirements
Core Design Contradiction:
Device complexityVSQuantity of substance

Solution Approach 1:

The patent merges multiple consecutive zero-chunks into a single hole-chunk representation. When the rolling checksum detects a sequence of zero-bytes exceeding the hole threshold, it designates a single hole-chunk that spans the entire sequence, rather than creating separate chunks for each zero-byte sequence. This combining approach reduces the total number of chunks from potentially dozens to just one or a few hole-chunks, thereby reducing data transfer and storage requirements while maintaining systematic processing through the metadata structure.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent segments the archival file processing into three distinct types: data-chunks (containing actual data), hole-chunks (containing sequences of zero-bytes exceeding the threshold), and end-chunks. This segmentation allows the system to apply different handling strategies to different portions of the file. By identifying and separating hole-chunks from regular data-chunks, the system can optimize processing for sparse files while maintaining compatibility with dense files, resolving the contradiction between systematic processing and data volume.

Inventive Principle:
Principle #1Segmentation

2Quantity of substance

If a single hole-chunk is designated for large sequences of unused bytes, then data storage and transfer are reduced, but the filtering behavior and chunk identification logic become more complex

Engineering Contradiction:
Improvedata storage and transferVSAvoidfiltering behavior and chunk identification logic
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent implements dynamic threshold-based behavior for chunk designation. The hole threshold parameter allows the system to adapt its chunking strategy based on the specific characteristics of the archival file. When processing zero-bytes, the system dynamically determines whether to create a hole-chunk or regular chunks based on whether the sequence length exceeds the threshold. This dynamic approach maintains relatively simple logic for common cases while enabling optimization for sparse files, balancing complexity reduction with targeted functionality.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the state of chunk representation from uniform data-chunks to differentiated types (data-chunks, hole-chunks, end-chunks) based on content analysis. By monitoring the rolling checksum output and detecting sequences of zero-outputs, the system changes parameters such as chunk type designation, metadata structure, and transmission behavior. This parameter-based differentiation allows the system to reduce data storage and transfer for hole-chunks (by using compact metadata representations) while maintaining clear identification logic through well-defined state transitions.

Inventive Principle:
Principle #35Parameter changes

3Ease of operation

If multiple chunks are created for sequences of zero bytes, then synchronization can be performed on individual chunk levels, but the number of chunks and metadata increases processing overhead

Engineering Contradiction:
Improvesynchronization capabilityVSAvoidnumber of chunks and metadata
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent combines multiple zero-byte sequences into single hole-chunks with metadata that describes the entire sequence (location and length). Instead of creating separate metadata entries for each small zero-byte sequence, the system merges them into one consolidated hole-chunk representation. This maintains synchronization capability at the chunk level (you can still identify and process individual hole-chunks) while dramatically reducing the total number of metadata entries and chunks, thereby reducing processing overhead.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS12130781B2Sparse files aware rolling checksum
Publication Date: 2024.10.29 RED HAT LLC
  • US12130781B2 patent drawing
  • US12130781B2 patent drawing
  • US12130781B2 patent drawing

AI summary

A sparse files aware rolling checksum is provided by passing, in sequence, each byte of an archival file to a hash function; and in response to: detecting that a sequence of bytes from the archival file produce outputs from the hash function of zero, wherein a number of bytes in the sequence of bytes satisfies a chunk-end threshold, and determining that the sequence of bytes is located in a hole in the archival file of a greater number of bytes than the chunk-end threshold: designating a hole-chunk of the archival file that includes metadata for a location and a length of the hole in the archival file.