GraphDB-SE Installation

compared with
Current by Dimitar Manov
on Sep 18, 2014 19:02.

Key
This line was removed.
This word was removed. This word was added.
This line was added.

Changes (29)

View Page History
h1. Upgrading

In most cases, upgrading GraphDB-SE can be achieved simply by replacing the GraphDB and bundled 3rd party jar files. The required version of the Sesame framework for the recent GraphDB OWLIM versions is given in the following table:

|| OWLIM/GraphDB version || Required Sesame version ||
| GraphDB-SE 5.4 | Sesame 2.7 |
| GraphDB-SE 6.0 | Sesame 2.7.8 + new index format (autoupgraded) - the same for Owlim 5.5|
| OWLIM-SE 5.5 | Sesame 2.7.8 + new index format (autoupgraded)|
| OWLIM-SE 5.4 | Sesame 2.7.8 |
| GraphDB-SE OWLIM-SE 5.3 | Sesame 2.6.7\+ |
| GraphDB-SE OWLIM-SE 5.2 | Sesame 2.6.7\+ |
| GraphDB-SE OWLIM-SE 5.1 | Sesame 2.6 |
| GraphDB-SE OWLIM-SE 5.0 | Sesame 2.6 |
| GraphDB-SE OWLIM-SE 4.3 | Sesame 2.6 |
| GraphDB-SE OWLIM-SE 4.2 | Sesame 2.5 |
| GraphDB-SE OWLIM-SE 4.1 | Sesame 2.4 |
| GraphDB-SE OWLIM-SE 4.0 | Sesame 2.4 |
| BigGraphDB BigOWLIM 3.5 | Sesame 2.3 |
| BigGraphDB BigOWLIM 3.4 | Sesame 2.3 |
| BigGraphDB BigOWLIM 3.3 | Sesame 2.3 |
| BigGraphDB BigOWLIM 3.2 | Sesame 2.3 |
| BigGraphDB BigOWLIM 3.1 | Sesame 2.2 |

Typically, Sometimes, the binary format of the storage files for different versions of BigGraphDB/GraphDB-SE BigOWLIM/OWLIM-SE/GraphDB-SE are not compatible. However, storage files created with version 3.1 and upwards will be automatically upgraded when using a later version of Owlim/GraphDB. However, this is a one-way process and no downgrade facility is provided.

{warning}
When upgrading to a later version of Owlim/GraphDB it is vitally important to make a back-up of your storage files before running the new software, because, otherwise, it will be impossible to revert to a previous version of GraphDB.
{warning}

h1. Easy install

GraphDB is normally built against the latest stable version of the [Aduna OpenRDF Sesame framework|http://www.openrdf.org/]. If using GraphDB with this version then the easiest way to deploy a GraphDB server instance is to copy the re-packaged Sesame Web applications (.war files) in to the Tomcat {{webapps}} directory. These can be found in the {{sesame_owlim}} directory in the GraphDB distribution ZIP file. These Web applications have been modified as follows:

* *openrdf-sesame.war:* The Sesame server application. All GraphDB-SE and 3{^}rd^ party jar files have been added to this package, so that it can be used immediately after deployment.
* *openrdf-workbench.war:* The GraphDB-SE jar, XSLT configuration code and an a GraphDB-SE Turtle configuration file have been added, so that new GraphDB-SE instances can be created using the Workbench without the need to run the command line console application.

After deployment, an a GraphDB-SE instance can be created using the workbench application as follows:
* Start a browser and go to the Workbench Web application using a URL of this form: [http://localhost:8080/openrdf-workbench/] \- substituting {{localhost}} and the {{8080}} port number as appropriate.
* Click 'change server' if necessary to select a Sesame server instance if it is running on a different machine. The server URL will be of this form: [http://localhost:8080/openrdf-sesame]
* After selecting a server, click 'New repository'
* Select 'GraphDB-SE' from the drop-down and enter the repository ID and description. Then click 'next'.
* Fill in the fields as required (referring to the owlim-configurator spreadsheet as necessary) and click 'create' - if you have an a GraphDB-SE license file, its location should be specified in the license field. Note that paths must use '/' separators, even on Windows.
* A message should be displayed that gives details of the new repository and this should also appear in the repository list (click 'repositories' to see this).

h1. Installing GraphDB-SE with Jena

This section is for users and system administrators that are unfamiliar with the GraphDB-SE Jena adapter. The information contained in the following pages should be enough to get started with this software, i.e. to install and configure an a GraphDB-SE repository and access it via the Jena API or Jena compatible tools.
{note}
The Jena adapter allows GraphDB-SE to be used with local repositories, NOT those shared via the Sesame HTTP server. If you want to use GraphDB-SE remotely, consider using the Joseki server as described below.
h2. Description of the GraphDB-SE Jena adapter

The GraphDB-SE Jena adapter is essentially an implementation of the [Jena|http://jena.sourceforge.net/index.html] _DatasetGraph_ interface that provides access to individual triples managed by an a GraphDB-SE repository through the Sesame API interfaces.
It is not a general purpose Sesame adapter and cannot be used to access any Sesame compatible repository, because it utilises an internal GraphDB-SE API to provide more efficient methods for processing RDF data and evaluating queries.
The adapter comes with its own implementation of a [Jena|http://jena.sourceforge.net/index.html] 'assembler' factory to make it easier to instantiate and use with those related parts of the Jena framework, although one can instantiate an adapter directly by providing an instance of a Sesame *SailRepository* (an GraphDB-SE *GraphDBRepository* implementation). Query evaluation is controlled by the ARQ engine, but specific parts of a Query (mostly batches of statement patterns) are evaluated natively through a modified *StageGenerator* plugged into the Jena runtime framework for efficiency. This also avoids unnecessary cross-api data transformations during query evaluation.

h2. Instantiate Jena adapter using a SailRepository

In this approach, an a GraphDB-SE repository is first created and wrapped in a Sesame *SailRespository*. Then a connection to it is used to instantiate the adapter class *SesameDataset*. The following example helps to clarify:
{code}import com.ontotext.trree.OwlimSchemaRepository;
import org.openrdf.repository.sail.SailRepository;
h2. Instantiate GraphDB-SE adapter using the provided Assembler

Another approach is to use the Jena assemblers infrastructure to instantiate an a GraphDB-SE Jena adapter. For this purpose the required configuration must be stored in some valid RDF serialisation format and its contents read into a Jena model. Then, the assembler can be invoked to get an instance of the Jena adapter. The following example specifies an adapter instance in N3 format.

{noformat}
## It is now possible to use the SPARQL query view.

# Export to an a GraphDB database:
## Open an ontology file;
## Select File->export->TopBraid Composer->Export/Merge/Convert RDF graphs;