SITools2

Fiche logiciel validé
  • Création ou MAJ importante : 30/01/12
  • Correction mineure : 13/08/12
Mots-clés

SITools2 : système d'accès aux données scientifiques

Description
Fonctionnalités générales

SITools2 est une plate-forme web conviviale permettant de mettre en place un système de recherche et d'accès aux données à partir d'une ou plusieurs bases de données existantes. SiTools2 permet de prendre en compte et de s'adapter aux structures de nombreuses bases de données qui sont gérées dans divers centres scientifiques, et permet d'éviter des processus lourds et complexes de migration de données.

L'architecture de cette plate-forme est composée :

  • d'un serveur de données exposant des ressources, 
  • d'une interface web pour l'administrateur permettant de configurer l'ensemble des fonctionnalités du serveur, 
  • d'une interface web pour les utilisateurs comportant un portail qui liste les projets, avec un bureau pour chaque projet qui expose l'ensemble des services mis à disposition par l'administrateur, 
  • d'un mécanisme de plugins permettant aux développeurs d'ajouter des fonctionnalités métiers aussi bien au niveau du serveur qu'au niveau du client et de les partager avec une communauté d'utilisateurs. 

SITools2 s'articule autour de trois concepts importants :

  • la source de données : infrastructure contenant les données (actuellement une base de données relationnelle accessible via l'API JDBC),
  • le jeu de données : exposition d'un sous-ensemble de la source de données par l'intermédiaire d'un service web,
  • le projet : ensemble de jeux de données.

Des services peuvent être ensuite définis à partir de ces trois concepts :

  • définition et exposition du formulaire de recherche,
  • définition et exposition de la recherche OpenSearch,
  • définition et exposition des fonctions de conversion (unité, fonction de transfert),
  • définition et exposition des fonctions de filtrage,
  • définition et exposition de dictionnaires de données,
  • définition et exposition de flux RSS,
  • définition et exposition des plugins.

Comme tout système d'accès, il est important de pouvoir sécuriser l'accès à certaines ressources selon le profil de l'utilisateur. C'est pourquoi SITools2 implémente une gestion complète des utilisateurs (information personnalisable, espace de stockage sur le serveur de données) et permet de sécuriser l'ensemble des ressources en fonction du rôle de chaque utilisateur.

Autres fonctionnalités

Le nombre de données à archiver augmente de façon exponentielle depuis plusieurs années. Ce point a été considéré lors de la conception de SITools2 afin de lui permettre de rechercher des données le plus efficacement possible. Le passage à l'échelle ("scalabilité") de l'application est assurée par une architecture REST.

La réponse du serveur est au format de JSON permettant ainsi de réduire les échanges entre le client et le serveur. 

De plus, la plateforme web a été conçue pour permettre un déploiement aisé par l'intermédiaire d'un processus d'installation qui fonctionne en mode graphique ou en mode ligne de commande.

Interopérabilité

SITools2 est basé entièrement sur une architecture REST, lui permettant de s'interfacer avec n'importe quel langage de programmation. SITools2 supporte également le standard "OpenSearch". D'autres standards d’interopérabilité en astronomie et en observation de la Terre sont en cours d'implémentation.

L'intégration de ces standards et services (Simple Cone Search en astronomie par exemple), ainsi que les formats de sortie pris en charge nativement (csv, bientôt VOTable), permettent à SITools2 d'être utilisé dans le cadre de l'Observatoire Virtuel.

Contexte d'utilisation dans mon laboratoire/service

SITools2 est utilisé dans les laboratoires partenaires du CNES.

Limitations, difficultés, fonctionnalités importantes non couvertes

Les limitations sont les suivantes :

  • les bases de données supportées sont les suivantes : MySQL, PostgreSQL
  • JAVA >= 6 
  • SITools2 ne possède pas une fonction d'insertion de données
  • problèmes d'affichage avec IE 7

Les difficultés :

  • connaître JAVA pour le développement du serveur de données
  • connaître le framework Ext-JS pour le développement du client

Fonctionnalités importantes non couvertes (version 0.9) :

  • la recherche sur différents jeux de données n'est pas actuellement supportée.
Environnement du logiciel
Plates-formes

Unix like, Mac-OS, Windows

Environnement de développement
Type de structure associée au développement

CNES

Eléments de pérennité

Maintenance supportée par le CNES.

Références d'utilisateurs institutionnels

LAM, IAS, DLR, ETH, Telespazio, EUSOC.

Environnement utilisateur
Liste de diffusion ou de discussion, support et forums

Deux listes de diffusion sont disponibles :

  • pour les développeurs : sitools2-developers [at] lists [dot] sourceforge [dot] net 
  • pour les utilisateurs : sitools2-users [at] lists [dot] sourceforge [dot] net
Documentation utilisateur

La documentation est disponible à cette URL : http://sitools2.sourceforge.net/tuto/tuto.html

Contributions

Pour contribuer au logiciel, veuillez contacter jean-christophe [dot] malapert [at] cnes [dot] fr

Commentaires

SITools2 versions 2.x

A noter que depuis la rédaction de cette fiche, l'outil SITools2 n'a cessé d'évoluer.
La dernière version stable est la 2.5 et peut être téléchargée depuis un repository git.
Sources : https://github.com/SITools2/core-v2/tree/master
Paquet Jar : https://github.com/SITools2/core-v2/releases/tag/v2.5

Parmi les évolutions les plus notables, la possibilité de faire des recherches multi-datasets et la prise en charge des protocoles VO comme SIAP ou VO ConeSearch.

SITools 1

Une fiche logiciel archivée décrit la précédente version de SITools : https://www.projet-plume.org/fiche/sitools