Triplestore

From Wikipedia, the free encyclopedia
Jump to: navigation, search

A triplestore is a purpose-built database for the storage and retrieval of triples,[1] a triple being a data entity composed of subject-predicate-object, like "Bob is 35" or "Bob knows Fred".

Much like a relational database, one stores information in a triplestore and retrieves it via a query language. Unlike a relational database, a triplestore is optimized for the storage and retrieval of triples. In addition to queries, triples can usually be imported/exported using Resource Description Framework (RDF) and other formats.

Some triplestores can store billions of triples.[2] The performance of a particular triplestore can be measured with the Lehigh University Benchmark (LUBM),[3] or with real data from UniProt.

Contents

[edit] Implementation

Some triplestores have been built as database engines from scratch, while others have been built on top of existing commercial relational database engines (i.e. SQL-based).[4] Like the early development of OLAP databases, this intermediate approach allowed large and powerful database engines to be constructed for little programming effort in the initial phases of triplestore development. Long-term though it seems likely that native triplestores will have the advantage for performance. A difficulty with implementing triplestores over SQL is that although "triples" may thus be "stored", implementing efficient querying of a graph-based RDF model (i.e. mapping from SPARQL) onto SQL queries is difficult.[5]


[edit] List of triplestore implementations

Name Language Homepage
3store C http://www.aktors.org/technologies/3store/
4store C http://www.4store.org/
5store C http://4store.org/trac/wiki/5store
AllegroGraph Common Lisp http://www.franz.com/agraph/allegrograph/
ARC PHP http://arc.semsol.org/
Ariadne Genomics Java http://www.ariadnegenomics.com/
Bigdata Java http://www.bigdata.com/
BigOWLIM Java http://www.ontotext.com/owlim/
Dydra Common Lisp, C http://www.dydra.com/
Jena Java http://jena.sourceforge.net/
Mulgara Java http://www.mulgara.org/
OpenAnzo Java http://www.openanzo.org/
OntoBroker Java http://www.ontoprise.de/en/home/products/ontobroker/
Oracle Java, PL/SQL, SQL http://www.oracle.com/technetwork/database/options/semantic-tech/whatsnew/index.html
Parliament Java/C++ http://parliament.semwebcentral.org/
Pointrel System Java/Python http://sourceforge.net/projects/pointrel/
RAP PHP http://www4.wiwiss.fu-berlin.de/bizer/rdfapi/
RDF::Core Perl http://search.cpan.org/dist/RDF-Core/
RDF::Trine Perl http://www.perlrdf.org/
RDF-3X C++ http://www.mpi-inf.mpg.de/~neumann/rdf3x/
RDFBroker Java http://rdfbroker.opendfki.de/
Redland C http://librdf.org/
RedStore C http://www.aelius.com/njh/redstore/
Semantics Platform C# http://www.intellidimension.com/
SemWeb-DotNet C# http://razor.occams.info/code/semweb/
Sesame Java http://www.openrdf.org/
Soprano C++ http://soprano.sourceforge.net/
Stardog Java http://stardog.com/
StrixDB C++/Lua http://www.strixdb.com/
SwiftOWLIM Java http://www.ontotext.com/owlim/
Virtuoso C http://virtuoso.openlinksw.com/
YARS Java http://sw.deri.org/2004/06/yars/
Smart-M3 Python/Java/C/C#

[edit] See also

[edit] References

[edit] External links

Personal tools
Namespaces
Variants
Actions
Navigation
Interaction
Toolbox
Print/export
Languages