Help:SPARQLStore

The SPARQLStore is the name of the component that handles the communication (including data management) between Semantic MediaWiki and a triple-store and the transformation of  into a SPARQL query representation.

Features and limitations

 * The SPARQLStore expects the cURL function of PHP to be available
 * Pros and cons of using an RDF database

Scalability and stability
Starting with the SPARQLStore supports all native features of the SQLStore including redirects for queries and property/category hierarchies (given that the back-end supports SPARQL 1.1)


 * W3C RDF Store Benchmarking lists RDF benchmarks, benchmarking results and papers
 * Comparison on Blazegraph vs. Sesame vs. Virtuoso
 * Given the fact that DBpedia is facilitating Virtuoso 7 successfully (probably the commercial version) CiteRef::openlinksw:DBpedia it should be regarded as reliable and stable CiteRef::db:engines:jena:virtuosoCiteRef::db:engines:sesame:virtuosoCiteRef::stackoverflow:304920
 * Quoting a Sesame developer "...on more recent hardware Sesame's native store scales to about 150-200 million triples. Sesame development focuses on API usability, standards compliance, parsing performance ..." but supports graph database like Systap Blazegraph or Ontotext GraphDB. CiteRef::google:group:XDrMDka82II
 * If SPARQL compliance is required Fuseki and Sesame are good candidates. If authorization is required Virtuoso and Fuseki (Version 2 with Shiro) is the choice to make. For a comparison on large datasetsCiteRef::w3c:largetriplestores.
 * 4store showed a rather degrading performance when run our test suite in comparison to any other supported repository (also it is missing SPARQL 1.1 support)
 * ARC2 (as a native PHP/MySQL) seems not a real alternative due to "ARC2 is now in a stable state with no further feature additions planned". CiteRef::gh:semsol:arc2
 * Neo4J has not been tested (see comments made about Virtuoso/Neo4J CiteRef::gh:smw:586:60571556)
 * Blazegraph has been selected by the Wikidata project to serve the "Wikidata Query Service" CiteRef::blazegraph:826

Available configuration parameters
SPARQL requests, whether queries or updates, are exchanged through web services. This means that requests are sent to and data is received from URLs that specify the location of the according service. This location is determined by the SPARQL database and by its configuration. The respective configuration parameters are shown in the following table: