Data Structure Chunking via Unique Bit Sequences

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Editing and saving large data structures, such as JSON files or code, is computationally expensive and time-consuming due to the need to manage and transfer extensive data volumes, especially when multiple users need to synchronize changes across a network.

Innovation Solution

Segmenting the data structure into smaller final chunks based on unique sequences of bits, allowing only updated chunks to be transmitted and stored, reducing the data volume and computational complexity by using chunk keys to identify and update specific sections.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the data structure is saved and reloaded during editing, then the complete data is preserved and synchronized, but the process becomes time-consuming and computationally expensive

Engineering Contradiction:
Improvedata synchronizationVSAvoidsaving and loading time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent divides the large data structure into multiple smaller chunks, each with a unique identifier (chunk key). Instead of saving and loading the entire data structure, only the specific chunks that contain changes are identified, saved, and transferred. This segmentation principle directly resolves the contradiction by maintaining data synchronization reliability while dramatically reducing the time and computational cost associated with saving and loading operations.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If the entire data structure is transferred over the network for collaboration, then all users have access to complete data, but network bandwidth is consumed and transfer time increases

Engineering Contradiction:
Improvecollaborative accessVSAvoiddata transfer volume
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent extracts only the necessary portions of the data structure (specific chunks containing changes) for network transfer instead of moving the entire data structure. Each chunk is identified by a unique chunk key, allowing the system to extract and transmit only the relevant data portions. This extraction approach enables collaborative access for multiple users while minimizing network bandwidth consumption and transfer time.

Inventive Principle:
Principle #2Taking out (Extraction)

3Ease of manufacture

If fixed-size chunks are used for segmentation, then storage and transfer are simplified, but updates may require re-segmenting the entire data structure

Engineering Contradiction:
Improvechunk management simplicityVSAvoidre-segmentation complexity
Core Design Contradiction:
Ease of manufactureVSDevice complexity

Solution Approach 1:

The patent performs preliminary action by assigning unique identifiers (chunk keys) to each chunk based on their content and position in the data structure, before any updates occur. This preliminary identification allows the system to quickly locate and update specific chunks without needing to re-segment the entire data structure. The chunk keys serve as stable references that persist through updates, eliminating the complexity of re-segmentation while maintaining simple chunk management.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11907193B2Storing a data structure
Publication Date: 2024.02.20 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11907193B2 patent drawing
  • US11907193B2 patent drawing
  • US11907193B2 patent drawing

AI summary

In an approach, a processor segments a data structure into a plurality of initial chunks. A processor, for each of the plurality of initial chunks, determines a chunk key based on identifying a sequence of bits within the respective chunk that is unique within the data structure. A processor re-segments the data structure into a plurality of final chunks, wherein divisions correspond to positions of the identified sequences of bits.