Consensus-Based Task Dispatch for Database Load Balancing

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvesystem reliabilityVSAvoidworkload re-balancing capability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

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

Inventive Principle:
Principle #15Dynamics

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

Inventive Principle:
Principle #23Feedback

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

Engineering Contradiction:
Improvesystem complexityVSAvoidfailure control capability
Core Design Contradiction:
Device complexityVSReliability

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

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If multiple server applications execute tasks in parallel, then productivity is improved, but control over failures and workload distribution becomes complex

Engineering Contradiction:
Improvetask execution throughputVSAvoidworkload control complexity
Core Design Contradiction:
ProductivityVSDevice complexity

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

Inventive Principle:
Principle #1Segmentation

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

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9665400B2Method and system for distributed task dispatch in a multi-application environment based on consensus
Publication Date: 2017.05.30 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9665400B2 patent drawing
  • US9665400B2 patent drawing
  • US9665400B2 patent drawing

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.