Increasing SPARQL performance

Recently I’ve been playing (for work, honest!) with the Semantic Web related technology SPARQL, a query language for RDF. I ended up creating some very complex queries for my OWL ontologies that were being executed through Jena, a Java framework for building Semantic Web apps. These queries were running so incredibly slowly that I thought we might have taken the completely wrong direction for the project and would have to start from scratch. Actually it turns out I was doing something wrong which is always good to hear…

After looking at some code by someone else in my department that had done some similar work before, we realised that they were setting a specification that defines the language and reasoner to use when creating the ontology model. Now they had no idea why they were setting that but doing the same in my code resulted in a 700% performance enhancement! Quite a productive day 😀 .

So if you’re ever using SPARQL and Jena and having some performance issues, remember to set the appropriate specification (in my case OWL_DL_MEM).


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s