Semantic Graph Database Parallel Query Compiler

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional relational database systems are inadequate for discovering complex relationships in heterogeneous data due to their inability to support subgraph isomorphism, typed path traversal, and community detection, and they inefficiently handle additional relationships and data storage, leading to wasted resources and performance issues.

Innovation Solution

A semantic graph database system utilizing a multithreaded runtime system with a compiler layer to convert user queries into data parallel source code, a library of multithreaded algorithms and data structures, and a multithreaded runtime library for parallel execution on commodity clusters, enabling efficient storage and analysis of complex data relationships.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If relational databases are used to store and query data, then data can be organized in tables with structured schemas, but the system becomes ineffective at discovering complex relationships in heterogeneous data and requires significant restructuring when adding new relationships

Engineering Contradiction:
Improveability to support complex relationship queriesVSAvoidinternal data structure complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the monolithic relational database structure into a graph database model where data is divided into nodes and edges. This segmentation allows independent representation of entities and relationships, enabling complex relationship queries without requiring global schema restructuring. Each node and edge can be independently modified or added without affecting the overall structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from the traditional two-dimensional table structure (rows and columns) to a multi-dimensional graph structure with nodes, edges, and hierarchical relationships. This dimensional change enables representation of complex relationships including parent-child relationships, many-to-many relationships, and path-based queries that are impossible in flat relational tables.

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

2Reliability

If relational databases store all records with entries for every column, then data completeness is maintained, but space is wasted when not all records have entries for new columns

Engineering Contradiction:
Improvedata completenessVSAvoidstorage space efficiency
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts the requirement for data completeness from the rigid table schema and implements it through optional properties and constraints in the graph model. Properties can be defined as required or optional, allowing the system to maintain data completeness where needed while avoiding storage of unnecessary data. This extraction enables selective enforcement of data completeness at the property level rather than requiring all records to have all columns.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent changes the parameter of data representation from fixed-width columns to variable-length properties. Each node can have a dynamic set of properties based on its type and the specific data being stored. This parameter change allows the system to store only the necessary properties for each record, eliminating the need to allocate space for all possible columns across all records while maintaining data completeness for required properties.

Inventive Principle:
Principle #35Parameter changes

3Ease of operation

If relational databases perform outer join operations to handle missing data, then query flexibility is improved, but large amounts of intermediate values are generated that waste time and space

Engineering Contradiction:
Improvequery flexibilityVSAvoidquery execution time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent uses copying to create local references between nodes rather than performing expensive join operations. When relationships need to be traversed, the system copies or references the necessary node data locally, avoiding the generation of large intermediate result sets. This copying approach maintains query flexibility by enabling various relationship traversals while significantly reducing the computational overhead of join operations.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent introduces edges as intermediary elements that directly represent relationships between nodes, eliminating the need for join operations. Edges serve as natural mediators that connect nodes and carry relationship information, allowing the system to traverse relationships efficiently without generating intermediate values. This intermediary approach transforms the complex join operation into simple edge traversal.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Productivity

If conventional database systems process queries sequentially, then implementation simplicity is maintained, but execution time increases for complex queries on large datasets

Engineering Contradiction:
Improvequery execution speedVSAvoidparallel processing complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments query processing into independent parallel tasks that can be executed concurrently across multiple processing elements. The graph traversal operations are divided into independent steps that can be parallelized, with each processing element working on a subset of the graph data. This segmentation enables significant speedup for complex queries on large datasets while maintaining manageable system complexity through modular task design.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements partial parallelization where only the computationally intensive portions of query processing are parallelized, while simpler operations remain sequential. This selective parallelization provides performance benefits for complex queries without requiring complete restructuring of the entire system. The approach allows the system to leverage parallel processing capabilities where they provide the most value while avoiding the overhead of parallelizing unnecessary operations.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10990587B2System and method of storing and analyzing information
Publication Date: 2021.04.27 BATTELLE MEMORIAL INST
  • US10990587B2 patent drawing
  • US10990587B2 patent drawing
  • US10990587B2 patent drawing

AI summary

A system and method of storing and analyzing information is disclosed. The system includes a compiler layer to convert user queries to data parallel executable code. The system further includes a library of multithreaded algorithms, processes, and data structures. The system also includes a multithreaded runtime library for implementing compiled code at runtime. The executable code is dynamically loaded on computing elements and contains calls to the library of multithreaded algorithms, processes, and data structures and the multithreaded runtime library.