Difference between revisions of "Biodiversity Access"
(→Architecture) |
|||
Line 2: | Line 2: | ||
||__TOC__ | ||__TOC__ | ||
|} | |} | ||
− | + | ||
− | + | Part of the [[Data Access and Storage Facilities]], a cluster of components within the systems allows uniform access over sources of biodiversity data of arbitrary location and size. | |
+ | |||
+ | |||
This document outlines their design rationale, key features, and high-level architecture as well as the options for their deployment. | This document outlines their design rationale, key features, and high-level architecture as well as the options for their deployment. | ||
Revision as of 14:43, 28 February 2012
Part of the Data Access and Storage Facilities, a cluster of components within the systems allows uniform access over sources of biodiversity data of arbitrary location and size.
This document outlines their design rationale, key features, and high-level architecture as well as the options for their deployment.
Overview
The goal of this subsystem is to offer an uniform access over different biodiversity repositories through a simple API. The services have dynamically extensible architectures, i.e. rely on independently developed plugins to adapt their APIs to a variety of back-ends within or outside the system. When connected to remote data sources, the services may be widely replicated and their replicas know how to leverage the Enabling Services to scale horizontally to the capacity of the remote back-ends.
Design
Philosophy
Handling heterogeneous biodiversity repositories with different capabilities and dissimilar results modeling is one of the main goals for biodiversity studies. This subsystem offer the possibility to retrieve, to manage and to elaborate all this data with a single entry point. The choice to not use the tree-manager subsystem was taken as the APIs are too general to use them in this specific context. In this case a domain specific APIs is needed.
Architecture
The subsystem comprises the following components:
- species-manager-service: a stateless Web Service that exposes read operations and implements it by delegation to dynamically deployable plugins for target repository sources within and outside the system;
- species-manager-library: a client library that implements a high-level facade to the remote APIs of the Species manager service;
- obis-species-plugin: a plugin of the Species Manager service that interacts with [http:// OBIS] data source;
- gbif-species-plugin: a plugin of the Species Manager service that interacts with [http:// GBIF] data source;
- catalogueoflife-species-plugin: a plugin of the Species Manager service that interacts with [http:// Catalogue of Life] data source;
- flora-species-plugin: a plugin of the Species Manager service that interacts with [http:// Brazilian Flora] data source.
A diagram of the relationships between these components is reported in the following figure:
Deployment
Usually, a subsystem consists of a number of number of components. This section describes the setting governing components deployment, e.g. the hardware components where software components are expected to be deployed. In particular, two deployment scenarios should be discussed, i.e. Large deployment and Small deployment if appropriate. If it not appropriate, one deployment diagram has to be produced.
Large deployment
A deployment diagram suggesting the deployment schema that maximizes scalability should be described here.
Small deployment
A deployment diagram suggesting the "minimal" deployment schema should be described here.
Use Cases
The subsystem has been conceived to support a number of use cases moreover it will be used to serve a number of scenarios. This area will collect these "success stories".
Well suited Use Cases
Describe here scenarios where the subsystem proves to outperform other approaches.
Less well suited Use Cases
Describe here scenarios where the subsystem partially satisfied the expectations.