Distributed Data Structure Owner Node Conflict Resolution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed computer systems, resolving conflicts and maintaining data consistency across peer nodes is challenging due to the CAP theorem constraints, especially when dealing with conflicts arising from simultaneous data manipulation on different peers, which often requires significant overhead and network traffic.

Innovation Solution

Assigning a single owner node to each data structure, allowing only that node to modify it, and requiring non-owner nodes to request modifications through the owner node, ensuring exclusive ownership and replication across all nodes, thus eliminating the need for distributed locks and maintaining transactional consistency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional distributed locking protocols or master-slave relationships are used to maintain data consistency, then data consistency is improved, but network overhead and system complexity increase significantly

Engineering Contradiction:
Improvedata consistencyVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces an owner node as an intermediary that mediates all write operations to a data structure. Instead of implementing complex distributed locking protocols between all peer nodes, the owner node acts as a single point of coordination for modifications, simplifying the system architecture while maintaining consistency. The owner node receives write requests from any peer node and propagates updates to all other nodes, eliminating the need for complex inter-node locking mechanisms.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent inverts the traditional master-slave architecture by making the owner node a peer node with equal rights for reading data, while still maintaining exclusive write rights. This inversion allows the owner node to participate fully in the peer-to-peer network for read operations while providing centralized coordination for writes, reducing the complexity associated with dedicated master nodes that require complete connectivity to all slaves.

Inventive Principle:
Principle #13The other way round (Inversion)

2Reliability

If traditional distributed locking protocols are used for data modification, then data consistency is improved, but network traffic and time overhead increase

Engineering Contradiction:
Improvedata consistencyVSAvoidmodification time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent assigns an owner node to each data structure in advance, before any write operations occur. This preliminary assignment eliminates the need for real-time lock acquisition and release protocols during data modification. When a peer node needs to modify data, it simply sends the request to the pre-designated owner node, which immediately processes and propagates the update without requiring coordination rounds with other nodes.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If master-slave relationships are used to maintain data synchronization, then data consistency is improved, but connectivity requirements and network traffic increase

Engineering Contradiction:
Improvedata synchronizationVSAvoidconnectivity flexibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent segments the write coordination function from the read access function. The owner node handles write operations for specific data structures, while all peer nodes (including the owner) can read from any data structure on any node. This segmentation allows peer nodes to operate independently for reads and only coordinate with the owner node for writes, reducing connectivity requirements compared to master-slave architectures where slaves require complete connectivity to the master.

Inventive Principle:
Principle #1Segmentation

4Reliability

If peer-to-peer replication is used without ownership assignment, then system availability is improved, but update conflicts and resolution complexity increase

Engineering Contradiction:
Improvesystem availabilityVSAvoidconflict resolution complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces asymmetry into the otherwise symmetric peer-to-peer replication system by assigning exclusive write rights to a single owner node for each data structure. While all nodes remain equal for read operations and can independently operate (maintaining availability), the asymmetric ownership assignment prevents update conflicts by ensuring only one node can modify each data structure at a time, eliminating the need for complex conflict resolution protocols.

Inventive Principle:
Principle #4Asymmetry

Data Source

PatentUS10255340B2Method and apparatus for distributed configuration management
Publication Date: 2019.04.09 HEWLETT PACKARD ENTERPRISE DEV LP
  • US10255340B2 patent drawing
  • US10255340B2 patent drawing
  • US10255340B2 patent drawing

AI summary

Method and apparatus for replicating data structures over a network in which each data structure is assigned an owner node among a plurality of networked peer nodes. Preferably that owner can be ascertained through information in the data structure. When an update to the data structure is desired by a non-owner, a request to modify the data structure is sent out on the network and when received by the owner, the owner performs the modification. The owner node can then notify the other nodes regarding the update. The method, implemented through a single-writer, multiple-reader paradigm, insures availability, partition tolerance and eventual consistency; it avoids the high overhead costs and single point of failure drawbacks of the prior art centralized management and locking protocols. Administrators can connect to any peer node in the network to manage, monitor and request modifications to a data structure.