Graph Database Query Translation for Relationship Extraction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Applications face difficulties in optimizing queries for relational databases and key-value stores due to the lack of knowledge about the underlying relational model, leading to suboptimal performance and user experience degradation when extracting complicated relationships.

Innovation Solution

A graph database system is employed, which stores data as a graph with nodes, edges, and predicates, allowing for efficient extraction of complicated relationships through edge queries that translate queries from other database types and represent compound relationships using hidden hub nodes, reducing the need for multiple queries and improving performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If a relational database is used to store data with a predefined relational model, then data can be organized into tables with rows and columns, but applications cannot efficiently query complicated relationships without knowing the underlying relational model, leading to suboptimal performance

Engineering Contradiction:
ImproveApplication query capabilityVSAvoidQuery performance
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent introduces a graph database as an intermediary layer between applications and data storage. The graph database receives queries from applications in their native object-oriented format, translates them into graph queries, executes them efficiently, and returns results. This mediator eliminates the need for applications to understand relational models while maintaining optimal query performance through graph traversal operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent changes the fundamental data organization parameter from tabular (relational) to graph-based (nodes, edges, properties). This parameter change allows queries to be expressed in terms of graph traversals rather than joins between tables, enabling applications to maintain their object-oriented query style while achieving superior performance on complicated relationship queries.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If a key-value store is used to avoid predefined relational models, then applications can access data as objects in memory, but it becomes difficult to optimize queries and extract complicated relationships, requiring multiple queries and degrading performance

Engineering Contradiction:
ImproveApplication data access flexibilityVSAvoidRelationship extraction efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The graph database provides universal query capability that works for both simple key-value lookups and complicated relationship extractions. The same graph query language and execution engine handle all query types, eliminating the need for applications to use different access patterns for different query complexities. This multi-functionality maintains adaptability while improving productivity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent adds a graph traversal dimension to data access. Instead of only key-based linear access in key-value stores, the graph database enables multi-dimensional navigation through nodes and edges representing relationships. This dimensional expansion allows single queries to traverse multiple relationship levels, extracting complicated relationships efficiently without requiring multiple sequential queries.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Loss of information

If multiple queries are performed to extract complicated relationships from a key-value store, then applications can retrieve needed data, but computation time and memory requirements increase

Engineering Contradiction:
ImproveData retrieval completenessVSAvoidComputation time
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The patent merges multiple separate queries into a single graph query operation. By representing relationships as edges in a graph, the database can execute one query that traverses multiple relationship paths simultaneously, combining the work of what would otherwise require multiple sequential queries. This merging reduces computation time while maintaining complete data retrieval through the graph's ability to represent complex relationships.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS9535963B1Graph-based queries
Publication Date: 2017.01.03 MICROSOFT TECHNOLOGY LICENSING LLC
  • US9535963B1 patent drawing
  • US9535963B1 patent drawing
  • US9535963B1 patent drawing

AI summary

In order to request desired information from a graph database, a system executes a query against the graph database. The graph database may store a graph that includes nodes, edges between the nodes, and predicates to represent and store data with index-free adjacency. Moreover, the query may identify a first edge associated with a predicate that specifies one or more of the nodes in the graph. In response to the query, the system receives a result that includes a subset of the graph. In particular, the subset of the graph may include the desired information expressed within an associated structure of the graph.