Graph Algorithms in Relational Databases

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional relational databases are unable to support graph algorithms operating on graph-modeled data, requiring the exportation of data to external systems and lacking enforcement of security rules like authorizations and ownership.

Innovation Solution

Implementing graph algorithms as stored procedures within the relational database, allowing native execution and enforcement of security rules, with support for domain-specific programming languages converted to relational database-specific languages, and managing graph data in vertex and edge tables.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If graph algorithms are executed using external systems, then graph processing capability is achieved, but data security and authorization enforcement are compromised

Engineering Contradiction:
Improvegraph processing capabilityVSAvoiddata security
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent merges graph processing capabilities directly into the relational database system by implementing graph algorithms as stored procedures. This integration allows the database to natively execute graph algorithms while maintaining its security model, authorization mechanisms, and data protection features. The graph processing functionality is combined with the existing database infrastructure rather than operating as a separate external system.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent introduces an intermediary layer that converts graph algorithm definitions from domain-specific programming languages into the relational database's native procedure language. This intermediary conversion mechanism enables seamless integration of graph processing capabilities while ensuring that all operations remain within the database's secure environment, bridging the gap between graph processing needs and database security requirements.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If graph algorithms are stored as stored procedures, then security rules are enforced, but system complexity increases

Engineering Contradiction:
Improvesecurity rule enforcementVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent makes the relational database system universal by enabling it to perform both traditional relational operations and graph algorithm executions through stored procedures. This multi-functionality allows a single system to handle diverse workloads without requiring separate specialized systems, thereby managing complexity through consolidation rather than proliferation of components.

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

Solution Approach 2:

The patent changes the parameter of algorithm representation by storing graph algorithms as executable stored procedures within the database rather than as external programs. This parameter change in how algorithms are stored and executed simplifies the overall system architecture while maintaining security, as the database's existing procedure management infrastructure is leveraged without requiring new complex mechanisms.

Inventive Principle:
Principle #35Parameter changes

3Adaptability or versatility

If domain-specific programming languages are converted to database-specific languages, then graph algorithm functionality is preserved, but conversion overhead is introduced

Engineering Contradiction:
Improvelanguage supportVSAvoidconversion time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-converting graph algorithm definitions from domain-specific programming languages into the relational database's native procedure language during the algorithm creation or loading phase. This upfront conversion ensures that the algorithms are ready for immediate execution without requiring conversion at runtime, thereby minimizing time loss during actual graph processing operations.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10394855B2Graph-modeled data processing in a relational database
Publication Date: 2019.08.27 SAP SE
  • US10394855B2 patent drawing
  • US10394855B2 patent drawing
  • US10394855B2 patent drawing

AI summary

A system for processing graph-modeled data in a relational database is provided. In some implementations, the system performs operations comprising: receiving, from a first user, a request to define a graph algorithm operating on a graph workspace, the graph workspace comprising at least a portion of graph-modeled data stored at a relational database; applying a first security rule associated with the relational database, the applying comprising determining whether the first user has a privilege to define the graph algorithm operating on the graph workspace; and storing the graph algorithm at the relational database, when the first user is determined to have the privilege to define the graph algorithm operating on the graph workspace. Related methods and articles of manufacture, including computer program products, are also provided.