Diff-Query Analyzer for Property Graph Database Mismatches

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Graph database queries, particularly those using property graphs, may return unexpected empty answers due to overspecification, even when relevant data exists, leading to cumbersome and time-consuming tasks for users to recreate and resubmit queries to find matching data.

Innovation Solution

The system employs a diff-query analyzer to determine discovered and missing query components by generating a maximum common sub-graph between the query and data graphs, using algorithms like Ullmann, McGregor, Durand-Pasari, and Balay Yu to identify differences and optimize the search process, thereby providing insights into why an empty answer was returned.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If a query is overspecified with multiple constraints to ensure precise data retrieval, then measurement precision is improved, but the probability of returning empty answers increases even when relevant data exists

Engineering Contradiction:
Improvequery precisionVSAvoidquery success rate
Core Design Contradiction:
Measurement precisionVSReliability

Solution Approach 1:

The system performs partial matching by identifying the maximum common subgraph between the query graph and data graph, allowing queries to succeed even when not all constraints are perfectly satisfied. This partial action approach finds the largest matching subset of query components that can be satisfied by available data.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

Instead of checking if the entire query matches the data (forward approach), the system inverts the approach by finding what portion of the query can be matched and reporting the difference. The diff-query analyzer identifies missing components rather than simply returning empty results when full matching fails.

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

2Measurement precision

If users manually recreate and resubmit alternative queries to find matching data, then query precision can be adjusted, but loss of time increases due to the cumbersome iterative process

Engineering Contradiction:
Improvequery precisionVSAvoidquery refinement time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs preliminary analysis by automatically computing the maximum common subgraph and identifying missing query components before the user would need to manually refine the query. This preliminary action provides users with immediate feedback on what is missing, eliminating the need for iterative manual query recreation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The diff-query analyzer provides feedback to users by clearly identifying which query components are missing from the data graph. This feedback mechanism guides users in refining their queries without requiring them to manually recreate entire alternative queries, significantly reducing the time loss associated with iterative query refinement.

Inventive Principle:
Principle #23Feedback

3Loss of information

If the system provides detailed analysis of query mismatches to help users understand empty answers, then loss of information is reduced, but device complexity increases due to additional processing requirements

Engineering Contradiction:
Improvequery mismatch informationVSAvoidsystem complexity
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The system segments the query and data graphs into comparable components, identifying the maximum common subgraph separately from the missing components. This segmentation allows the system to provide detailed mismatch information by clearly distinguishing between what was found and what is missing, without requiring complex overall analysis.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The diff-query analyzer extracts and reports specifically the missing query components from the full query graph. By taking out only the relevant mismatch information (the difference between query and maximum common subgraph), the system provides useful feedback without requiring excessively complex processing of the entire query structure.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS9405855B2Processing diff-queries on property graphs
Publication Date: 2016.08.02 SAP SE
  • US9405855B2 patent drawing
  • US9405855B2 patent drawing
  • US9405855B2 patent drawing

AI summary

A system, computer-implemented method, and a computer-readable medium for determining why a query returns a null set in a database management system. When the database management system receives a query graph, database management system compares the query graph to the data graph. Based on the comparison, database management system identifies a discovered component of the query graph and a missing component of the query graph, wherein the missing query component indicates a reason for the null set.