SITools

Fiche logiciel validé
  • Création ou MAJ importante : 31/03/11
  • Correction mineure : 13/08/12
Fiche archivée
Cette plate-forme a une nouvelle version SITools2 décrite dans une autre fiche logiciel, plus récente que celle-ci.
Mots-clés

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

Cette fiche n'est plus à jour. Elle a été archivée pour la raison exposée ci-contre.
  • Site web
  • Système : UNIX-like, Windows, MacOS X
  • Version évaluée : 4.5
  • Langue(s) de l'interface : anglais
  • Licence :

    Bien que le logiciel soit utilisé par plusieurs laboratoires qui travaillent en collaboration avec le CNES, la licence n'est pas encore choisie. Des négociations sont en cours, l'objectif est GPL.

Description
Fonctionnalités générales

SITools est un système d'accès aux données scientifiques utilisé en astronomie. Il assure la présentation et la dissémination des données. Il permet principalement, à partir d'une ou plusieurs bases de données scientifiques gérées sous MySQL, PostgreSQL ou Oracle, d'effectuer des requêtes intelligentes sur les données avec des critères de recherche et de tri.
Il est composé d'une couche de logiciels libres et d'un ensemble d'applications web Java (webapps) entièrement configurables.

SITools est composé de 3 modules nécessaires à son fonctionnement :

  • Le module CATALOGUE, qui définit comment accéder aux bases de données que l'on interroge. Ces catalogues peuvent être des jeux de données correspondant à des tables ou des vues de la base de données, des méta-données (équivalent aux données de la base d'administration du Système SiTools) ou des fichiers de données brutes. Il est possible de configurer autant de catalogues que nécessaire.
  • Le module REPOSITORY, qui établit les liaisons entre les catalogues utilisés (définis dans le module CATALOGUE) et les services associés (définis plus loin). Les utilisateurs et les droits d'accès aux jeux de données sont gérés dans ce module ainsi que les synonymes et les convertisseurs (fichiers de configuration XML).
  • Le module SITOOLS, qui est l'interface web par laquelle les utilisateurs accèdent aux données (IHM). Il est composé essentiellement de fichiers JSP simples à modifier pour permettre la personnalisation de l'interface. On peut par exemple rajouter un panel à l'interface de base, modifier le menu principal ou personnaliser le code couleur de l'interface.

À ces modules de base on peut ajouter des service nommés SVA (Services à Valeur Ajoutée) qui fonctionnent comme des plugins pour étendre les fonctionnalités de SITools ou permettre d'appliquer des traitements en ligne sur les données interrogées.

L'ensemble de ces modules et services peut être installé sur une architecture répartie entre plusieurs machines.

A noter qu'une version 64 bits existe depuis février 2011.

Autres fonctionnalités

SITools s'appuie sur le concept de services connectés entre eux (via un bus virtuel Web Services en SOAP) et inclut des services de base (interrogation de catalogues de jeux de données depuis une interface web) ainsi que des services à valeur ajoutée (SVA) : conversion de format, compression, tracé de graphique à la carte, tracé 3D, data-mining,...

Ces SVA peuvent déjà exister (livrées avec SITools ou développées par d'autres laboratoires) mais il est possible de développer ses propres SVA selon ses besoins. Un SVA est lui même une application web Java mais qui peut appeler un programme développé dans un autre langage (perl, python, C...). Cela permet notamment de pouvoir intégrer des programmes déjà développés en interne.

Interopérabilité

SITools peut interroger des catalogues hébergés sur des systèmes distants (il suffira d'avoir les bons droits d'accès aux jeux de données et de définir le lien d'accès dans un fichier du module catalogue). Dans ce cas, il est souvent nécessaire de spécifier des synonymes pour les données qui décrivent la même chose mais dont le nom du champ dans les tables sont différents (par exemple une valeur de magnitude qui est stockée dans le champ 'magnitude' dans le jeu de données A et 'magnit' dans le jeu de données B).
A l'inverse, les jeux de données hébergés par SITools peuvent être interrogés par d'autres systèmes d'accès aux données, notamment par le développement de requêtes Web Services.

SiTools peut ainsi être utilisé comme interface pour l'Observatoire Virtuel (VO - Virtual Observatory). Dans ce contexte, il est possible de développer des SVA qui permettent de faire des requêtes dans les protocoles VO connus (SIAP, VOQL,...) et de transformer les résultats au format VOTable Fiche Plume.

Contexte d'utilisation dans mon laboratoire/service

L'outil SITools est utilisé pour la mise à disposition de données provenant de missions spatiales pour lesquelles l'Institut d'Astrophysique Spatiale a en charge l'exploitation des données.
Cette mise à disposition peut être publique (cas des données des observations SOHO et STEREO, ainsi que des données publiques de CoRoT) mais aussi à accès restreint (cas des données de CoRoT et Planck).

Pour exemple, l'interface des données publiques de CoRoT est disponible ici.

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

La principale limitation peut venir de la prise en main de l'outil. Outre les pré-requis nécessaires à l'installation de SITools (posséder une machine avec un serveur Apache Tomcat opérationnel et un SGBD), l'administration et la personnalisation de l'interface nécessitent des compétences en développement.
Le CNES estime à environ 1 semaine la mise en place d'une version simple d'un serveur de données.
À noter que l'installation est nettement simplifiée aujourd'hui grâce à l'installateur graphique (non présent dans les anciennes versions).

Environnement du logiciel
Plates-formes

Linux, MacOS, MS Windows

Logiciels connexes
  • SITools est basé sur une architecture J2EE et ses composants fonctionnent grâce au conteneur d'applications Apache Tomcat Fiche Plume : Apache/Tomcat/Struts
  • Java (JVM et JDK)
  • PostgreSQL Fiche Plume ou MySQL Fiche Plume
Autres logiciels aux fonctionnalités équivalentes
Environnement de développement
Type de structure associée au développement

Le développement du logiciel est une action R&T du CNES. Actuellement, la maîtrise d'œuvre est confiée à Cap Gemini.

Eléments de pérennité

Le chef de projet de SITools au CNES négocie actuellement le passage du logiciel en licence GPL.

Cependant, la version actuelle de cet outil arrive sur sa dernière année de maintenance (2011). Le CNES travaille actuellement sur une nouvelle génération de l'outil (baptisée SITools2) dont la licence s'oriente sur GPLv3 pour la partie IHM et CeCILL pour la partie serveur.
Cette nouvelle génération est basée sur une nouvelle architecture et utilisera des technologies innovantes orientées web services RESTful (en remplacement des services SOAP actuels).

Références d'utilisateurs institutionnels

Institut d'Astrophysique Spatial
Laboratoire d'Astrophysique de Marseille
Centre d'Etude Spatiale des rayonnements
CNES

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

Le support est assuré par le chef de projet au CNES par messagerie électronique : sitools [at] gmail [dot] com.
Il existe aussi un forum en ligne pour poser des questions techniques, proposer une évolution ou alerter d'un bogue rencontré lors de l'installation ou de l'utilisation du logiciel.

Documentation utilisateur

La documentation utilisateur est accessible en ligne :
http://vds.cnes.fr/sitools/documents/Online_Doc_Si...
Elle inclut un ensemble de tutoriaux et de présentations sur SITools.

Divers (astuces, actualités, sécurité)

Le logiciel peut être utilisé pour d'autres types de jeux de données que ceux utilisés en astronomie. Ainsi, la base de données de démonstration fournit avec le logiciel est un jeu de fruits/légumes/fleurs.