Database Monitor Segments SQL Queries for Instruction-Level Performance Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current database monitoring tools lack the granularity to determine why complex queries perform below expectations, as they only provide overall execution times and do not break down queries into individual instructions for detailed performance analysis.

Innovation Solution

A database monitor that separates and individually monitors the execution of SQL statements into distinct sub-elements, such as user-defined functions, triggers, and constraints, to collect detailed performance statistics for each instruction.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If current database monitoring tools store overall query execution information, then the monitoring system is simple to implement, but the measurement precision of query performance is insufficient

Engineering Contradiction:
Improvequery performance measurement precisionVSAvoidmonitoring system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent segments a complex query into multiple constituent instructions or operations, and monitors each segment separately. This allows the system to achieve fine-grained performance measurement by tracking individual instruction execution times, resource consumption, and performance metrics, thereby resolving the contradiction between measurement precision and system complexity.

Inventive Principle:
Principle #1Segmentation

2Loss of information

If database monitoring tools collect detailed information about each query instruction, then the information completeness improves, but the loss of time for data collection and processing increases

Engineering Contradiction:
Improveperformance information completenessVSAvoiddata collection and processing time
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The patent implements performance monitoring through preliminary instrumentation of query instructions, where monitoring code is embedded or integrated into the query execution path in advance. This allows the system to collect detailed performance information without adding significant overhead during actual query execution, as the monitoring infrastructure is already in place and ready to capture metrics.

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If the database monitor tracks individual instructions within a query, then the ease of operation for identifying performance bottlenecks improves, but the device complexity of the monitoring system increases

Engineering Contradiction:
Improveperformance analysis ease of operationVSAvoidmonitoring system complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary monitoring layer that sits between the query execution engine and the database administrator. This intermediary automatically captures, aggregates, and presents performance data in a structured format, making it easier for administrators to identify bottlenecks without directly dealing with the complexity of individual instruction tracking. The intermediary translates raw instruction-level data into actionable performance insights.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9020929B2Method and system for tracking performance by breaking down a query
Publication Date: 2015.04.28 WORKDAY INC
  • US9020929B2 patent drawing
  • US9020929B2 patent drawing
  • US9020929B2 patent drawing

AI summary

A database monitor tracks performance statistics and information about the execution of different SQL statements. In particular, the monitor tracks information about the individual instructions that comprise a complex query. The performance statistics and information from these individual elements provide insight into a query's performance and may show why a query's performance is below expectations.