SPARQL to SQL Translation via Graph Navigation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems face inefficiencies in translating SPARQL queries to SQL queries, leading to slow data retrieval from RDF graphs stored in triples stores due to the need for joining data across multiple tables, which consumes significant time.

Innovation Solution

A method is introduced that generates graphs from SPARQL queries, assigns priorities to nodes, creates a priority queue, navigates through the graphs to traverse connected nodes, and generates access plan elements for SQL queries, optimizing the translation process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data from multiple tables is joined to process SPARQL queries, then complete query results are obtained, but processing time increases significantly

Engineering Contradiction:
Improvequery result completenessVSAvoidquery processing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary actions by generating graphs from the SPARQL query before execution, assigning priorities to nodes, and pre-computing access plans. This preparation work is done in advance so that during actual query execution, the system can directly use the pre-established access plans and priority queues, avoiding time-consuming table joins at runtime while still ensuring complete query results.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces graphs as an intermediary data structure between the SPARQL query and the underlying triple store. Instead of directly joining multiple tables to answer SPARQL queries, the system first translates the query into a graph representation, then uses this graph as a mediator to guide the data retrieval process, ultimately generating SQL queries that efficiently access the triple store without requiring complex multi-table joins.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If graphs are generated and nodes are assigned priorities with navigation, then data retrieval efficiency improves, but system complexity increases

Engineering Contradiction:
Improvedata retrieval efficiencyVSAvoidtranslation process complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the complex query translation process into distinct, manageable components: graph generation from SPARQL query, node priority assignment, priority queue construction, graph navigation, and access plan element generation. Each component handles a specific aspect of the translation, making the overall complex process more manageable and maintainable while improving data retrieval efficiency through this structured approach.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9703830B2Translation of a SPARQL query to a SQL query
Publication Date: 2017.07.11 MAPLEBEAR INC
  • US9703830B2 patent drawing
  • US9703830B2 patent drawing
  • US9703830B2 patent drawing

AI summary

In the processing of a query while being translated from the SPARQL language to the SQL language, a manner of navigation through the one or more graphs is provided. The plurality of the nodes in the one or more graphs generated from the query is identified. The plurality of the nodes are assigned a priority and arranged in the priority queue based on the assigned priorities. The node with a highest assigned priority is selected each time for execution of the query from the selected node. The one or more graphs are navigated from the selected node to traverse to the one or more nodes connected with the selected node. An access plan element is generated corresponding to the selected nodes and the one or more traversed nodes.