Romain CONSEIL Thierry LEVOIR SITools Présentation de l’outil (2/2) 01/06/06 Institut d’Astrophysique Spatiale [email protected] [email protected] Rappel Architecture ■ SITools se base sur : Un SGBD (ou plus) Catalogues de données (ou tables de données) Tables génériques de description Un serveur Apache Un serveur Tomcat Un ensemble de services de base (repository, catalogue, commande, espace utilisateur, …) Une interface web cliente (ou plus) Des SVAs Présentation SITools – IAS, juin 2006 2 Site A Site A Repository Client Application (Web Server) Site C Site B Description of Siteservices A Description of Description services of services Internet browser Dictionnaires des synonymes Site A Connection bus between the various services Client Catalog ... Catalog 1 Catalog 2 Data 1 Site A Site C Added-Value Services 1 Added-Value Services 2 Site A Site C User Space Service 1 Command Processing Site B Catalog off-line Catalog 1 Catalog 2 Data 1 Site B AVS 3 Existant Site N Added-Value Services N Présentation SITools – IAS, juin 2006 3 SGBD ■ Ajout de 8 tables propres à SITools : Classe (non utilisée) Type (non utilisée) Dataset : déclaration des tables comme jeu de données Dataset_properties : déclaration de méta données sur les jeux Properties_dependancies : déclaration des dépendances entre valeurs de métadonnées sur les jeux Properties_options : déclaration des valeurs de métadonnées multi-valuées Attribute : déclaration des champs de chaque jeu de données Attribute_dependancies : déclaration des dépendances entre valeurs de critères sur les attributs Attribute_options : déclaration des valeurs d’attributs multivaluées ■ Description des tables de données existantes Eventuellement réparties sur plusieurs autres BDD Présentation SITools – IAS, juin 2006 4 Table : HIRES Présentation SITools – IAS, juin 2006 5 Table : DataSet Table : HIRES Présentation SITools – IAS, juin 2006 6 Table : Attribut Table : DataSet Table : HIRES Présentation SITools – IAS, juin 2006 7 SGBD ■ Table attribute Cf. ex MOST Présentation SITools – IAS, juin 2006 Colonne dataset_name name label tooltip type class size keyindex criterion Type Varchar Varchar Varchar Varchar Varchar Varchar Int Int Int display Int advanced Int mandatory updatable default_value min_value max_value comment Int Int Varchar Varchar Varchar Varchar Description Data set name Attribute name Displayed name More information to be displayed Attribute Type (see below) Attribute class (see below) size (for display information) Indicates if it is a key Indicates if this attribute is to be used as a criteria for the end user. Indicates if this attribute is to be displayed to the end user. Indicates if this attribute may be displayed if the end user asks for it. Indicates if the attribute is mandatory Indicates if the attribute is updatable 8 SGBD ■ Type de l’attribut Simple boolean, float, geometry, string, int, long, date, timestamp Complexe multi_string multi_int multi_long multi_float multi_date multi_timestamp multi_inter_int multi_inter_long multi_inter_float multi_inter_date multi_inter_timestamp Multiple values string Multiple values integer Multiple values big integer Multiple values decimal Multiple values date Multiple values date time Multiple values of interval integer Multiple values of interval big integer Multiple values of interval decimal Multiple values of interval date Multiple values of interval date time Multi permet de gérer les attributs multivalués SITools crée automatiquement les tables supplémentaires nécessaires Présentation SITools – IAS, juin 2006 9 SGBD ■ Attributs multivalués DataSet Table Présentation SITools – IAS, juin 2006 10 SGBD ■ Attributs multivalués Table : Attribut DataSet Table Présentation SITools – IAS, juin 2006 11 SGBD ■ Attributs multivalués Table : Attribut DataSet Table Présentation SITools – IAS, juin 2006 12 Serveur Apache ■ Apache 2 Placé devant Tomcat afin de n’ouvrir que le port 80 à l’extérieur Utilisation du mod_jk pour communiquer avec Tomcat Réalise l’authentification des utilisateurs (via un fichier de passwords et de groupes) Héberge l’espace utilisateur (WEBDav pour pouvoir associer des méta données aux données) Configuration Httpd.conf pour définir les droits Création d’un fichier d’utilisateurs et de groupes (via htpasswd) mod_jk.conf mod_dav.conf Présentation SITools – IAS, juin 2006 13 Serveur Tomcat ■ Héberge les webapps des services SITools ■ Ne réalise aucune authentification (Apache) ■ Version 5.5 de Tomcat utilisée Présentation SITools – IAS, juin 2006 14 Description des services : le catalogue ■ Interface de connexion aux bases de données Effectue toutesles requêtes SQL. Possibilité de proxy d’accès au SGBD (pas d’ouverture de la BDD à l’extérieur mais ouverture du service catalogue) ■ Possibilité de définir plusieurs BDD pour un catalogue Une requête s’applique sur toutes les BDD déclarée dans SITools postgreSQL, MySQL, (pour Oracle rajouter les drivers JDBC) La BDD n°0 contient les tables descriptives de SITools Accès via JDBC (login/passwd) ■ Possibilité de définir plusieurs catalogues pour une même instance. Présentation SITools – IAS, juin 2006 15 Description des services : le catalogue ■ Exemple MOST : Fichiers à configurer Log4j.properties Multibase.properties 1 fichier par base déclarée Catalogue.properties 2 bases définies : 0 : les tables SITools + une table « most » 1 : une table « most » contenant d’autres données MOST. Présentation SITools – IAS, juin 2006 16 Description des services : le repository ■ Service central de SITools Déclaration des catalogues utilisées dans l’instance Regroupement des jeux de données en graphe Association de SVA avec les jeux SVA de traitement, SVA d’aide à la sélection ( liste déroulantes, thumbnails, etc…) Gestion des synonymes par jeu de données Synonymes Convertisseurs Intervalles et bornage Gestion des utilisateurs et des groupes : 3 groupes : administrateur, utilisateur, simple utilisateur Droits d’accès aux jeux de données et aux services. Présentation SITools – IAS, juin 2006 17 SITOOLS Instance Repository Catalog Service Client Application Catalog 1 Meta Model Super Catalog DataSet Model 1 DataSet Model 2 DataSet Model … Meta-data DataSet 1 Meta-data DataSet 2 Catalog 2 Meta Model Dictionary Associeted Synonyms Associeted Synonyms Catalog Service Catalog Client Interface Associeted Synonyms DataSet Model 1 DataSet Model 2 DataSet Model … Meta-data DataSet 1 Meta-data DataSet 2 Association between Dictionary/catalogs when starting the SiTools instance Identification of catalogs and access rights when user authentication is complete Transparent access to catalogs Présentation SITools – IAS, juin 2006 18 Description des services : le repository ■ Exemple MOST : Fichiers à configurer Log4j.properties Repository.xml Administration.xml UserRights.xml Synonymes : Définition de 2 synonymes – most_ra most_ra2 – Most_dec most_dec2 Présentation SITools – IAS, juin 2006 19 Description des services : le service commande ■ Permet aux utilisateurs de déposer des données sur un espace utilisateur (DAV) ■ Gestion des SVA Batch appliqués lors de la commande sur des jeux spécifiques (ex. transformation de format) ■ Utilisation de l’API Jakarta Slide pour l’interface avec DAV. ■ Configuration : Principalement le fichier eudav.properties Présentation SITools – IAS, juin 2006 20 Description des services : les SVA ■ Programmes indépendants ajout de fonctions supplémentaires Tracé à la carte Zip Transformation Extraction ■ Exemples disponibles et fournis avec SITools : Implémentation d’une interface Java Déclaration au niveau du repository ■ Possibilité d’effectuer le traitement sur une autre machine ■ Pas d’a priori sur la technologie employée (PHP, C, etc…) ■ Traitement batch (synchrone ou asynchrone) ou interactifs ■ Ex : Zip avec export, JDex, appel de webservices distants (NSSDC), … Présentation SITools – IAS, juin 2006 21 Description des services : l’IHM utilisateur ■ Accès Web authentifié aux principales fonctions d’un centre de données Recherche sur les jeux et sur les données Par critère Par thumbnails Par graphe Commande de données, interface de gestion de l’espace utilisateur Application de SVA Fonctions d’administration ■ Configurable AppConfig.properties (où l’application trouve les autres services, etc) Eudav.properties (DAV) ■ Tuning CSS JSP Présentation SITools – IAS, juin 2006 22 Site A Site A Repository Client Application (Web Server) Site C Site B Description of Siteservices A Description of Description services of services Internet browser Dictionnaires des synonymes Site A Connection bus between the various services Client Catalog ... Catalog 1 Catalog 2 Data 1 Site A Site C Added-Value Services 1 Added-Value Services 2 Site A Site C User Space Service 1 Command Processing Site B Catalog off-line Catalog 1 Catalog 2 Data 1 Site B AVS 3 Existant Site N Added-Value Services N Présentation SITools – IAS, juin 2006 23 Démonstration ■ Avec l’instance par défaut (fruits & légumes) ■ Avec l’instance Cassini http://kronos.cesr.fr/cassini Présentation SITools – IAS, juin 2006 24 Exemples ■ Quelques exemples d’instances de SITools Modification du look (CSS, JSP) Présentation SITools – IAS, juin 2006 25 Présentation SITools – IAS, juin 2006 26 Présentation SITools – IAS, juin 2006 27 Présentation SITools – IAS, juin 2006 28 Présentation SITools – IAS, juin 2006 29 Exemples ■ Quelques exemples de services à valeur ajoutée Présentation SITools – IAS, juin 2006 30 Présentation SITools – IAS, juin 2006 31 Présentation SITools – IAS, juin 2006 32 Présentation SITools – IAS, juin 2006 33 Présentation SITools – IAS, juin 2006 34 Présentation SITools – IAS, juin 2006 35 Présentation SITools – IAS, juin 2006 36 Présentation SITools – IAS, juin 2006 37 Présentation SITools – IAS, juin 2006 38 Présentation SITools – IAS, juin 2006 39 Présentation SITools – IAS, juin 2006 40 Évolutions prévues ■ Évolutions orientées V.O. Implémentation des protocoles d’accès SIAP et SSAP pour des requêtes sous forme d’URL ou via webservices Création d’un proxy SIAP - SSAP Recherche par cône (position et rayon autour de la position) Création d’un type de critère spécifique Production des fichiers sous forme de VO TABLE Via un SVA de transformation. Présentation SITools – IAS, juin 2006 41 Évolutions prévues ■ Amélioration de l’interface de gestion des utilisateurs Eviter à l’adminstrateur de devoir modifier des fichiers XML à la main ■ Création d’un installeur rapide pour Linux ou Windows. Installation automatique de la version de démonstration (fruits et légumes) ■ Support aux utilisateurs pour la mise en place des instances et support pour la réalisation de SVAs Présentation SITools – IAS, juin 2006 42 Conclusion ■ SITools est disponible en ligne : http://vds.cnes.fr/sitools/tech.htm Merci de votre attention. Présentation SITools – IAS, juin 2006 43