Client-Driver Cluster Routing for Near-Zero Node Failure Impact
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional approaches to addressing node failure in distributed cluster systems are inefficient, complex, and costly, leading to prolonged downtime and adverse performance impacts.
Innovation Solution
A system and method for leader node election and data management in a cluster system, utilizing a client driver to maintain management data, periodically transmit data requests, and route client requests based on node responsiveness and response time, eliminating the need for additional components and complex protocols.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional protocols are used to address node failure, then node failure can be handled, but the system becomes overly complex and requires additional components
Solution Approach 1:
The patent extracts the failure detection and response logic from complex distributed protocols and concentrates it in a simple client driver that maintains local management data about node status, eliminating the need for complex inter-node communication protocols
Solution Approach 2:
The client driver autonomously monitors node responsiveness by periodically transmitting data requests and maintaining management data about node status, without requiring external coordination or complex system-wide protocols
2Reliability
If data is restored from failed node to new node, then data is recovered, but it takes up to an hour or more causing token look-up failure
Solution Approach 1:
The patent implements preliminary action by having the client driver continuously maintain management data about which nodes are responsive and where data is located, so that when a node fails, the client can immediately redirect requests to alternative nodes without waiting for data restoration
Solution Approach 2:
The system dynamically adapts to node failures by allowing the client driver to update management data in real-time based on node responsiveness, enabling flexible request routing to available nodes rather than following fixed data location assignments
3Loss of time
If read replica nodes are created to reduce node failure time, then failure time is reduced to a few minutes, but doubling the number of nodes is prohibitively expensive
Solution Approach 1:
The patent makes existing nodes multi-functional by enabling any responsive node to handle client requests for data that may have been originally assigned to a failed node, eliminating the need for dedicated replica nodes
Solution Approach 2:
Instead of creating physical copies of data through replica nodes, the system creates a logical copy of the node failure response capability through the client driver's management data, which records alternative nodes that can fulfill data requests
4Loss of time
If conventional approaches are used to minimize node failure time, then some failure mitigation is achieved, but adverse performance and latency impacts remain on the cluster system
Solution Approach 1:
The client driver implements continuous feedback by periodically transmitting data requests to nodes and updating management data based on responsiveness, allowing the system to detect and adapt to node failures quickly while maintaining optimal performance through informed request routing
Data Source
AI summary
Disclosed are systems and methods for node management performed by a client driver of a client device comprising receiving cluster topology data from the cluster system; transmitting, a data request to each of a plurality of nodes in a cluster system; receiving a reply from each of the nodes that are responsive; assigning, by the client driver, based on the received replies, a responsive status for each of the nodes that are responsive or a non-responsive status for each of nodes that are non-responsive; updating a listing of management data, wherein the management data includes: an identification of each of the plurality of nodes, and a current status of each of the plurality of nodes; and routing, by the client driver, a client request to one of the plurality of nodes that are responsive based on the cluster topology data.


