Distributed Locking Nodes for Consistent Database Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current storage systems face challenges in efficiently managing large-scale distributed database implementations, particularly in ensuring data consistency and handling concurrent access across distributed consistent database systems, which affects performance and scalability.
Innovation Solution
The implementation of a distributed consistent database architecture that uses a Chord-like distributed hash table access mechanism, combined with a distributed database management system and connectors node system, enables efficient storage and retrieval of data by employing a reservation system for data consistency and allowing concurrent reads while preventing concurrent writes, and utilizing replication for reliability.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a distributed consistent database architecture is implemented to ensure data consistency across distributed nodes, then data consistency and reliability are improved, but system complexity and overhead increase
Solution Approach 1:
The system segments the distributed database into multiple independent nodes that can operate autonomously. Each node maintains its own data and can serve requests independently, reducing the complexity of managing the entire distributed system as a single unit while preserving data consistency through coordinated operations.
Solution Approach 2:
The patent introduces a coordination mechanism that acts as an intermediary between distributed nodes to manage consistency. This mediator handles the complex tasks of coordinating reads and writes across nodes, isolating the complexity from individual node operations and simplifying the overall system architecture.
2Productivity
If concurrent access is allowed across distributed nodes to improve throughput and performance, then productivity is improved, but data consistency and reliability deteriorate
Solution Approach 1:
The system dynamically adjusts access patterns based on data consistency requirements. For read operations, multiple nodes can serve concurrently to maintain high throughput, while write operations are coordinated to ensure consistency. This dynamic behavior allows the system to optimize productivity while preserving reliability.
Solution Approach 2:
Different consistency guarantees are applied to different operations and data types. Read operations allow for eventual consistency to maximize throughput, while critical write operations enforce strong consistency. This local differentiation of quality attributes enables high productivity overall while maintaining reliability where needed.
3Reliability
If locking mechanisms are implemented to prevent concurrent writes and ensure data consistency, then data consistency is improved, but access speed and productivity worsen
Solution Approach 1:
The locking mechanism is applied partially rather than universally. Locks are acquired only for the specific data items being accessed, not for entire data structures or all nodes. This partial application of locking maintains data consistency for modified data while allowing other operations to proceed concurrently, preserving access speed.
Solution Approach 2:
The system performs preliminary checks and preparations before executing locked operations. By pre-validating data states and preparing lock acquisition strategies, the system minimizes the duration of locked states, ensuring data consistency while reducing the impact on access speed.
4Reliability
If replication is used to improve reliability and availability of data across distributed nodes, then reliability is improved, but system complexity and storage requirements increase
Solution Approach 1:
Different levels of replication are applied to different data based on access patterns and importance. Frequently accessed or critical data is replicated across multiple nodes for high availability, while less critical data may be replicated fewer times or stored locally. This differentiated approach improves reliability where needed while controlling storage requirements.
Data Source
AI summary
A storage system is described. The storage system includes an object store having a plurality of objects containing information. The storage system also includes a cluster of locking nodes to implement a distributed synchronization locking mechanism. The cluster of locking nodes include a proposer node and a plurality of acceptor nodes. The proposer node to broadcast to the acceptor nodes a proposed lock on at least some of the information. The acceptor nodes to vote on the proposed lock based on respective locking information kept in a local store of each acceptor node.


