Database Proxy Request Switching via SQL Property Evaluation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
As data communication networks become increasingly complex with the exponential growth of information types and amounts, managing database servers and providing scalable database services becomes challenging, particularly in client-server relationships where database servers use protocols like SQL.
Innovation Solution
A network appliance acts as a proxy between database servers and clients, providing services such as connection multiplexing, load balancing, health monitoring, authentication, caching, and content switching, and is configured to support SQL language and database protocols, using a multi-core architecture and policy expressions to evaluate request properties for optimal database selection.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a network appliance acts as a proxy between database servers and clients to provide connection multiplexing and load balancing, then scalability and efficiency are enhanced, but device complexity increases
Solution Approach 1:
The network appliance serves as an intermediary proxy between database servers and clients, managing connections and queries. The appliance evaluates SQL request properties and routes queries to appropriate databases using policy expressions, thereby enhancing scalability while abstracting the complexity from end users through an automated decision-making system.
Solution Approach 2:
The system changes parameters by evaluating multiple properties of SQL requests (such as query type, data requirements, source identity) and dynamically selecting databases based on these parameter evaluations. This allows the appliance to adapt its routing decisions based on the specific characteristics of each request, improving efficiency without requiring manual configuration for each scenario.
2Measurement precision
If the appliance evaluates multiple properties of SQL requests to select optimal databases, then query routing precision is improved, but processing time increases
Solution Approach 1:
The appliance pre-establishes policy expressions that define the evaluation criteria for database selection. These policies are configured in advance to evaluate specific request properties and determine routing decisions, allowing the system to make accurate database selections without performing complex real-time analysis for each query, thus reducing processing time while maintaining precision.
3Reliability
If the appliance provides comprehensive database services including authentication, caching, and health monitoring, then service reliability is improved, but device complexity increases
Solution Approach 1:
The network appliance is designed as a multi-functional device that provides connection multiplexing, load balancing, authentication, caching, health monitoring, and query routing capabilities. By consolidating these diverse functions into a single appliance, the system improves overall service reliability while managing complexity through integrated design, where multiple functions share common infrastructure and control mechanisms.
Data Source
AI summary
The present application is directed towards systems and methods for selecting a database from a plurality of databases to forward a SQL query request based on a property of the SQL request. A device intermediary to a plurality of clients and databases may establish a plurality of connections to the plurality of databases. The device may receive, from a client of the plurality of clients, a request to execute a SQL query. The device may evaluate one or more properties of the request to execute the SQL query responsive to a policy. The device may select a database from the plurality of databases based on a result of evaluation of the one or more properties of the request to execute the SQL query. The device may forward the request to execute the SQL query to the selected database via a connection of the plurality of connections.


