×

Query optimization for SPARQL

  • US 9,256,639 B2
  • Filed: 08/31/2012
  • Issued: 02/09/2016
  • Est. Priority Date: 08/31/2012
  • Status: Active Grant
First Claim
Patent Images

1. A computer implemented method for efficiently planning and executing a SPARQL query, in any of the variants of the SPARQL query language, against a data source compliant with Resource Description Framework (RDF) standard, the method comprising:

  • receiving a SPARQL query graph pattern;

    converting the SPARQL query to a semQA2 query and creating a semQA2 parse tree by replacing syntax expression in the SPARQL query with algebraic operators, wherein LeftJoin operators in the SPARQL query are not eliminated;

    performing filter pushdown on the semQA2 parse tree, including filters with LeftJoin operators, so as to produce filters as close to leaf nodes of the semQA2 parse tree as possible;

    executing a query planning mechanism that uses semQA2 algebraic equivalences and filter pushdown to find multiple graph patterns equivalent to the semQA2 query;

    executing a cost function that provides a cost of execution of each of the multiple graph patterns equivalent to the semQA2 query;

    determining an efficient query plan for execution of the semQA2 query, by selecting, from the multiple graph patterns equivalent to the semQA2 query, a particular graph pattern with lowest cost of execution, according to the cost function; and

    executing the particular graph pattern against a RDF data source and retrieving results compliant with the SPARQL specification.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×