Database Statement Profiling via Orchestrated Separate Processes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for tracking the performance of database statement execution, such as using timers and runtime profiling, are labor-intensive, difficult to implement, and can degrade performance, especially in cloud environments.

Innovation Solution

A database system implements a profiler orchestrator process that manages profiling processes to automatically collect performance profiles of database statements, providing detailed execution metrics without degrading system performance by using a separate profiling process that writes results to a directory.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If timers are manually added to track database statement execution, then performance tracking capability is improved, but implementation complexity and labor intensity increase

Engineering Contradiction:
Improveperformance tracking capabilityVSAvoidimplementation complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The database system automatically collects performance profiles without requiring manual timer insertion. The profiler orchestrator process manages profiling processes that automatically track execution metrics, allowing the system to self-monitor without external intervention or complex manual configuration.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

A separate profiling process acts as an intermediary between the database system and performance tracking. This profiler orchestrator process manages the profiling processes, collecting metrics and writing results to files, thereby decoupling the performance tracking functionality from the core database operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If runtime profiling is used to analyze database statement performance, then measurement precision is improved, but system performance degrades

Engineering Contradiction:
Improveperformance measurement accuracyVSAvoiddatabase process performance
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The performance profiling functionality is segmented into a separate, dedicated process that operates independently from the database processes. This allows profiling operations to be isolated from core database operations, preventing performance degradation of the main system while maintaining accurate measurement capabilities.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The profiling orchestrator process serves as an intermediary that manages profiling operations separately from database execution. It collects performance metrics and writes them to files without interfering with database transactions, thereby maintaining both measurement accuracy and system productivity.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If manual timer-based performance tracking is implemented, then ease of operation is reduced, but device complexity is minimized

Engineering Contradiction:
Improveperformance tracking operationVSAvoidsystem structure
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The system performs self-monitoring through automated profiling processes that collect performance data without manual intervention. The profiler orchestrator process automatically manages profiling operations, eliminating the need for manual timer configuration while maintaining relatively simple system architecture.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The profiling processes continuously collect performance metrics as database statements execute, providing ongoing performance data without requiring manual initiation or interruption. This continuous automated monitoring improves ease of operation while adding minimal complexity through standardized profiling infrastructure.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS20250355876A1Profiling database statements
Publication Date: 2025.11.20 SALESFORCE INC
  • US20250355876A1 patent drawing
  • US20250355876A1 patent drawing
  • US20250355876A1 patent drawing

AI summary

Techniques are disclosed that pertain to profiling database statement execution. A computer system receives a request to profile the execution of a database statement by a database process. The request specifies a process identifier (ID) associated with the database process. The computer system initializes a profiling process to establish a profiling session in which the profiling process profiles the execution of the database statement to generate profiling results that identify a set of performances metrics associated with the execution of the database statement. The process ID is provided to the profiling process to establish the profiling session. The computer system detects an occurrence of a trigger event indicating that the profiling process should be terminated. The computer system terminates the profiling process in response to the occurrence of the trigger event. The profiling results may be stored in a storage repository accessible to the computer system.