Lock File Resource Sharing via Node Graph Synchronization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In cloud computing environments, sharing resources across repositories leads to issues where resource metadata becomes out of sync with the resource itself, especially when updates are frequent, and existing content versioning systems require significant resources and a central repository.

Innovation Solution

A method utilizing lock files in a shared file system or node graphs in a peer-to-peer system to manage resource sharing, ensuring that resource names, versions, and fingerprints are synchronized across repositories, thereby preventing metadata and resource desynchronization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If resource metadata is bundled with the resource, then the resource can be shared across repositories, but the resource must be shared completely again when only metadata is updated, wasting bandwidth and storage

Engineering Contradiction:
Improveresource sharing flexibilityVSAvoidbandwidth and storage waste
Core Design Contradiction:
Adaptability or versatilityVSLoss of substance

Solution Approach 1:

The patent segments the resource into two independent parts: the resource data itself and its metadata. The metadata is stored separately in a distributed ledger (blockchain), while only the resource data is stored in repositories. When metadata updates occur, only the metadata records in the ledger are updated, not the entire resource, thus avoiding bandwidth and storage waste while maintaining sharing flexibility.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts the metadata from the resource bundle and stores it independently in a distributed ledger. This extraction allows metadata to be updated separately from the resource data, eliminating the need to re-share complete resources when only metadata changes, thereby reducing bandwidth and storage consumption.

Inventive Principle:
Principle #2Taking out (Extraction)

2Adaptability or versatility

If metadata is stored alongside the resource as a second resource, then the resource can be shared, but the two resources may become out of sync, especially with frequent updates

Engineering Contradiction:
Improveresource sharing capabilityVSAvoidmetadata synchronization
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent introduces a distributed ledger (blockchain) as an intermediary between the resource data and its metadata. The ledger stores cryptographic hashes of both the resource and metadata, creating a trusted verification mechanism. This intermediary ensures that metadata and resource remain synchronized by providing a single source of truth that all repositories can verify, preventing desynchronization even with frequent updates.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent implements a feedback mechanism where cryptographic hashes of the resource and metadata are stored in the distributed ledger. Any repository can verify synchronization by comparing local hashes with those in the ledger. This continuous verification feedback ensures that metadata and resource remain in sync across all repositories, maintaining reliability during frequent updates.

Inventive Principle:
Principle #23Feedback

3Reliability

If content versioning systems are used to track resource versions, then version control is achieved, but significant physical and virtual resources are required

Engineering Contradiction:
Improveversion tracking accuracyVSAvoidphysical and virtual resources
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent uses cryptographic hashing to create compact digital copies of resource identifiers and metadata versions in the distributed ledger. Instead of storing complete resource copies for version tracking, only cryptographic hashes (compact representations) are stored. This copying approach maintains version tracking accuracy while minimizing the physical and virtual resources required, as hashes are vastly smaller than actual resource data.

Inventive Principle:
Principle #26Copying

4Reliability

If a central repository is used for version tracking, then resource versions can be monitored, but the system requires significant centralized resources

Engineering Contradiction:
Improvecentralized version controlVSAvoidcentralized infrastructure
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the centralized version control function into a distributed architecture using blockchain technology. Version tracking is no longer centralized but distributed across multiple nodes in the network. Each node maintains a copy of the ledger, eliminating the need for a single centralized repository and reducing device complexity while maintaining version control reliability through decentralized consensus.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11442900B2Sharing resources among remote repositories utilizing a lock file in a shared file system or a node graph in a peer-to-peer system
Publication Date: 2022.09.13 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11442900B2 patent drawing
  • US11442900B2 patent drawing
  • US11442900B2 patent drawing

AI summary

A method, system and computer program product for sharing resources among remote repositories. In a shared file system, a resource identifier and metadata are created for a resource, where the resource identifier is stored in a lock file in a shared volume accessible by the remote repositories. The lock file is then released in response to distributing the associated resource to the remote repositories. Alternatively, in a peer-to-peer system, a request is received to create, read, update or delete a resource stored in a content repository. A resource name, a resource version and/or a resource fingerprint are received in connection with the request to create, read, update or delete the resource in the content repository. A determination is then made as to whether the received resource name, resource version and/or resource fingerprint matches the respective resource name, resource version and/or resource fingerprint stored in a node graph for the resource.