Triplestore
AtriplestoreorRDF storeis a purpose-builtdatabasefor the storage and retrieval oftriples[1]throughsemantic queries.A triple is a data entity composed ofsubject–predicate–object,like "Bob is 35" (i.e., Bob's age measured in years is 35) or "Bob knows Fred".
Much like arelational database,information in a triplestore is stored and retrieved via aquery 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 and exported using theResource Description Framework(RDF) and other formats.
Implementations
[edit]Some triplestores have been built as database engines from scratch, while others have been built on top of existing commercial relational database engines (such asSQL-based)[2]or NoSQLdocument-oriented databaseengines.[3]Like the early development ofonline 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. A difficulty with implementing triplestores over SQL is that although "triples" may thus be "stored", implementing efficient querying of a graph-based RDF model (such as mapping fromSPARQL) onto SQL queries is difficult.[4]
Related database types
[edit]Adding a name to the triple makes a "quad store" ornamed graph.
Agraph databasehas a more generalized structure than a triplestore, using graph structures with nodes, edges, and properties to represent and store data. Graph databases might provide index-free adjacency, meaning every element contains a direct pointer to its adjacent elements, and no index lookups are necessary. General graph databases that can store any graph are distinct from specialized graph databases such as triplestores andnetwork databases.
See also
[edit]- Dataspaces
- Entity–relationship model
- Metadata § Syntax– The first two elements of theclass-attribute-valuetriple (class, attribute) are pieces of some structural metadata having a defined semantic. The third element is a value, preferably from some controlled vocabulary.
- Outline of databases
- Semantic Integration
- Semantic MediaWiki— an example of subject-predicate-object support forwikis,advanced query support, and implementations by many large organizations
- SPARQL– W3C specification involving subject-predicate-object triples
- Entity–attribute–value modelis a similar approach to data modeling.
References
[edit]- ^TripleStore,Jack Rusher,Simple Knowledge Organization System § SWAD-Europe (2002–2004),Workshop on Semantic Web Storage and Retrieval – Position Papers.
- ^GB 2384875,Dingley, Andrew Peter, "Storage and management of semi-structured data", published 2005-04-27, assigned toHewlett-Packard Co.,now expired; use of SQL relational databases as an RDF triple store.
- ^Cagle, Kurt."Semantics + Search: MarkLogic 7 Gets RDF".Archived fromthe originalon 8 August 2015.Retrieved7 August2015.
- ^Broekstra, Jeen (19 September 2007)."The importance of SPARQL can not be overestimated".Archived fromthe originalon 19 December 2014.Retrieved25 April2014.
External links
[edit]- A list of large triplestores
- Lehigh University Benchmark (LUBM)
- How RDF Databases Differ from Other NoSQL Solutions
- W3C SPARQL Working Groupwas RDF Data Access Working Group
- SPARQL Query language
- SPARQL Protocol
- SPARQL 1.1 UpdateW3C Recommendation 21 March 2013