Application-Aware Database Pre-Parsing for Startup Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database management systems (DBMSs) are generic and not application-aware, leading to inefficient startup times and query processing due to the lack of knowledge about applications, modules, and queries, resulting in suboptimal operational environments.

Innovation Solution

Implementing an application-aware database system that pre-parses and caches queries and query execution plans using metadata about applications, modules, and queries, allowing the database to optimize query processing and reduce hard parse times by pre-loading and storing execution plans in memory.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If the database is generic and not application-aware, then it maintains simplicity and universality, but startup time and query processing time increase

Engineering Contradiction:
Improvestartup timeVSAvoiddatabase architecture complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The database performs preliminary actions by pre-parsing and caching query execution plans during startup time using application metadata. This allows the database to have queries ready for execution before application servers connect, eliminating the need for time-consuming parsing when queries are first received.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The database serves itself by automatically parsing and caching its own query execution plans without external intervention. The system uses application metadata to identify and pre-process queries that will be needed, making the database self-sufficient in optimizing its performance.

Inventive Principle:
Principle #25Self-service

2Productivity

If the database pre-parses and caches queries using application metadata, then query processing speed improves, but system complexity increases

Engineering Contradiction:
Improvequery processing speedVSAvoidsystem architecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The database performs preliminary actions by pre-parsing and caching query execution plans during startup time using application metadata. This allows the database to have queries ready for execution before application servers connect, eliminating the need for time-consuming parsing when queries are first received.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Application metadata serves as an intermediary that bridges the application layer and database layer. This metadata contains information about queries and their execution plans, allowing the database to optimize query processing without requiring deep integration with application logic, thus managing complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Loss of time

If the database waits for application servers to connect before processing queries, then it maintains a simple startup process, but total readiness time increases

Engineering Contradiction:
Improvetotal readiness timeVSAvoidstartup process simplicity
Core Design Contradiction:
Loss of timeVSEase of operation

Solution Approach 1:

The database performs preliminary actions by pre-parsing and caching query execution plans during startup time using application metadata. This allows the database to have queries ready for execution before application servers connect, eliminating the need for time-consuming parsing when queries are first received.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The database maintains continuous useful action by performing query parsing and caching during startup time rather than waiting idle for application servers to connect. This eliminates idle time and ensures the database is continuously productive, processing and preparing queries even before applications are ready.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS10936587B2Techniques and architectures for providing and operating an application-aware database environment
Publication Date: 2021.03.02 SALESFORCE INC
  • US10936587B2 patent drawing
  • US10936587B2 patent drawing
  • US10936587B2 patent drawing

AI summary

Application-aware database environments. A repository of previously received and registered database queries is maintained that includes at least corresponding metadata having information about an application generating the database queries. A subsequent database query and application metadata corresponding to the subsequent database query can be received. The repository to determine if the subsequent database query and application metadata match one of the previously received database queries and application metadata. A matching previously received database query is retrieved from the repository if a match is determined. The retrieved database query is executed.