The fully managed version of GraphDB in the Cloud will provide an enterprise-grade RDF graph database as-a-service (DBaaS). Developers no longer need to deal with DBA tasks such as installation and upgrades, provisioning and deployment, backups and restores, as well as ensuring database availability - the DBaaS provides a highly available database in the Cloud, accessible 24/7 from anywhere. It is available with pay-per-use pricing, where the user will pays only for the actual utilisation of the database (number of triples stored and number of queries executed).
The RDF graph database-as-a-service is the perfect solution for scenarios with small or medium database size and query load, where investing in software licenses and provisioning and maintaining an on-premise 24/7 server is not cost optimal.
The RDF graph database-as-a-service is available in various configurations:
Fully managed databases are created via the S4 Management Console.
After the empty database is created, one or more repositories can be created within it. The repository creation can be performed via:
The following JSON snippet shows a repository configuration, which needs to be sent to the DBaaS REST API for the repository creation:
The various configuration parameters of the JSON configuration file are:
A new repository can be created via a simple RESTful request providing the repository configuration in JSON format. Several request parameters should be provided, such as user API keys, the database, as well as the unique user number:
The database service endpoint URL can be constructed with the proper authentication credentials as follows:
For the cURL example, the JSON repository configuration file can be created like this:
Here is the complete cURL example which creates a new repository in the database. Note that the proper content type of the request body needs to be application/json
The sample code is available from the S4 GitHub repository
Step 1: Create an API key
Step 3:Set up the Http Client Context:
Step 4: Prepare repository configuration
Step 5:Prepare the put headers
Step 6: Add the configuration to the put:
Step 7: Execute the request:
Step 8: Print the results:
To provide a maximum flexibility of capacity provisioning for the repositories, S4 provides a mechanism for distributing the total memory used for caching by the database among the different repositories in the database. The cache memory configuration is also specified as a simple JSON structure:
The cache memory configuration MUST list and the sum of the percentage distribution MUST be , or an error will be returned.
As soon as a database is successfully created and it's status turns from Pending to OK, the URL indicated in the management interface can be opened in a separate browser window. This gives access to the GraphDB Workbench which is a visual tool for database administration and data management. The current version of the workbench is restricted only to data management and for the rest of the functionalities the S4 Management Console should be used.
Note: for accessing the integrated GraphDB Workbench, the user is asked to provide valid API key for authentication (not main account credentials), which can be generated via the S4 Management Console.
You can use an open source Web UI like the OpenRDF Workbench to easily upload data into the database:
You can upload RDF data (example.rdf) via the following cURL script:
Note that you need to specify the correct content type for the request body, according to the format of the RDF file you're uploading (RDF/XML, N-triples, Turtle, N3, RDF/JSON, ..)
The following example in Java uploads data into a repository, via the OpenRDF SDK for Java:
You can upload data using SPARQL Update via the following cURL script:
You can execute SPARQL queries via the following cURL script:
In this section, we show how to execute SPARQL query, via the OpenRDF SDK for Java:
The fully managed DBaaS REST API is based on the OpenRDF API
The base URL always looks like https://rdf.s4.ontotext.com/<USER>/<DATABASE>/, where
The Swagger description of the DBaaS REST API is available at http://swagger.s4.ontotext.com/
Graph Rover by Metreeca can be directly used with the fully-managed DBaaS on S4. Once you access the webapp for Graph Rover, you need to only specify the SPARQL endpoint for the RDF repository you want to use with it:
After that, Graph Rover should be able to seamlessly connect to the SPARQL endpoint of the DBaaS on S4 and retrieve information about the triples in your repository
The fully-managed database will automatically backup the data once per day by creating a snapshot of the network-attached storage where the data is stored. This snapshot can be used to quickly restore the database to the state from a point back in time. The S4 platform will preserve up to 3 backups (snapshots) and when a new backup is created, the oldest one will be deleted automatically.
Additionally, the user may initiate a backup or restore procedure manually and at any time from the S4 Management Console. This functionality is accessible on a selected database via context menu or via the 'Actions' list.
The Create backup operation is preceded by a confirmation message and short backup instructions. During the backup process the database will be temporary inaccessible which is indicated by a MAINTENANCE status of the database. As soon as the backup is completed the database status turns to OK.
The Restore from backup action shows the user information about the latest available database backup. The restore operation will disable the database access until its previous state is recovered completely. During the restoration process the database will be set into MAINTENANCE mode.
The fully managed database provides the capability to export the full database content into a file (in various RDF serialisation formats). The user may instantiate an export at any time via the "Database" section of the S4 Management Console.
This export file also provides the means for users to migrate their data to a different RDF database if they no longer wish to use the fully managed database on the S4 platform. If the user wishes to migrate from an on-premise RDF database deployment to the fully managed database on S4 then the data must be first exported from the old database instance (in one of the RDF serialisation formats) and then imported into the running S4 database instance. The import an be done via small code snippets in cURL, Java, etc. using the standard OpenRDF API that the S4 database supports. The import can also be performed with OpenRDF tools such as the OpenRDF Workbench. When the GraphDB Workbench is integrated with the S4 platform, it will provide easy means to export / import data from / into the fully managed databases running on S4.
For exporting the contents of a fully managed database on S4 follow the steps:
1. Instantiate the export from the S4 Management Console
2. Select the desired RDF serialisation format (Turtle is the default)
3. Start the export. The export should take only a few seconds on a Micro (1 million) instance.
4. When the export is complete, the database information on the S4 Management Console will be updated with the timestamp of the most recent export
5. At any time the user may download the database export file.
6. The export file is a compressed ZIP archive with one file per database repository within the archive
The standard S4 support channels are available for questions, feedback and general information related to GraphDB on AWS:
Skip to end of metadata Go to start of metadata