SDI-Service

From Gcube Wiki
Jump to: navigation, search

Spatial Data Infrastructure (SDI) service Overview

The SDI-Service is a REST gCube service that acts as main control point for the entire SDI. It handles configuration of geo-services, while providing simple APIs to interact with it. This document outlines the design rationale, key features, and high-level architecture, the options for their deployment and as well some use cases.

Key features

SDI-Service is a REST service offering the following key features:

SDI Configuration management
APIs to easily query the IS and the SDI's geo-services configuration details
APIs to configure geo-services through the infrastructure contexts
GeoSpatial datasets management
APIs to publish both data and metadata into the SDI

Design

Philosophy

SDI facilities are prominent features in data infrastructures, and they must serve heterogeneous needs. In order to keep control of the SDI over the infrastructure, the SDI-Service acts as a central point of interaction for applications. The choice of REST API has been made in order promote its interoperability across applications implementation.

Architecture

The picture below describes the overall architecture of gCube SDI and the interaction between its components. The SDI-service manages all instances across contexts, allowing for a better control of policies, and acting as gateway for SDI configuration retrieval.

SDI Architecture

Interaction with subsystems

Interaction with subsystems can be achieved by integrating the SDI Library.

Deployment

Large Deployment

Small Deployment

Source code can be found at | code repo.

Use Cases

For additional informaion on how to interact with the service read page Interaction with SDI-Service

Well suited use cases

Well suited use cases addressed by the service are :

  • Retrieve endpoint and credentials to interact with geo-services
  • Configure geo-services on a context base
  • Publish/update common geospatial dataset formats

Less well suited use cases

Less suited use cases are :

  • Editing geospatial datasets