Consensus-Based Task Dispatch for Database Load Balancing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current database systems with multiple server applications lack a simple means to control failures and dynamically rebalance workload due to failures in one or more server applications, particularly in systems relying on database primitives for communication, which limits effective load balancing and resource utilization.
Innovation Solution
A method and system for distributed task dispatch among concurrent database application server instances that maintain a Membership Table and Partition Map to achieve consensus on load partition allocation, allowing instances to dynamically adjust ownership and rebalance workload through a consensus-based approach, using database query primitives to manage task partitions and handle failures.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If data replication and redundancy mechanisms are used to address database vulnerability, then system reliability is improved, but the ability to dynamically re-balance workload among server applications is lost
Solution Approach 1:
The patent implements dynamic workload re-balancing through a consensus-based task dispatch mechanism where server applications continuously negotiate and adjust task partition ownership based on current system state and failure conditions, allowing the system to adapt dynamically while maintaining reliability through redundancy
Solution Approach 2:
The system employs feedback mechanisms where server applications monitor task execution status, detect failures, and use consensus algorithms to re-balance workload based on real-time system state, enabling continuous adaptation while preserving system reliability
2Device complexity
If server applications rely on database primitives for communication, then system simplicity is maintained, but control over failures and workload re-balancing is limited
Solution Approach 1:
The patent introduces a consensus-based task dispatch mechanism as an intermediary layer between server applications and the database, using database primitives for communication while enabling sophisticated failure control and workload re-balancing through coordinated negotiation among applications
3Productivity
If multiple server applications execute tasks in parallel, then productivity is improved, but control over failures and workload distribution becomes complex
Solution Approach 1:
The patent segments the workload into distinct task partitions that can be independently owned and managed by different server applications, enabling parallel execution while simplifying failure control through clear ownership boundaries and consensus-based re-allocation
Solution Approach 2:
The system uses feedback loops where server applications monitor task execution, detect failures in their owned partitions, and automatically trigger consensus-based re-balancing to redistribute workload, maintaining productivity while managing complexity through automated responses
Data Source
AI summary
A method and system for distributing tasks from an external application among concurrent database application server instances in a database system for optimum load balancing, based on consensus among the instances. Each application instance identifies a task partition ownership by those in a membership group based on a time window and generates a new membership group and partition ownership based on the current partition ownership. The instance makes the new membership group and partition ownership known to other members by recoding them in the membership table and partition map. Each participation by an instance in the membership group is identified by a random number. The new membership group and partition ownership are generated and adjusted based on an average partition allocation to achieve consensus among the instances.


