Installation

How to install the SDaaS platform

Since from version 2.1.0 the deployment of the SDaaS platform is based on Docker. The SDaaS Enterprise Edition can also be installed on a standalone host (virtual or physical). If you do not already have Docker on your computer, it’s the right time to install it.

Requirements

SDaaS is contained in a docker image For SDaaS to operate effectively, certain prerequisites are necessary:

  1. Docker Orchestrator: A capable Docker orchestrator such as Docker Compose or Kubernetes is essential. This orchestrator manages the deployment and execution of Docker images, ensuring efficient resource utilization and scalability.
  2. Accessible Graph Store: The SDaaS platform requires access to at least one graph store. This store serves as the repository for the graph data and must be accessible by the SDaaS platform for storing and retrieving data as needed.

Docker requirements

The SDaaS requires:

  • Docker version ~20.10
  • Docker Compose version ~2.17

Graph store requirements

SDaaS requires read/write access to at least one RDF Graph Store that requires:

The RDF Graph Store must provide an http(s) service endpoint compliant with the following minimal service description:

    @prefix sd: <http://www.w3.org/ns/sparql-service-description#>
    sd:supportedLanguage 
        sd:SPARQL11Query, 
        sd:SPARQL11Update ;
    sd:resultFormat 
        <http://www.w3.org/ns/formats/RDF_XML>, 
        <http://www.w3.org/ns/formats/Turtle>,
        <http://www.w3.org/ns/formats/N-Triples>,
        <http://www.w3.org/ns/formats/N-Quads>
    .
    sd:resultFormat
        <http://www.w3.org/ns/formats/RDF_XML>,
        <http://www.w3.org/ns/formats/Turtle>,
        <http://www.w3.org/ns/formats/N-Triples>
        <http://www.w3.org/ns/formats/SPARQL_Results_CSV>
    .
    sd:feature sd:UnionDefaultGraph.

The SDaaS license encompasses access to the sdaas-rdfstore graph store docker image, which is constructed upon a tailored iteration of the Blazegraph graph database. This customized version of Blazegraph is engineered to align with the specifications and demands set forth for a compliant graph store within the SDaaS framework.

SDaaS docker image

The community edition image of SDaaS is available at https://hub.docker.com/r/linkeddatacenter/sdaas-ce

With your license you will receive a repository url and key that allows you to download the sdaas-ee docker image. Before using SDaaS it you need to login to the LinkedData.Center repository with using the received key:

docker login <sdaas repository URL you received>

Customizing your SDaaS docker image

You can personalize your SDaaS instance writing your Dockerfile from this example:

FROM linkeddatacenter/sdaas-(ce|ee):latest # you can substitute latest your preferred version id
## here your docker customization

then build your docker image with the command:

docker build -t sdaas <here the path of your dockerfile>

Now you can store the create docker image in your private registry or keep it local.

Do not save your generated docker image in a public registry nor distribute it, because it contains information about your license and because this breaks the license agreement.

Enterprise Edition can use any RDF store or service compatible with SPARQL 1.1 specifications, e.g. LinkedData.Center SGaaS, Blazegraph, Stardog, AWS Neptune, virtuoso, etc. etc

The best security practices suggest to run SDaaS platform and the RDF store in a dedicated VPN, but this is not mandatory, you are free to adopt your preferred network topology.

Configuration variables

These variables are defined by SDaaS docker, you can use them but should be considered readonly :

Platform variableDefaultDescription
AGENT_IDdefined at script bootan unique id for the SDaaS running session
SDAAS_INSTALL_DIR/opt/sdaasRoot of the distribution of the SDaaS platform modules
SDAAS_WORKSPACE/workspaceDefault working directory
SDAAS_ETC/etc/sdaasWhere internal configuration files are located
SDAAS_REFERENCE_DOChttps://linkeddata.center/sdaasBase URL for command documentation (http/https)

These variables have a global scope and can be changed runtime in docker instance or inside a script:

Configuration variableDefaultDescription
SDAAS_APPLICATION_IDCommunity EditionUsed in HTTP protocol agent signature
SD_LOG_PRIORITY5Sets the NOTICE default priority in logging
SD_ABORT_ON_FAILfalseAbort scripts on command failure
SD_DEFAULT_CONTEXTcommands’ context defaultsit allows to specify some couple in the form = used modify the SDaaS commands’ behavior
STOREhttp://kb:8080/sdaas/sparqlDefault graph store SPARQL endpoint
STORE_TYPEw3cDefault store engine driver

Each SDaaS command has a local context that can be overridden by setting the SD_DEFAULT_CONTEXT global configuration variable or through command options and operands.

For instance, after setting SD_DEFAULT_CONTEXT="sid=MYSTORE" all subsequent calls to SDaaS commands will use the sid MYSTORE instead of the default STORE

Last modified February 14, 2024: updated (1b4df71)