Blazegraph-Based TPF Server
##Maven Dependency The Blazegraph-based TPF Server is available on Maven Central.
<dependency> <groupId>com.blazegraph</groupId> <artifactId>BlazegraphBasedTPFServer</artifactId> <version>0.1.0</version> </dependency>
##Extending the TPF Server
git clone https://github.com/blazegraph/BlazegraphBasedTPFServer.git cd BlazegraphBasedTPFServer mvn package
To run an instance of the Blazegraph-Based TPF Server you need a configuration file. This file, usually called
config.json, is a JSON document in which you specify the dataset(s) to which your server instance provides a TPF interface. The Blazegraph-Based TPF Server comes with an example of such a file, called
config-example.json. Hence, you may copy this file to
config.json and adjust it to your needs.
The configuration file contains a section for "datasources" to which you add every dataset as a separate entry. The "settings" section of such an entry for Blazegraph-based data sources contains the typical Blazegraph configuration options (which, in a standard Blazegraph setup, would be given in a properties file). In particular, for persistent, disk-based datasets (Blazegraph buffer mode "DiskRW" or "DiskWORM") the entry "com.bigdata.journal.AbstractJournal.file" has to refer to the corresponding Blazegraph journal file; for in-memory datasets (buffer mode "MemStore") the entry "file" has to refer to an RDF document. In the latter case the data from the document will be imported when you start your Blazegraph-Based TPF Server; for big datasets this import may take a bit of time (hence, your server is not available immediately) and it may require a significant amount of main memory.
The server can be started as follows:
java -server -Xmx4g -jar target/BlazegraphBasedTPFServer.jar config.json
You may have to increase the
-Xmx parameter if you use an in-memory dataset.