From Blazegraph
Revision as of 16:57, 27 September 2011 by Thompsonbry (Talk | contribs) (Get the code)

Jump to: navigation, search

The following instructions will let you run the LUBM benchmark against an embedded bigdata database.

Get the code

The LUBM benchmark can be downloaded from [1]. Directions on its use are available from the project home page. You can download a modified version of the LUBM benchmark which can make it a bit easier to use with bigdata from [2]. The core benchmark is the same. We've added an HTTP SPARQL end point which is used to connect to bigdata and some new options for the generator which are useful when you are generating very large data sets for a cluster. Please contact the project maintainers if you have questions about this modified version of the LUBM benchmark.


The NanoSparqlServer is used to answer SPARQL queries. It "knows" about bigdata's MVCC semantics (multi-version concurrency control) and will issue queries to a read-only connection reading from the last commit time on the database and may have somewhat better performance or concurrency as a result. You can more or less follow the same instructions if you want to run against a bigdata federation, but you will have to have the federation up and running already and you will have to use the bulk data loader for the federation to get the data into the database.

# check out the trunk:
svn checkout ....

# build bigdata
ant clean bundleJar

# Switch to the lubm package.
cd bigdata-perf/lubm

# Edit

# generate the LUBM data set per the file.
ant run-generator

# load an LUBM data set into bigdata per the file.
ant run-load

# start an http sparql endpoint for that bigdata database instance.
ant start-nano-server

# run the lubm queries.
ant run-query


Here are some sample results.


LUBM U50 using the Journal in the WORM mode. The load time was 122 seconds (56,183 triples per second). Closure time was 44 seconds.

     [java] query       Time    Result#
     [java] query1      40      4
     [java] query3      8       6
     [java] query4      48      34
     [java] query5      59      719
     [java] query7      22      61
     [java] query8      260     6463
     [java] query10     22      0
     [java] query11     20      0
     [java] query12     27      0
     [java] query13     19      0
     [java] query14     3068    393730
     [java] query6      2800    430114
     [java] query9      3590    8627
     [java] query2      999     130
     [java] Total       10982

LUBM U50 (RWStore)

     [java] query	Time	Result#
     [java] query1	28	4
     [java] query3	17	6
     [java] query4	29	34
     [java] query5	39	719
     [java] query7	16	61
     [java] query8	166	6463
     [java] query10	29	0
     [java] query11	29	0
     [java] query12	25	0
     [java] query13	27	0
     [java] query14	2778	393730
     [java] query6	2920	430114
     [java] query2	540	130
     [java] query9	3356	8627
     [java] Total	9999