Graph databases
List of graph databases: RDF triplestores and property graphs.
#
RDF triplestores#
Ontotext GraphDBOntotext GraphDBâ„¢ triplestore includes a web UI, various data visualizations, OntoRefine, SHACL validation, RDFS/OWL reasoning to infer new triples and the possibility to deploy multiple repositories. It uses mainly the rdf4j framework.
Download the zip file of GraphDB standalone free version 9.3.0
, and place it in d2s-core/support/graphdb
before building the image using d2s update
(this step is also prompted during d2s init
).
Access at http://localhost:7200/
See the official Ontotext GraphDBâ„¢ documentation and the source code for Docker images for more details.
Obtain a license for more features such as performance improvement, easy deployment using the official DockerHub image or distributed deployment on multiple nodes with Kubernetes.
GraphDB allow to perform bulk load on large files using a second container:
- Change the repository to be created and loaded in
workspace/graphdb/preload-config.ttl
(default:demo
) - Put the files to be loaded in
workspace/import/preload
📩 - Start
graphdb-preload
docker container
When the preload has completed, the graphdb-preload
container will stop, you can then copy the loaded repository from workspace/graphdb/preload-data/repositories
to the running GraphDB folder:
And access the newly loaded repository in the running GraphDB instance without downtime.
See additional d2s documentation about setting up GraphDB
#
VirtuosoOpenLink Virtuoso triplestore. Available on DockerHub.
Access at http://localhost:8890/ and SPARQL endpoint at http://localhost:8890/sparql.
Admin username:
dba
CORS can be enabled following those instructions. See our complete Virtuoso documentation for more details.
Clear the Virtuoso triplestore using this command:
#
BlazegraphA high-performance RDF graph database. See its documentation for Docker.
Not developed for 4 years but still efficient and used by Wikidata. It uses mainly the rdf4j framework.
UID and Group ID needs to be set in order to have the right permission to bulk load a file (example given for Ubuntu). And
RWStore.properties
can be rewritten, see example.
Access UI at http://localhost:8082/bigdata
SPARQL endpoint at http://localhost:8080/bigdata/sparql (original port)
To clear the graph go to the update tab and enter clear all
Follow those instructions to enable CORS on Blazegraph SPARQL endpoint.
#
Jena FusekiFuseki is a SPARQL server on top of Apache TDB RDF store, for single machines. It uses mainly the Jena framework.
Access at http://localhost:3030
Bulk load files in demo
dataset from workspace/import
(container needs to be stopped):
If you don't specify any filenames to
load.sh
, all filenames directly under/staging
that match these GLOB patterns will be loaded:
#
StardogRequires to download the free license first, then place it in the folder shared with Stardog.
See the official Stardog documentation for Docker. A JavaScript wrapper is available to communicate with Stardog API and SPARQL endpoint.
Access at http://localhost:5820, volume shared at
workspace/stardog
#
AllegroGraphAllegroGraph® is a modern, high-performance, persistent graph database. It supports SPARQL, RDFS++, and Prolog reasoning from numerous client applications.
Access at http://localhost:10035
Default login:
test
/xyzzy
See official documentation for bulk load.
TODO: fix shared volumes
#
AnzoGraphAnzoGraph® DB by Cambridge Semantics. See its official documentation to deploy with Docker.
Unregistered Free edition limited to 8G RAM, single user and single node deployment.
Register to access the 16G single node deployment for free.
Deploy AnzoGraph on multi-server cluster for horizontal scaling with the Enterprise Edition 💶
Access at http://localhost:8086
Default login:
admin
/Passw0rd1
.
Kubernetes deployment available using Helm.
#
Linked Data Fragments ServerTechnically not a triplestore, server supporting the Memento protocol to timestamped SPARQL querying over multiple linked data sources, e.g. HDT or SPARQL.
HDT archives goes in
workspace/hdt-archives
and the config file is inworkspace/ldfserver-config.json
Access at http://localhost:8085
#
Property graphs#
Neo4jNot supporting RDF, Neo4j is a property graph database. It uses Cypher as query language.
Access at http://localhost:7474, volume shared at
workspace/neo4j
Login with
neoj4
/neo4j
and change the password.virtu
#
Additional triplestores#
MarkLogicLicensed RDF triplestore 📜
Follow the GitHub Docker instructions to deploy it.
You will need to download the MarkLogic Server 📥
#
RDFoxLicensed RDF triplestore 📜
RDFox is a in-memory triplestore only supporting triples. RDFox is a main-memory, scalable, centralized data store that allows users to efficiently manage graph-structured data represented according to the RDF data model, run reasoning engines, and query that data using the SPARQL 1.1 query language.
See the documentation to deploy it using docker.