Distributed Object Management via Single Owner Node Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Large-scale distributed fixed-content storage systems face challenges in maintaining data integrity and availability due to node failures and islanding scenarios, where locks are needed to prevent conflicting decisions, but traditional locking mechanisms are complex and often lead to system-wide failures.
Innovation Solution
Implementing object ownership within the distributed system, where a single owner node manages state changes and replicates data across other nodes, allowing access even during communication disruptions, and automatically designating new owners if the primary owner becomes unreachable.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional centralized locking mechanisms are used to prevent conflicting decisions, then data integrity is maintained, but system complexity increases and system-wide failures occur during islanding scenarios
Solution Approach 1:
The patent segments the locking functionality by designating specific object management components as primary owners responsible for state changes, while other components serve as secondary replicas that only provide read access. This segmentation eliminates the need for complex centralized locking mechanisms while maintaining data integrity through the primary owner's exclusive write permissions.
Solution Approach 2:
The patent introduces an intermediary mechanism where the primary object management component acts as a mediator for all state changes. Instead of implementing complex distributed locking algorithms, the system uses the primary owner as an intermediary that coordinates all modifications, simplifying the locking approach while ensuring consistency across the distributed system.
2Reliability
If all access to objects is placed on hold during islanding to prevent conflicting locks, then data consistency is maintained, but system availability decreases to zero
Solution Approach 1:
The patent segments access permissions by role, allowing secondary object management components to continue providing read access to objects even during islanding scenarios. Only state change operations are restricted to the primary owner, enabling the system to maintain both data consistency and operational availability simultaneously.
Solution Approach 2:
The patent implements partial locking by allowing read operations to proceed without locks while only restricting write operations to the primary owner. This partial action approach maintains data consistency for state changes while preserving system availability for read operations during islanding events.
3Ease of operation
If multiple lock management entities are used to allow continued operation during islanding, then system availability is maintained, but lock conflict resolution becomes highly complex and cannot be fully automated
Solution Approach 1:
The patent segments the system into a single primary object management component responsible for state changes and multiple secondary components for read operations. This segmentation eliminates the need for multiple lock management entities and complex conflict resolution mechanisms, as the primary owner's exclusive write permissions naturally prevent conflicts.
Solution Approach 2:
The system uses self-service by allowing secondary object management components to autonomously serve read requests without requiring lock acquisition or conflict resolution. The primary owner automatically manages state changes without external coordination, eliminating the need for complex automated lock resolution mechanisms.
4Device complexity
If a single node controls state changes to reduce locking complexity, then distributed locking complexity is reduced, but the system becomes vulnerable to single point of failure
Solution Approach 1:
The patent inverts the traditional approach by designating the primary object management component as the single point of control for state changes, rather than distributing control to prevent failures. This inversion is compensated by implementing automated failover mechanisms where secondary components can take over if the primary fails, thus achieving both simplified locking and improved reliability.
Solution Approach 2:
The system implements preliminary action by pre-designating secondary object management components as potential failover candidates. If the primary owner becomes unavailable, one of the secondary components is automatically designated as the new primary, preventing single point of failure while maintaining the simplicity of single-node state change control.
Data Source
AI summary
A method and apparatus for the management of the placement of immutable fixed-content objects in a distributed, multi-site, multi-tier non-volatile storage hierarchy consisting of a plurality of storage media connected together over networks of varying bandwidth where the computing, storage, and network resources are subject to failure. The disclosure provides for scalability, performance, and robustness by distributing the object placement management tasks amongst a plurality of computing resources and eliminating the need for global synchronization or locking amongst said computing resources.


