Database Proxy Server for Command Replay and Performance Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Database servers face challenges in modifying operations to accommodate changing business needs due to the complexity of maintaining relationships between vast amounts of valuable data, making modifications risky and difficult.

Innovation Solution

A proxy server acts as an intermediary between database clients and servers, applying user-defined rules to requests, managing connections, and providing interfaces like REST to facilitate data processing, security, and performance optimization, including failover masking, workload capture, and data masking.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If database server modifications are made to accommodate changing business needs, then adaptability improves, but reliability deteriorates due to the risk of maintaining data relationships

Engineering Contradiction:
ImproveadaptabilityVSAvoidreliability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent introduces a proxy server as an intermediary layer between database clients and the database server. This proxy server handles business logic, data validation, and relationship maintenance, allowing the database server to remain unchanged while accommodating business needs. The intermediary absorbs modification risks away from the core database system, maintaining reliability while enabling adaptability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Stability of the object's composition

If direct persistent connections are maintained between clients and database server, then connection stability improves, but system complexity increases due to connection management overhead

Engineering Contradiction:
Improveconnection stabilityVSAvoidconnection management complexity
Core Design Contradiction:
Stability of the object's compositionVSDevice complexity

Solution Approach 1:

The proxy server acts as an intermediary that manages all persistent connections to the database server. Clients connect to the proxy server instead of directly to the database server, centralizing connection management. This maintains connection stability while reducing overall system complexity by consolidating connection handling in a single component.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The proxy server provides multiple functions including connection management, authentication, query routing, and result processing. By making the proxy server universal and multi-functional, the system reduces complexity by having a single component handle diverse tasks rather than distributing complexity across multiple specialized components.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Adaptability or versatility

If database server is modified to provide additional processing capability, then functionality improves, but ease of operation deteriorates due to difficulty of maintaining data relationships

Engineering Contradiction:
ImprovefunctionalityVSAvoidease of operation
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The proxy server serves as an intermediary that implements additional processing capabilities and business logic without modifying the database server. It handles data validation, relationship maintenance, and processing enhancements, making the system more functional while keeping the database server simple and easy to operate.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the system into distinct components: the database server for core data storage and the proxy server for processing logic. This segmentation allows functionality to be added to the proxy server without complicating the database server, maintaining ease of operation while improving overall functionality.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11106540B1Database command replay
Publication Date: 2021.08.31 AMAZON TECH INC
  • US11106540B1 patent drawing
  • US11106540B1 patent drawing
  • US11106540B1 patent drawing

AI summary

A proxy server receives requests from a client computer system and generates corresponding sets of database commands that are capable of fulfilling the requests when submitted to a database server. The proxy server may repeat processing associated with a particular request more than once under different operational conditions in order to improve future performance. In some examples, the proxy server submits a particular database command sequence to the database server using various operational parameters, and measures the performance of each submission to identify a particular set of operational parameters to be applied to the database server with future submissions. In another example, the proxy server determines a number of alternative command sequences that fulfill a particular request, and measures the performance of each of the alternative command sequences to determine how command sequences are generated for future requests.