Distributed Tree Data Storage with Caching and Lock Service

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing tree data storage structures are not optimized for efficient information sharing and concurrent operations in a distributed environment, leading to suboptimal performance and fault tolerance when implemented across multiple computers.

Innovation Solution

Implementing a tree data storage structure in a distributed environment with caching and a lock service to enable efficient concurrency and cache coherence across computers, allowing nodes to be shared and accessed concurrently while ensuring data integrity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If tree data storage structures are implemented on individual computers independently, then each computer can operate autonomously with its own structure, but information sharing and concurrent operations between computers become inefficient

Engineering Contradiction:
Improveautonomous operationVSAvoidinformation sharing efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent merges multiple independent tree data storage structures into a unified distributed tree structure where nodes can be shared across computers. This allows information to be stored once and accessed by multiple computers, eliminating redundant storage and improving information sharing efficiency while maintaining autonomous operation through distributed consensus protocols.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The distributed tree structure enables nodes to serve multiple functions simultaneously - they can be read by any computer in the network, written to by authorized computers, and replicated across multiple locations for fault tolerance. This multi-functionality improves productivity by allowing concurrent read operations and coordinated write operations across the distributed system.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Reliability

If tree data storage structures are implemented in a distributed environment with sharing, then information sharing and fault tolerance improve, but concurrency control and data consistency become more complex

Engineering Contradiction:
Improvefault toleranceVSAvoidconcurrency control complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces intermediary mechanisms such as version vectors, timestamps, and consensus protocols that mediate concurrent access to shared nodes. These intermediaries automatically manage conflict resolution and consistency without requiring complex manual coordination, thereby improving fault tolerance while keeping the system manageable.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The distributed tree structure implements feedback mechanisms where computers continuously exchange state information about node accesses and modifications. This feedback enables automatic detection of conflicts, coordination of write operations, and maintenance of data consistency across the distributed system, reducing the apparent complexity for individual participants.

Inventive Principle:
Principle #23Feedback

3Speed

If nodes are cached on multiple computers for efficiency, then access speed improves, but ensuring cache coherence and current information availability becomes challenging

Engineering Contradiction:
Improvenode access speedVSAvoidcache coherence
Core Design Contradiction:
SpeedVSLoss of information

Solution Approach 1:

The patent employs preliminary actions by invalidating or updating cached nodes proactively when changes occur in the distributed system. Before a computer can access a potentially stale cached node, the system performs preliminary checks using version information or timestamps to ensure the cache is current, thereby maintaining cache coherence without significantly impacting access speed.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The distributed tree structure creates and maintains multiple copies of nodes across different computers for caching purposes. Each copy includes version information that enables automatic detection of stale data. When inconsistencies are detected, the system selectively updates or invalidates specific copies, maintaining cache coherence while preserving the performance benefits of distributed caching.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS7730101B2Implementing a tree data storage structure in a distributed environment
Publication Date: 2010.06.01 MICROSOFT TECHNOLOGY LICENSING LLC
  • US7730101B2 patent drawing
  • US7730101B2 patent drawing
  • US7730101B2 patent drawing

AI summary

Tree data storage structures are implemented on respective computers in a distributed environment, such as on a network, so that information associated with nodes of one computer's tree data storage structure may be read or written to by another computer in the network. To promote efficiency, a cache may be employed on the computers in the network such that each computer caches information associated with nodes of tree data storage structures located on the computers in the network. A lock service may implement a caching protocol to provide efficient concurrency of caching operations while ensuring that current information associated with the nodes is available to all computers in the network.