Affinity-Based Lock Manager for Distributed Node Resource Assignment
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multiple-node systems, existing lock management techniques, such as hash-based master node assignment, often lead to inefficient resource mastering due to random distribution, which can result in suboptimal performance when resources are accessed exclusively by specific nodes, as they may not be located at the most efficient locations.
Innovation Solution
Implementing an affinity-based lock management system that dynamically remasters resources based on the degree of affinity between nodes and objects, using mechanisms that consider the frequency of access and other efficiency factors to optimize resource-to-master-node assignments, allowing for local locks for global synchronization and minimizing inter-node communications.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If hash-based master node assignment is used, then resource distribution is simplified and consistent, but resource access efficiency deteriorates when resources are exclusively accessed by specific nodes
Solution Approach 1:
The patent implements dynamic remastering where the master node for a resource is not fixed but can change based on access patterns. The system monitors which nodes access resources most frequently and dynamically transfers mastery to those nodes, making the lock management structure adaptive rather than static. This resolves the contradiction by maintaining simple hash-based assignment as the baseline while adding dynamic adjustment capability to optimize for specific access patterns.
Solution Approach 2:
The system changes the parameter of master node assignment from a fixed hash-based determination to a flexible, pattern-based determination. By monitoring access patterns and adjusting which node serves as master based on observed usage, the system transforms the rigid parameter into an adaptive one that can optimize for exclusive access scenarios while maintaining the overall simplicity of the lock management structure.
2Productivity
If dynamic remastering based on affinity is implemented, then resource management efficiency is improved, but system complexity increases
Solution Approach 1:
The patent implements feedback mechanisms where the system monitors access patterns to resources and uses this information to dynamically adjust master node assignments. The lock manager observes which nodes access which resources most frequently and feeds this information back into the assignment decision process. This feedback loop enables the system to automatically optimize resource management efficiency without requiring complex external control, as the system self-adjusts based on observed behavior.
Solution Approach 2:
The lock management system performs self-optimization by automatically monitoring its own usage patterns and making adjustments to master node assignments based on observed affinity. Rather than requiring external intervention or complex configuration, the system serves itself by detecting access patterns and autonomously remastering resources to the appropriate nodes, thereby improving efficiency while adding only minimal complexity.
3Productivity
If inter-node communications are reduced through local locks, then system performance is improved, but coordination overhead increases
Solution Approach 1:
The patent implements local locks that allow nodes to independently manage locks on resources they exclusively access, without requiring communication with the central lock manager or other nodes. Each node maintains local state for resources it masters, enabling autonomous lock acquisition and release. This localizes the lock management functionality to where it is needed, eliminating unnecessary inter-node communications and improving system performance while minimizing coordination overhead through the affinity-based assignment that ensures each node only needs to handle its own resources.
Data Source
AI summary
A lock manager system is provided that includes multiple distinct mechanisms for assigning resources to masters. Specifically, the lock manager system includes (1) one or more assignment mechanisms that do not take into account the affinity between nodes and objects (“affinity-independent assignment mechanisms”), and (3) one or more assignment mechanisms that do take into account the affinity between nodes and objects (“affinity-based assignment mechanisms”). At any given time, the assignment of any given resource to a master is governed by only one of the multiple assignment mechanisms employed by the system. Various techniques are described for determining which assignment mechanism to use with which resources.


