Database Query Translation via Dynamic Compatibility Layer

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

As cloud services become increasingly complex, the demand for improved performance and availability of data tiers leads to challenges in efficiently handling diverse and large datasets across different database systems, where existing technologies struggle to optimize database operations by directing queries to the most suitable database based on workload and storage formats.

Innovation Solution

A dynamic database compatibility layer translates database queries from one language to another, redirecting them to the most efficient database for processing, allowing for synchronization of records across different databases optimized for row-store or column-store operations, thereby enhancing performance by automatically determining which database should handle specific queries.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a single database system is used to store all data, then system complexity is reduced, but query performance cannot be optimized for different data access patterns

Engineering Contradiction:
Improvequery performanceVSAvoiddatabase system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the database system into multiple specialized database services (row-store and column-store databases) that can be selected based on query requirements. This allows performance optimization for different data access patterns while maintaining a unified interface through the compatibility layer.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The compatibility layer acts as an intermediary between the application and multiple database services. It translates queries and determines which database service should handle each query, enabling performance optimization without requiring application changes or direct management of multiple databases.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If data is stored in multiple database formats optimized for different operations, then query performance is improved, but system complexity increases

Engineering Contradiction:
Improvedata access performanceVSAvoidmultiple database services
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The compatibility layer provides universal functionality by supporting multiple database services through a single interface. It can handle both row-store and column-store database operations, making the system multi-functional without requiring separate interfaces for each database type.

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

Solution Approach 2:

The system changes the parameter of database storage format dynamically based on query requirements. The compatibility layer analyzes incoming queries and routes them to appropriate database services with matching storage formats (row-store or column-store), optimizing performance without manual configuration.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If queries are manually routed to specific databases, then performance is optimized, but operational complexity and time increase

Engineering Contradiction:
Improvequery processing efficiencyVSAvoidquery routing complexity
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The compatibility layer provides self-service by automatically analyzing incoming queries and determining the most appropriate database service for each query. This eliminates the need for manual routing configuration or complex query rewriting, as the system autonomously optimizes query routing based on its understanding of different database capabilities.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11620285B2Automatic database query translation
Publication Date: 2023.04.04 SERVICENOW INC
  • US11620285B2 patent drawing
  • US11620285B2 patent drawing
  • US11620285B2 patent drawing

AI summary

A database query is received at a primary database in a query language of the primary database. A determination is made whether the database query is to be handled by a secondary database different from the primary database but storing synchronized records of at least a portion of the primary database. In response to determining that the database query is to be handled by the secondary database, the database query is translated to a query language of the secondary database, including by determining a tree data structure representation of the database query, translating one or more elements of the tree data structure representation, and synthesizing the tree data structure representation to automatically generate the database query in the query language of the secondary database. The automatically generated database query is provided in the query language of the secondary database to the secondary database.