Graph View Selection for Relational-Graph Database Queries
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional relational-graph databases face limitations in handling graph queries, including limited support for full-fledged graph query features, performance overhead due to runtime computation of graphs, and inadequate resource management for graph data.
Innovation Solution
A database management system that determines and stores optimized graph views based on previously processed graph queries, allowing for improved performance by selecting and maintaining a subset of optimized candidate graph views within memory constraints.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If graph views are computed and stored in memory to improve query performance, then graph query speed is improved, but memory resource consumption increases
Solution Approach 1:
The system pre-computes graph views from the relational database before queries are executed. These pre-computed views are stored in memory and reused for multiple queries, eliminating the need to recompute graphs at runtime. This preliminary action speeds up query execution while the system manages memory usage by selectively maintaining only the most beneficial views.
Solution Approach 2:
The system dynamically adjusts which graph views are maintained in memory based on query patterns, memory availability, and view utility metrics. By changing the set of active graph views according to these parameters, the system optimizes the balance between query performance improvement and memory resource consumption, maintaining only the most valuable views.
2Productivity
If all candidate graph views are maintained to maximize query optimization, then query performance is improved, but device complexity increases
Solution Approach 1:
The system extracts and maintains only the most beneficial graph views from the set of all possible candidate views. By selecting a subset of views based on their utility for actual query workloads and available memory resources, the system achieves query performance improvement without the complexity of managing all possible views. This selective extraction reduces system complexity while maintaining productivity.
3Adaptability or versatility
If graph views are computed at runtime to answer queries, then query flexibility is maintained, but computational overhead increases
Solution Approach 1:
The system performs graph computation in advance and stores the results as pre-computed views. When queries are executed, the system retrieves results from these pre-computed views rather than computing graphs at runtime. This preliminary computation maintains query flexibility through view selection while dramatically reducing the computational overhead of runtime graph processing.
Data Source
AI summary
A database management system for performing a graph query based on one or more graph views of a relational-graph database is disclosed. The database management system is configured to determine a plurality of graph views from the relational-graph database based on one or more previous graph queries of the relational-graph database to obtain a plurality of candidate graph views of the relational-graph database. Moreover, the database management system is configured to store a subset of the plurality of candidate graph views of the relational-graph database and perform a graph query of the relational-graph database based on the subset of the plurality of candidate graph views of the relational-graph database. By virtue of the selected subset of the plurality of candidate graph views from the relational-graph database, the database management system can increase the processing speed of graph queries.


