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:
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.
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.
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.
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.
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.
The details are in the Learning Center example here: LUBM(50) Dataset
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.
The details are in the Learning Center example here: LUBM(8000) Dataset
Copyright © Franz Inc., All Rights Reserved | Privacy Statement |