List of subject-predicate-object databases
Main article:
Triplestore
Some subject-predicate-object databases (also known as triplestores) have been built as database engines from scratch, while others have been built on top of existing commercial relational database engines (e.g., SQL-based).[1] Like the early development of online analytical processing (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 (e.g., mapping from SPARQL) onto SQL queries is difficult.[2]
Implementations
Name | Developed in language | Homepage | Licence |
3store | C | www.aktors.org/technologies/3store, sourceforge.net/projects/threestore/ | GPL |
4store | C | www.4store.org | GPL v3 |
5store | C | 4store.org/trac/wiki/5store | |
Algebraix Data | C++ | algebraixdata.com | |
AllegroGraph | Common Lisp | www.franz.com/agraph/allegrograph | |
ARC2 | PHP | github.com/semsol/arc2/wiki | W3C Software License or GPL |
Bigdata | Java | www.bigdata.com | GPL v2 or Commercial or Research |
BrightstarDB | C# | brightstardb.com | MIT |
Cayley | Go | cayley.io | Apache 2 |
ClioPatria | SWI-Prolog, C | cliopatria.swi-prolog.org | GPL v2 |
Dydra | Common Lisp, C++ | dydra.com | Commercial |
Enterlab SimpleGraph | Java | github.com/enterlab/simplegraph | EPL |
Factmint | Java | factmint.com | Commercial |
IBM DB2 | Java, SQL | pic.dhe.ibm.com/infocenter/db2luw/v10r1/topic/com.ibm.swg.im.dbclient.rdf.doc/doc/c0059661.html | |
Apache Jena | Java | jena.apache.org | Apache 2 |
KiWi (Apache Marmotta) | Java | marmotta.apache.org/kiwi | Apache 2 |
MarkLogic | C++ | www.marklogic.com | Free Developer license or Commercial[3] |
Mulgara | Java | www.mulgara.org | OSL, moving to Apache 2 |
OntoBroker | Java | www.semafora-systems.com/en/products/ontobroker/ | |
OntoQuad RDF Server | C++ | www.ontos.com/products/ontoquad/ | |
OpenAnzo | Java | www.openanzo.org | EPL |
OpenLink Virtuoso | C | virtuoso.openlinksw.com | GPL v2 or Commercial |
Oracle | Java, PL/SQL, SQL | www.oracle.com/technetwork/database-options/spatialandgraph/overview/rdfsemantic-graph-1902016.html | |
Ontotext GraphDB | Java | www.ontotext.com/products/ontotext-graphdb-owlim/ | Commercial |
SparkleDB | C++ | sparkledb.net | |
Parliament | Java, C++ | parliament.semwebcentral.org | BSD license |
Pointrel System | Java, Python | sourceforge.net/projects/pointrel | LGPLv3[4] |
Profium Sense | Java | www.profium.com/technologies/profium-sense | |
RAP | PHP | www4.wiwiss.fu-berlin.de/bizer/rdfapi | |
RDF::Core | Perl | metacpan.org/module/RDF::Core | |
RDF::Trine | Perl | www.perlrdf.org | Same as Perl |
RDF-3X | C++ | code.google.com/p/rdf3x | CC-BY-NC-SA 3.0 |
RDFBroker | Java | rdfbroker.opendfki.de | |
RDFLib | Python | github.com/RDFLib/rdflib | BSD |
Redland | C | librdf.org | Apache or LGPL or GPL[5] |
RedStore | C | www.aelius.com/njh/redstore | GPL v3 |
Saffron Memory Base | Java | www.saffrontech.com | |
Semantics Platform | C# | www.intellidimension.com | |
SemWeb-DotNet | C# | razor.occams.info/code/semweb | |
Sesame | Java | www.openrdf.org | BSD-style license |
Soprano | C++ | soprano.sourceforge.net | LGPLv2 [6] |
SPARQLCity | C, C++ | sparqlcity.com | GPLv3 |
Stardog | Java | stardog.com | |
StrixDB | C++, Lua | www.strixdb.com | |
YARS | Java | sw.deri.org/2004/06/yars | |
Nitrosbase | C++ | nitrosbase.com | |
Smart-M3 | Python, Java, C, C# | sourceforge.net/projects/smart-m3 | BSD License [7] |
Additional implementation facets
The following table is an overview of available triplestores, their technical implementation, support for the SPARQL World Wide Web Consortium (W3C) recommendations, and available application programming interfaces (API).
Solution Name | Native storage | Native SPARQL support | Native SPARQL/Update support | Native SPARQL Protocol Endpoint | Native APIs |
4store | Triplestore | ✓ | ✓ | ✓ | Command line only |
AllegroGraph | Graph | ✓ | ✓ | ✓ | For most modern programming languages |
ARC2 | 3rd party | ✓ | ✓ | ✓ | PHP |
ARQ | 3rd party | ✓ | ✓ | | Java |
BigData | Triplestore | ✓ | ✓ | ✓ | Java |
BrightstarDB | Graph data model in Heap file | ✓ | | | .NET Framework or Web Service |
Corese | 3rd party | ✓ | | | Java |
D2R Server | 3rd party | ✓ | ✓ | ✓ | Java |
Dydra | Graph database in the cloud SaaS | ✓ | ✓ | ✓ | REST API |
Factmint | Triplestore / Quadstore | ✓ | ✓ | ✓ | Java, REST API and SPARQL Endpoint |
IBM DB2 | Object-relational | | | | Java |
Intellidimension Semantics Platform 2.0 | 3rd party | ✓ | | | .NET Framework |
Jena | Tuple store | ✓ | ✓ | ✓ | Java |
KAON2 | 3rd party | ✓ | | | Java |
SparkleDB | Triplestore / Quadstore | ✓ | ✓ | ✓ | For most modern programming languages |
MarkLogic | Triplestore / Quadstore | ✓ | | ✓ | REST API, SPARQL Endpoint, Graph Protocol Endpoint, Java API, XQuery, SQL/ODBC |
Mulgara | 3rd party | ✓ | | | Java or REST API |
OntoBroker | Triplestore | ✓ | ✓ | ✓ | Java |
OntoQuad RDF Server | Triplestore / Quadstore | ✓ | ✓ | ✓ | Java, SPARQL Endpoint or REST API |
Ontotext GraphDB | Triplestore / Quadstore | ✓ | ✓ | ✓ | Java (Jena and Sesame) |
Open Anzo | 3rd party | ✓ | | ✓ | Java, JavaScript, .NET Framework |
OpenLink Virtuoso | Hybrid (Relational Tables and Relational Property Graphs) | ✓ | ✓ | ✓ | ODBC, JDBC, ADO.NET, OLE DB, XMLA, HTTP, etc., serving most modern programming languages including C, PHP, Perl, Python, Ruby, Java, JavaScript, .NET Framework, etc. |
Oracle DB Enterprise Ed. | Object-relational | | | | For most modern programming languages |
Parliament | 3rd party | ✓ | ✓ | ✓ | Java or C++ |
Pellet | 3rd party | ✓ | | | Java |
Pointrel | Triplestore | | | | Python |
Profium Sense | In-memory triplestore | ✓ | | ✓ | Java |
RAP | In-memory triplestore or heap file | ✓ | | | PHP |
RDF API for PHP | 3rd party | ✓ | | | PHP |
RDF::Query | 3rd party | ✓ | ✓ | ✓ | Perl |
RDF-3X | Triplestore | ✓ | | | Command line only |
RDFBroker | 3rd party | | | | Java |
Redland, Redstore | 3rd party | ✓ | ✓ | ✓ | C |
SemWeb.NET | 3rd party | ✓ | | ✓ | .NET Framework |
Sesame | 3rd party | ✓ | ✓ | ✓ | Java |
Soprano | 3rd party | | | | C++ |
SPARQL City | Triplestore | ✓ | ✓ | ✓ | Command Line, Web Interface |
SPARQL Engine | 3rd party | ✓ | | | Java |
Stardog | Triplestore | ✓ | ✓ |
✓ | Java, Groovy |
StrixDB | Triplestore | ✓ | ✓ | ✓ | Lua |
Twinql | 3rd party | ✓ | | | Lisp |
YARS | 3rd party | | | | HTTP, JDBC |
See also
References
External links
|
---|
| Common models | |
---|
| Other models | |
---|
| Implementations | |
---|
|