SQL Extensions for Native Graph Data in Relational Databases
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Relational databases face challenges in natively representing and managing graph structures, leading to disconnects between native SQL commands and graph database management systems, resulting in non-current data and increased synchronization overhead.
Innovation Solution
The method involves creating a graph workspace object in a database architecture, identifying vertex and edge tables, and assigning graph relationships using source and target columns, allowing for native support of graph-based representations within the relational database using SQL commands.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If graph structures are represented using traditional relational database tables and SQL commands, then data storage and querying are supported, but data integrity and synchronization efficiency deteriorate due to the disconnect between native SQL commands and graph database management systems
Solution Approach 1:
The patent segments the graph data representation into two distinct table structures: vertex tables for storing node data and edge tables for storing relationship data. This segmentation allows each table type to be optimized for its specific purpose while maintaining native SQL support, thereby improving both graph structure representation capability and data integrity through dedicated storage mechanisms.
Solution Approach 2:
The patent introduces an intermediary layer of graph-specific SQL extensions that bridge the gap between traditional SQL commands and graph database management systems. This intermediary enables native graph operations within the relational database framework, eliminating the disconnect that previously caused synchronization overhead and data integrity issues.
2Adaptability or versatility
If external graph database management systems are used to manage graph data, then graph-specific operations are supported, but synchronization overhead and system complexity increase
Solution Approach 1:
The patent merges graph database management capabilities directly into the relational database management system by extending SQL with graph-specific syntax. This consolidation eliminates the need for separate external graph database systems, reducing system architecture complexity while maintaining full graph operation capability through unified native support.
Solution Approach 2:
The patent makes the relational database management system universal by enabling it to handle both traditional relational data operations and graph-specific operations through extended SQL commands. This multi-functionality allows a single system to perform diverse data management tasks without requiring specialized external tools, thereby reducing system complexity.
3Productivity
If graph relationships are defined using separate graph database systems, then graph queries are efficient, but data synchronization overhead increases
Solution Approach 1:
The patent introduces graph-specific SQL extensions as an intermediary that enables efficient graph queries to be executed directly within the relational database management system. This intermediary layer provides native support for graph operations, eliminating the need for data synchronization between separate systems and thereby reducing time loss while maintaining query efficiency.
Data Source
AI summary
Based on received input, a vertex table of the database layer and a vertex key column in the vertex table can be identified. The vertex key column defines vertices of a graph representation. Also based on the received input, an edge table of the database layer, an edge key column in the edge table, a source column in the edge table, and a target column in the edge table can be identified. The source column and target column define relationships between vertices of the plurality of vertices. Within a graph workspace object, graph relationships linking the vertices defined by the vertex key column via edges defined by the source column and target column in the edge table can be assigned, and the graph workspace can be generated in a higher level programming layer based on the graph workspace object.


