AllegroGraph RDFStore Version 3.3 LUBM Benchmark Results

The following describes the performance of retrieval
and RDFS reasoning with the native AllegroGraph RDFS++ Reasoner and
AllegroGraph Prolog using the LUBM benchmark,
with on average 20 departments per university.

These queries were performed with full RDFS++ reasoning at query
time. Because the LUBM benchmark was designed to test some aspects of
OWL reasoning that (by design) are beyond the strength of the RDFS++
reasoner, we added the single triple:

ub:GraduateStudent rdfs:subClassOf ub:Student

The AllegroGraph RDFS++ Reasoner handles the following
RDFS and OWL predicates correctly:

RDFS:

<http://www.w3.org/1999/02/22-rdf-syntax-ns#type>

<http://www.w3.org/2000/01/rdf-schema#subPropertyOf>

<http://www.w3.org/2000/01/rdf-schema#subClassOf>

<http://www.w3.org/2000/01/rdf-schema#range>

<http://www.w3.org/2000/01/rdf-schema#domain>

OWL:

<http://www.w3.org/2002/07/owl#sameAs>

<http://www.w3.org/2002/07/owl#inverseOf>

<http://www.w3.org/2002/07/owl#TransitiveProperty>

The AllegroGraph Reasoner does not handle full OWL restrictions. For that we recommend RacerPro.

Dynamic Materialization

AllegroGraph version 3.3's RDFS++ engine dynamically maintains the ontological
entailments required for reasoning: it has no explicit materialization
phase. Materialization is the pre-computation and storage of inferred
triples so that future queries run more efficiently. The central
problem with materialization is its maintenance: changes to the
triple-store's ontology or facts usually change the set of inferred
triples. In static materialization, any change in the store requires
complete re-processing before new queries can run. AllegroGraph's
dynamic materialization simplifies store maintenance and reduces the
time required between data changes and querying.

AllegroGraph RDFStore 3.3 Benchmark for LUBM(50)

The total number of files read in is 1000. The total number of triples
after running the queries is 6,875,705.

In the LUBM(50) results below, AllegroGraph's dynamic
materialization occurred as necessary to answer each query. For
AllegroGraph version 3.3, loading, indexing and merging required a
total of 7 minutes and 50 seconds.

Query Performance Improvements in AllegroGraph version
3.3

Table 1 shows the results of running the LUBM 50 queries with both
version 3.1 and 3.3 of AllegroGraph. The total query time for the 14
queries on went from 275.379 seconds in version 3.1 to 3.798
seconds in version 3.3. The results are reported in seconds.

Table 1: Summary of LUBM(50) Results

Lubm Query

# Triples

3.1 Time

3.3 Time

Query 1

4

0.000

0.007

Query 2

130

2.634

0.330

Query 3

6

0.002

0.006

Query 4

34

0.046

0.030

Query 5

719

3.899

0.055

Query 6

519,842

5.420

1.363

Query 7

67

0.027

0.013

Query 8

7,790

3.371

0.303

Query 9

13,639

254.107

1.245

Query 10

4

0.002

0.010

Query 11

224

0.075

0.010

Query 12

15

3.470

0.025

Query 13

228

0.091

0.014

Query 14

383,730

2.235

0.387

The platform for the tests was a Quad 1.8GHz AMD64 Opteron 884, with 16Gb of memory running Fedora 8.

Download the LUBM(50) Benchmark files

AllegroGraph RDFStore 3.3 Benchmark for LUBM(8000)

The total number of files read in is 160,007 N-Triples
files, a total of 155 GB. The total number of triples after running
the queries is 1,105,993,401. In the LUBM(8000) results below,
AllegroGraph's dynamic materialization occurred as necessary to answer
each query. Loading required a total of 30 hours, 28 minutes and 43.5
seconds. The total query time was 10 minutes and 11.397 seconds.

Table 2 shows the results of running the LUBM(8000) queries with
version 3.3 of AllegroGraph. The results are
reported in seconds.

Table 2: Summary of LUBM(8000) Results

Lubm Query

# Triples

3.3 Time

Query 1

4

0.009

Query 2

2,528

135.541

Query 3

6

0.008

Query 4

34

0.031

Query 5

719

0.065

Query 6

83,557,706

208.065

Query 7

67

0.015

Query 8

7,790

0.384

Query 9

2,178,420

206.133

Query 10

4

0.011

Query 11

224

0.013

Query 12

15

0.028

Query 13

37,118

0.093

Query 14

63,400,587

61.001

The platform for the tests was a Quad 1.8GHz AMD64 Opteron 884, with 16Gb of memory running Fedora 8.