SQL Interceptor Proxy for Third-Party Analytics Data Integration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Off-the-shelf business intelligence applications face limitations in data visualization due to constraints in SQL queries, particularly when accessing data through interfaces other than SQL, leading to cumbersome and error-prone query writing for handling variations and combining data from different tables or systems.

Innovation Solution

An SQL interceptor is introduced as a proxy between the database client and server to intercept and decode SQL queries, allowing for the invocation of executable modules that generate new SQL queries or web service requests based on reserved table names, enabling flexible data retrieval and processing without duplicating efforts.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple separate SQL queries are written to handle different data tables and conditions, then data retrieval flexibility is improved, but query complexity and error probability increase

Engineering Contradiction:
Improvedata retrieval flexibilityVSAvoidquery complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a universal SQL query template that can handle multiple data tables, time intervals, and parameter variations through a single standardized structure. The template uses placeholder parameters that can be dynamically substituted, allowing one query to serve multiple purposes across different tables and conditions, thereby reducing the need for multiple separate queries while maintaining flexibility.

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

Solution Approach 2:

The patent employs parameterized queries where specific values (table names, time intervals, filter conditions) are passed as parameters rather than being hard-coded. This allows the same query template to adapt to different data tables and conditions by simply changing the parameter values, reducing query complexity while maintaining adaptability across various scenarios.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If SQL queries are packaged to handle all variations through multiple subqueries with union all, then data retrieval completeness is improved, but query performance deteriorates

Engineering Contradiction:
Improvedata retrieval completenessVSAvoidquery performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent performs preliminary filtering and condition checking before executing the main query. By evaluating parameters and determining the appropriate single table and time interval in advance, the system avoids the performance penalty of executing multiple subqueries with union all, while still ensuring complete data retrieval by selecting the correct single query path that satisfies all conditions.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If distinct subqueries are created for each data table, then data source coverage is improved, but coding effort and maintenance burden increase

Engineering Contradiction:
Improvedata source coverageVSAvoidcoding effort
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The patent creates a single universal query template that can retrieve data from multiple different data tables through parameter substitution. Instead of writing distinct subqueries for each table, the template uses a standardized SELECT statement where table names, time interval parameters, and filter conditions can be dynamically specified, dramatically reducing coding effort while maintaining comprehensive data source coverage.

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

4Adaptability or versatility

If SQL queries are used to access non-SQL data interfaces, then data accessibility is improved, but query capability limitations increase

Engineering Contradiction:
Improvedata accessibilityVSAvoidquery capability limitations
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary layer that translates between SQL query syntax and non-SQL data interfaces. This mediator component receives standardized SQL queries, interprets the data requirements, and retrieves data from various non-SQL sources (such as web services, flat files, or other data systems), then formats the results to match SQL query expectations, thereby expanding data accessibility without requiring complex query modifications.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11176160B2SQL interceptor for use with third party data analytics packages
Publication Date: 2021.11.16 SPIRENT COMM INC
  • US11176160B2 patent drawing
  • US11176160B2 patent drawing
  • US11176160B2 patent drawing

AI summary

An SQL interceptor inserted as a proxy between a database client and the corresponding database server intercepts a constrained application-generated SQL query and composes a new data request. Parameter values in the SQL query determine whether the new data request is sent to a database server or a web service provider. A reserved table name specified in the SQL query triggers a rewrite of the data request. Parameter values in the query are used to select among a plurality of executable modules to use for rewriting the data request. Special data encoding and formats need to be used based on the source of data that will receive and respond to the rewritten data request. For example, communication between a database client and server may use a vendor-specific, non-standard binary encoding, and XML and JSON response data must be reformatted as an SQL response for processing by the database client.