Search:
SPARQL Optimization Datasets

What this page is all about

The goal of this web page is to provide a collection of SPARQL query collections with their associated data sets as well as the results of different query engines running the queries.

We started to collect the queries and their data sets since we realized that even though many people speak about the necessity of SPARQL optimization there aren't any clear benchmarks for it.

So if you have:

  • A set of SPARQL queries and its associated data sets
  • Some results of your SPARQL query processor using one of the data sets

Please share it with us to post it on this page. This way we can all help each other to make SPARQL query processing more efficient.

In order to contact us please Email to either Christoph Kiefer or Abraham Bernstein.

Current content of this page

Olaf Hartig's Queries

Taken from his diploma thesis at http://www2.informatik.hu-berlin.de/~hartig/diplomarbeit/Diplomarbeit.pdf

Note that these queries are intended to be run on the Lehigh University Benchmark (LUBM) data-base.

Query 1

SELECT
?s ?c
WHERE
{
{ ?s rdf:type ub:GraduateStudent . }
{ ?s ub:name ?n . }
}

Query 2

SELECT
?s ?c
WHERE
{
{ ?s rdf:type ub:GraduateStudent . }
{ ?s ub:takesCourse ?c . }
}

Query 3

SELECT
?n ?c
WHERE
{
{ ?s ub:takesCourse ?c . }
{ ?s ub:name ?n . }
}

Query 4

SELECT
?s ?c
WHERE
{
{ ?s ub:name ?n . }
{ ?s ub:name ?n . }
}

Query 5

SELECT
?n ?c
WHERE
{
{ ?s rdf:type ub:GraduateStudent . }
{ ?s ub:takesCourse ?c . }
{ ?s ub:name ?n . }
}

Query 6

SELECT
*
WHERE
{
{ ?t ub:teacherOf ?c . }
{ ?t ub:emailAddress ?e . }
{ ?s ub:takesCourse ?c . }
{ ?s rdf:type ub:GraduateStudent . }
{ ?s ub:name ?n . }
}

Query 7

SELECT
?s ?n ?c
WHERE
{
{
?s rdf:type ub:GraduateStudent .
OPTIONAL { ?s ub:name ?n . }
}
{ ?s ub:takesCourse ?c . }
}

Query 8

SELECT
?s ?n ?c
WHERE
{
{
?s rdf:type ub:GraduateStudent .
OPTIONAL { ?s ub:takesCourse ?c . }
}
{ ?s ub:name ?n . }
}

Query 9

SELECT
*
WHERE
{
{
?t ub:teacherOf ?c .
OPTIONAL { ?t ub:emailAddress ?e . }
}
?s ub:takesCourse ?c .
{
?s rdf:type ub:GraduateStudent .
OPTIONAL { ?s ub:name ?n . }
}
}

Query 10

SELECT
*
WHERE
{
{ ?s ?t ub:GraduateStudent . }
{ ?s ub:name ?n . }
}

Query 11

SELECT
*
WHERE
{
{ ?s ?t ub:GraduateStudent . }
{ ?s ub:takesCourse ?c . }
}

Query 12

SELECT
*
WHERE
{
{
?s ?t ub:GraduateStudent .
OPTIONAL { ?s ub:name ?n . }
}
{ ?s ub:takesCourse ?c . }
}

Query 13

SELECT
*
WHERE
{
{
?s ?t ub:GraduateStudent .
OPTIONAL { ?s ub:takesCourse ?c . }
}
{ ?s ub:name ?n . }
}

Query 14

SELECT
*
WHERE
{
{
?s rdf:type ub:GraduateStudent .
OPTIONAL { ?s ub:name ?n . }
}
?s ?tc ?c .
{
?t ub:teacherOf ?c .
OPTIONAL { ?t ub:emailAddress ?e . }
}
}

Query 15

SELECT
*
WHERE
{
{ ?s rdf:type ub:GraduateStudent . }
{ ?s ub:name ?n . }
{ ?s ?tc ?c . }
{ ?t ub:teacherOf ?c . }
{ ?t ub:emailAddress ?e . }
}

Query 16

SELECT
?s ?c
WHERE
{
{ ?s rdf:type ub:GraduateStudent . }
{ ?s ub:name ?n .
FILTER regex( ?n, "1" )
}
}

Query 17

SELECT
?s ?c
WHERE
{
{ ?s rdf:type ub:GraduateStudent . }
{ ?s ub:takesCourse ?c .
FILTER regex( str(?c), "2" )
}
}

Query 18

SELECT
?n ?c
WHERE
{
{ ?s ub:takesCourse ?c . }
{ ?s ub:name ?n . }
FILTER regex( str(?c), "2" )
FILTER regex( ?n, "1" )
}

Query 19

SELECT
?n ?c
WHERE
{
{
?s ub:takesCourse ?c .
FILTER regex( str(?c), "2" )
}
{
?s ub:name ?n .
FILTER regex( ?n, "1" )
}
}

Query 20

SELECT
?n ?c
WHERE
{
{ ?s rdf:type ub:GraduateStudent . }
{
?s ub:takesCourse ?c .
FILTER regex( str(?c), "2" )
}
{
?s ub:name ?n .
FILTER regex( ?n, "1" )
}
}

Query 21

SELECT
?n ?c
WHERE
{
{ ?s rdf:type ub:GraduateStudent . }
{ ?s ub:takesCourse ?c . }
{ ?s ub:name ?n . }
FILTER regex( str(?c), "2" )
FILTER regex( ?n, "1" )
}

Query 22

SELECT
?n ?c
WHERE
{
{
?s rdf:type ub:GraduateStudent .
?s ub:takesCourse ?c .
FILTER regex( str(?c), "2" )
}
{
?s ub:name ?n .
FILTER regex( ?n, "1" )
}
}

Query 23

SELECT
?n ?c
WHERE
{
{
?s rdf:type ub:GraduateStudent .
FILTER ( ! regex( str(?s), "2" ) )
}
{
?s ub:takesCourse ?c .
FILTER regex( str(?s), "2" )
}
?s ub:name ?n .
}

Query 24

SELECT
?s ?n ?c
WHERE
{
?s rdf:type ub:GraduateStudent .
?s ub:takesCourse ?c .
OPTIONAL { ?s ub:name ?n . }
FILTER regex( str(?c), "2" )
}

Query 25

SELECT
?s ?n ?c
WHERE
{
?s rdf:type ub:GraduateStudent .
?s ub:name ?n .
OPTIONAL { ?s ub:takesCourse ?c . }
FILTER regex( ?n, "1" )
}

Query 26

SELECT
*
WHERE
{
{ ?s ?t ub:GraduateStudent . }
{
?s ub:name ?n .
FILTER regex( ?n, "1" )
}
}

Query 27

SELECT
*
WHERE
{
{ ?s ?t ub:GraduateStudent . }
{
?s ub:takesCourse ?c .
FILTER regex( str(?c), "2" )
}
}

Query 28

SELECT
*
WHERE
{
?s ?t ub:GraduateStudent .
?s ub:takesCourse ?c .
OPTIONAL { ?s ub:name ?n . }
FILTER regex( str(?c), "2" )
}

Query 29

SELECT
*
WHERE
{
?s ?t ub:GraduateStudent .
?s ub:name ?n .
OPTIONAL { ?s ub:takesCourse ?c . }
FILTER regex( ?n, "1" )
}

Query 30

SELECT
?s
WHERE
{
{ ?s rdf:type ub:GraduateStudent }
UNION
{ ?s rdf:type ub:UndergraduateStudent }
?s ub:name ?n .
}

Query 31

SELECT
?s
WHERE
{
?s ub:name ?n .
{ ?s rdf:type ub:GraduateStudent }
UNION
{ ?s rdf:type ub:UndergraduateStudent }
}

Query 32

SELECT
?s ?c
WHERE
{
{ ?s rdf:type ub:GraduateStudent }
UNION
{ ?s rdf:type ub:UndergraduateStudent }
?s ub:takesCourse ?c .
}

Query 33

SELECT
?s ?c
WHERE
{
?s ub:takesCourse ?c .
{ ?s rdf:type ub:GraduateStudent }
UNION
{ ?s rdf:type ub:UndergraduateStudent }
}

Query 34

SELECT
?s ?c
WHERE
{
{ ?s rdf:type ub:GraduateStudent }
UNION
{ ?s rdf:type ub:UndergraduateStudent }
?s ub:takesCourse ?c
OPTIONAL { ?s ub:name ?n }
}

Query 35

SELECT
?s ?c
WHERE
{
?s ub:takesCourse ?c
OPTIONAL { ?s ub:name ?n }
{ ?s rdf:type ub:GraduateStudent }
UNION
{ ?s rdf:type ub:UndergraduateStudent }
}

Query 36

SELECT
?s
WHERE
{
{ ?s ?t ub:GraduateStudent }
UNION
{ ?s ?t ub:UndergraduateStudent }
?s ub:name ?n .
}

Query 37

SELECT
?s
WHERE
{
?s ub:name ?n .
{ ?s ?t ub:GraduateStudent }
UNION
{ ?s ?t ub:UndergraduateStudent }
}

Query 38

SELECT
?s ?c
WHERE
{
{ ?s ?t ub:GraduateStudent }
UNION
{ ?s ?t ub:UndergraduateStudent }
?s ub:takesCourse ?c .
}

Query 39

SELECT
?s ?c
WHERE
{
?s ub:takesCourse ?c .
{ ?s ?t ub:GraduateStudent }
UNION
{ ?s ?t ub:UndergraduateStudent }
}

Query 40

SELECT
?s ?c
WHERE
{
{ ?s ?t ub:GraduateStudent }
UNION
{ ?s ?t ub:UndergraduateStudent }
?s ub:takesCourse ?c
OPTIONAL { ?s ub:name ?n }
}

Query 41

SELECT
?s ?c
WHERE
{
?s ub:takesCourse ?c
OPTIONAL { ?s ub:name ?n }
{ ?s ?t ub:GraduateStudent }
UNION
{ ?s ?t ub:UndergraduateStudent }
}

 

To top