Distributed Graph Query Engine for OLTP and OLAP Workloads
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Distributed graph databases face challenges in efficient query processing for both online transactional processing (OLTP) and online analytical processing (OLAP due to their large size and partitioned data structure, which affects performance in real-time transactions and complex data analysis.
Innovation Solution
The implementation of a system and method that includes a query processing engine capable of performing OLTP and OLAP on distributed graphs, with optimizations such as compute pushdown OLTP mode, single thread OLTP mode, and automatic transition between OLTP and OLAP modes, allowing for efficient data processing and response generation across multiple servers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If data is partitioned across multiple servers in a distributed graph database, then the system can handle large-scale graphs, but query processing efficiency deteriorates due to increased data transfer and coordination overhead
Solution Approach 1:
The system segments the distributed graph data into partitions stored across multiple servers, enabling the database to handle large-scale graphs while maintaining query processing efficiency through optimized data distribution and localized computation strategies
Solution Approach 2:
The system dynamically adapts query processing strategies based on query characteristics and data distribution, switching between different execution plans to optimize performance for specific query types on partitioned data
2Speed
If the system optimizes for OLTP queries, then real-time transaction performance improves, but complex analytical query performance deteriorates
Solution Approach 1:
The system dynamically switches between OLTP-optimized and OLAP-optimized processing modes based on query characteristics, allowing it to deliver high real-time transaction performance when needed while also handling complex analytical queries effectively
Solution Approach 2:
The system provides universal query processing capabilities that handle both OLTP and OLAP workloads through a unified architecture that adapts its processing strategy based on the specific query requirements
3Productivity
If the system optimizes for OLAP queries, then complex data analysis performance improves, but real-time transaction performance deteriorates
Solution Approach 1:
The system dynamically adjusts its processing mode based on query characteristics, enabling it to optimize for complex data analysis when OLAP queries are executed while maintaining readiness for real-time transactions when OLTP queries arrive
4Loss of energy
If compute operations are pushed down to individual servers, then data transfer is minimized, but coordination complexity increases
Solution Approach 1:
The system segments compute operations to be executed locally at each server node, minimizing data transfer across the network while managing coordination complexity through structured communication protocols and centralized coordination mechanisms
Data Source
AI summary
Query processing using online transactional processing (OLTP) and/or online analytical processing (OLAP) use a distributed graph. Optimizations are described including compute pushdown OLTP mode, single thread OLTP mode, and automatic transition between OLTP mode and OLAP mode. A query processing engine comprises an OLTP processing engine, an OLAP processing engine, and a storage (e.g., a computer memory or storage). The OLTP processing engine is configured to process OLTP queries, and the OLAP processing engine is configured to process OLAP queries. The query processing engine may comprise a transition determination engine configured to determine when to transition query processing between OLTP query processing mode and OLAP query processing mode.


