Database Query Log Provenance Extraction With Event Filtering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database systems face challenges in efficiently extracting semantically rich provenance information due to high event generation overheads, overwhelming log volumes, and fragmented event data, which can degrade query performance and overwhelm data catalogs.

Innovation Solution

A provenance extraction engine that filters and clusters query execution events, constructs activity data structures, and optimizes provenance data models to minimize overheads and ensure semantic accuracy, using techniques like event selection, state management, and compression.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If comprehensive query execution events are logged to capture detailed provenance information, then the completeness and semantic richness of provenance data is improved, but the log volume increases and query performance degrades

Engineering Contradiction:
Improveprovenance information completenessVSAvoidquery performance
Core Design Contradiction:
Loss of informationVSProductivity

Solution Approach 1:

The patent extracts only the essential and relevant provenance information from query execution events using filtering mechanisms. Instead of logging all events, the system selectively captures events that are meaningful for provenance tracking, thereby reducing log volume and performance overhead while maintaining information completeness.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies different logging strategies to different parts of the query execution process. High-level events are captured for overall provenance, while detailed low-level events are logged only when necessary for specific provenance questions, optimizing the balance between information completeness and performance.

Inventive Principle:
Principle #3Local quality

2Reliability

If all query execution events are processed and stored in data catalogs, then the availability of provenance information is improved, but the data catalog becomes overwhelmed and system resources are consumed

Engineering Contradiction:
Improveprovenance information availabilityVSAvoiddata catalog load
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts and stores only essential provenance information in data catalogs, filtering out redundant or less critical event data. This reduction strategy maintains provenance information availability while preventing data catalog overload and reducing system resource consumption.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Instead of storing all events and then filtering, the patent inverts the approach by defining what needs to be stored upfront through schema-based filtering, and only capturing those events from the beginning. This prevents unnecessary data accumulation in data catalogs.

Inventive Principle:
Principle #13The other way round (Inversion)

3Measurement precision

If detailed event data is retained for accurate provenance reconstruction, then the precision of provenance information is improved, but the data size increases and processing overhead increases

Engineering Contradiction:
Improveprovenance information precisionVSAvoiddata size
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent extracts only the critical attributes and fields needed for accurate provenance reconstruction, excluding redundant detailed event data. This selective extraction maintains provenance precision while significantly reducing the quantity of data that needs to be stored and processed.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent transforms detailed event data into a normalized provenance representation using defined schemas and data models. This parameter transformation consolidates redundant information and represents provenance facts in a compact, efficient format that maintains precision while reducing data size.

Inventive Principle:
Principle #35Parameter changes

4Loss of information

If provenance extraction processes all query events without optimization, then the completeness of provenance data is improved, but the processing time increases and system overhead increases

Engineering Contradiction:
Improveprovenance data completenessVSAvoidprocessing time
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The patent performs preliminary filtering and event classification before full provenance extraction. By pre-processing events to identify and separate relevant from irrelevant data, the system reduces the amount of data requiring detailed processing, thereby maintaining completeness while reducing processing time and overhead.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the provenance extraction process into multiple stages: filtering, classification, extraction, and validation. This segmentation allows parallel processing of different event types and enables optimization at each stage, reducing overall processing time while maintaining data completeness.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS12541529B2Efficient extraction of provenance information from database query execution logs
Publication Date: 2026.02.03 MICROSOFT TECHNOLOGY LICENSING LLC
  • US12541529B2 patent drawing
  • US12541529B2 patent drawing
  • US12541529B2 patent drawing

AI summary

Systems, methods, and devices are described for efficient extraction of provenance information from database query execution logs. A set of event records extracted from one or more database query execution logs is received. Groups of related event records are identified, and each defined as an activity. For each activity, an activity data structure is generated based on the associated event records. The data structure encodes query execution dependencies for the activity. For each activity, runtime information is extracted by identifying and instantiating process entities and relationships based on the associated event records and activity data structure. For each activity, lineage information is extracted by identifying and instantiating dataset entities and their lineage relationships based on query text within the associated event records. The lineage information is mapped to the runtime information for each activity to generate and store a provenance data model for use by one or more provenance applications.