Also known as Bigdata
Blazegraph is an open source triplestore and graph database,
Quick Start with the Executable Jar Up and running with Blazegraph in under 30 seconds: Quick Start. Deploying in Production Blazegraph is designed to be easy to use and get started. It ships without SSL or authentication by default for this reason. For production deployments, we strongly recommend you enable SSL, authentication, and appropriate network configurations. There are some helpful links below to enable you to do this. Enabling SSL support To enable SSL support, uncomment the example jetty.xml and configure it for your local keystore. Note that the Blazegraph namespace feature for multi-tenancy does not provide security isolation. Users that can access the base URI of the server can access any of the available namespaces. You can further restrict this through a combination of authentication configuration and restricting access to specific namespace URIs, i.e. /blazegraph/namespace/NAMESPACE/sparql . 1. Configuring Jetty Authentication for a standalone Jetty deployment : Follow the jetty guide to configure authentication for the jetty.xml you use to deploy the server by uncommenting the section. You'll need to create a realm.properties and update the jetty.xml to point to its location on the filesystem. Then configure the web.xml to uncomment the security-constraint. 1. Configuring Tomcat Authentication for a standalone Tomcat deployment : First configure a Tomcat Realm with your choice of authentication method (JDBC, JNDI, etc.). Then configure the web.xml to uncomment the security-constraint. 1. Setup a reverse-proxy configuration with authentication : You can setup an http or https reverse proxy configuration that has authentication and forward requests to the local Blazegraph instance (typically running on localhost:9999). This is a good option with Nginx and Apache. Mitigating Cross-Site Request Forgery (CSRF) If you enable authentication and expose the Blazegraph workbench, you should also take steps to protect against CSRF. Tomcat8 provides a CSRF filter that can be configured. For Jetty, if you configure authentication the default value for SecurityHandler.setSessionRenewedOnAuthentication(true) can also be used. CSRF protection may require REST clients to implement HTTP headers to be used to interact with the service. Building the code As a quick start, run mvn install -DskipTests or the utility script ./scripts/mavenInstall.sh . Samples and Examples There are code samples and examples to get started with the Blazegraph Database [here] ( Tinkerpop3 examples are included directly within the Tinkerpop3 repository per below. Maven Central Starting with the 2.0.0 release, the Blazegraph Database is available on Maven Central. To include the core platform and dependencies, include the artifact below in your dependencies. Developing with Maven has notes on developing with Blazegraph Database source code and Maven. If you'd just link the Blazegraph Database dependencies without any of the external libraries, use the bigdata-runtime artifact. The bigdata-war and bigdata-jar artifacts are included for legacy purposes and use the /bigdata/ context path. Triple Pattern Fragment (TPF) Server There is a Blazegraph Triple Pattern Fragment TPF server that supports Linked Data Fragments.
~2 min read
Blazegraph is an open source triplestore and graph database, written in Java. It has been abandoned since 2020 and is known to be used in production by WMDE for the Wikidata SPARQL endpoint. It is licensed under the GNU GPL (version 2).
Amazon acquired the Blazegraph developers and the Blazegraph open source development was essentially stopped in April 2018.
Excerpt from the source-code README · 7,951 chars · not written by Vinony
via Wikidata · CC0
Discovered by embedding cosine similarity (sentence-transformers MiniLM, 384-dim).