Cadre et développement logiciel en géomatique

Slides:



Advertisements
Présentations similaires
SANDRE au Laboratoire de Touraine
Advertisements

Access Frédéric Gava (MCF)
1 IXERP consulting. L archivage consiste à extraire de la base de données opérationnelle les informations qu' il n est plus nécessaire de conserver «
JEE Approfondi Frameworks : Maverick (MVC) JiBX (Persistance XML)
19 septembre 2006 Tendances Logicielles IBM Rational Data Architect Un outil complet de modélisation et de conception pour SGBD Isabelle Claverie-Berge.
Introduction Pour concrétiser l’enseignement assisté par ordinateur
JXDVDTEK – Une DVDthèque en Java et XML
Les technologies XML Cours 3 : Les APIS XML Janvier Version 1.0 -
version Beta Marie Calberg Ninni Louhelainen SLFN7
Conception d’une application de gestion de fiches études
بسم الله الرحمن الرحيم. Institut Supérieure des Etudes Technologiques de Kébili.
Systèmes d’exploitation
La sauvegarde des fichiers Dominique Dupont Suzanne Isacchi Maurice Chapelle Georges Planté-Longchamp.
LOG 02 Bases de Données Avancées Rappels sur JSP / Servlet
Page 1 Introduction à ATEasy 3.0 Page 2 Quest ce quATEasy 3.0? n Ensemble de développement très simple demploi n Conçu pour développer des bancs de test.
Gestion du cycle de vie des applications Lotus Notes Ady Makombo Directeur Teamstudio France
1 Utilisez cette présentation PowerPoint dans le cadre dun apprentissage autonome ou en guise dintro- duction à la thématique dun exposé. Introduction.
XML-Family Web Services Description Language W.S.D.L.
Autodesk® Revit® Building 9
Middleware : XML-DBMS Permet de faire office d’interface entre des données XML et des bases de données relationnelles (insertion et récupération de données)
PostGIS – Création d'une base spatiale
Sommaire Objectif de Peakup Principes de fonctionnement
Quelques bases sur les diaporamas Avec lapplication PowerPoint ISSUE DE LA SUITE Microsoft OFFICE 2003 Premiers pas...
Principes de persistance dans les applications orienté objet
Chap 4 Les bases de données et le modèle relationnel
COPIL SINP 28/03/2014 PRÉSENTATION DES APPLICATIONS OGAM (WEB ET NOMADE)
28 novembre 2012 Grégory Petit
Bilan des méthodes de spécification géométrique des produits
Des outils pour le développement logiciel
FICHIERS : Définition : Algorithme général:
PostGIS – Chargement de données
Console MMC de Windows 2000 Présenté par Suzanne Savoie Cours 4.
Retour dexpérience Supportech INSA.NET Daniel Boteanu – Michaël Piffret.
1© 2006 Autodesk FDO : couche logicielle modulaire d'accès aux données Gwenaël Bachelot, Autodesk Bruno Scott, Geomap.
Les ressources naturelles du Canada – Pour aujourd’hui et pour demain Logiciels libres en géomatique 8 Novembre 2007.
JDBC L'API JDBC est utilisée pour utilisée pour intéragir avec une base de données.
ENGIMA.
Définitions Gestion Exemple
Labo 4 : Les structures et les entrées et sorties
Lancement de Microsoft Word
Étude comparative MapServer versus ArcGIS Server
Enterprise Java Beans 3.0 Cours INF Bases de Données Hiver 2005, groupe 10 Stefan MARTINESCU.
Qu'est-ce qu'un ERP  Outils automatisé pour modéliser les comportements d'une entreprise afin de les rendre plus automatiques.
Introduction à Visual Studio C++ (VC++)
Masters IIGLI et ILGII – Intranet internet extranet – – Claude Montacié 1 Cours n° 10 Accès distant aux bases de données.
Introduction au Génie Logiciel
ETL - Pentaho Data Integration
Génération de code JAVA
Soutenance projet Darties Architecture technique ETL - Restitution Groupe 2 : Diapositive 1 / X.
Visualisation d’un entrepôt de données Pré soutenance technique
Cours MIAGE « Architectures Orientées Services »Henry Boccon-GibodCours MIAGE « Architectures Orientées Services »Henry Boccon-Gibod 1 Architectures Orientées.
L T I Laboratoire de Téléinformatique 2 Projet de semestre Parseur XML basé sur la DTD : Buts –Utiliser la grammaire définissant un type de fichiers XML.
1 Complément JAVA 1 - Eclipse. 2 Plan Notion d'environnement de développement Interface d'Eclipse Utiliser Eclipse Éditeur de code Fonctionnalité supplémentaire.
Introduction à SVG Scalable Vector Graphic. Informations ● Plus d'informations ici (draft, tutoriaux, outils... ): –
Outil de visualisation et d’export de données de format TRIDENT Fabien Ancelin, 17 Décembre 2008 Projet réalisé dans le cadre du cours SCG_67210 Encadré.
1 Cpt JAVA : Eclipse (bis) Debogage. 2 Code à tester public class siecle { int t; public siecle() { super(); t=1; } static public boolean vrai() { return(false);
Visualisation des flots optiques en 3D
Scénario Les scénarios permettent de modifier la position, taille … des calques au cours du temps. Son fonctionnement est très proche de celui de Macromedia.
Dreamweaver le retour Avec Les Formulaires Les Calques
De Arnault Chazareix :
Echanges de données géographiques Sandre Geography Markup Language (GML) GIGE 2014 – Dimitri MEUNIER.
Projet de session Par Eve Grenier Dans le cadre du cours SCG Réalisation d’applications en SIG Jeudi le 20 avril 2006.
Visual Information Solutions IDL 7.0 Pour une utilisation optimale d’IDL.
PROJET DE SESSION PRÉSENTÉ PAR : Rosemarie McHugh DANS LE CADRE DU COURS : SCG Réalisation d’applications en SIG 16 avril 2007.
Chapitre 12 Surveillance des ressources et des performances Module S41.
SITN : système d’information du territoire neuchâtelois Use case FME : Feature Manipulation Engine ETL (Extract Transform Load) spatial Marc Riedo Système.
PROJET DE SESSION DANS LE CADRE DU COURS: SCG Réalisation d’applications en SIG PRÉSENTÉ PAR: Marie-Andrée Levesque 18 AVRIL 2006.
1 Master Data Management au SANDRE. ADD 27/11/ Une philosophie de diffusion des référentiels 3 grands blocs dans les systèmes d’information environnementaux:
Microsoft Access est un outil de gestion de base de données. Ce est un grand avantage pour les petites, moyennes.
Implémentation d’une interface pour l’exécution d’ETL à distance Projet de développement logiciel dans le cadre du cours SCG : « Réalisation d’Applications.
Transcription de la présentation:

Cadre et développement logiciel en géomatique Fonctionnalités d’entrées/sorties de données géospatiales dans l’outil ETL GeoKettle Projet présenté par Jean Mathieu aux professeurs Thierry Badard et Frédéric Hubert

ETL ETL (Extract, Transform and Load) Extrait les données de différentes sources Transforme ces donneés pour en corriger les erreurs, les conformer à des normes ou restructurer leur contenu pour respecter un schéma voulu Charge les données dans l’entrepôt de données Gère à la fois l’insertion et la mise à jour de données

GeoKettle Intégration de données issues de différentes sources Version spatiale de Pentaho data integration (Kettle) Objects géométriques basés sur JTS topology suite Librairie GeoTools (fonctionnalités d’entrées/sorties) Open source

Fonctionnalités Geokettle Bases de données: PostGIS (Lecture/Écriture) Oracle Spatial (Lecture/Écriture) MySQL Spatial (Lecture/Écriture) Fichiers: ShapeFile (ESRI) (Lecture)

Mandat Géography Markup Language (GML) (Lecture) MapInfo (Lecture) WFS (Lecture) ShapeFile (Écriture) Tâches optionnelles: TIGER (Lecture) ArcSDE (Lecture)

Choix technologiques GeoTools (version 2.5.1): Shapefile - an ESRI shapefile (R/W) GML - Geography Markup Language (R) WFS - Features from an OGC Web Feature Server (RW) ArcSDE - ESRI's middleware for spatial databases (R) Tiger - Topologically Integrated Geographic Encoding and Referencing developed at the US Census Bureau (R) MapInfo - MIF (Mapinfo Interchange Format) (RW) (work in progress)

Choix technologiques GeoKettle (version 3.1.0) Language : Java JTS Eclipse : open source 

Méthodologie Analyser le fonctionnement de GeoKettle Cibler les classes et endroits ou auront lieu les changements. Explorer les options offertes par Geotools

Fonctionnement de GeoKettle Classes ciblées GISFileInputDialog : Boite de dialogue GeotoolsReader : Fonctions de lecture GISFileInput : processus principal

Fonctionnement de GeoKettle Classe GISFileInputDialog SWT Récupère le nom de fichier, son extension et autres paramètres

Fonctionnement de GeoKettle Classe GeoToolsReader Fonctions d’ouverture/fermeture des fichiers Récupération des lignes et champs

Fonctionnement de GeoKettle Classe GISFileInput - Processus principal (« RUN ») - Appel des fonctions du lecteur - Instanciation de l’entrepôt de données

MapInfo (Lecture) Abandonné Géotools ne supporte pas ce format public class MIFDataStore extends AbstractDataStore Module: modules/unsupported/mif   (gt-mif.jar) (Maven report) (SVN head)

Solutions Librairie OGR(GDAL C++) et java binding? (should be considered unsupported, no bindings maintainer) Utiliser les librairies d’applications acceptant ce format comme OpenJump et se servir de ces logiciels pour tester son utilisation.

GML (Lecture) À faire Ajouter dans la classe GeotoolsReader une fonction détectant le format du fichier d’entrée pour ensuite choisir le bon DataStore

GML Encodage de l’URL Problèmes nombreux reliés au schéma Tentatives avec plusieurs fichiers différents Très(trop) stricte quand à la forme du fichier VS le nombre de formes possibles de ce format Problèmes critiques  SAXException durant le «parsing» Processus jamais arrêté…

Solutions OpenJump et UDIG supportent ce format…mais semblent également être capricieux après quelques essais. Librairie GeoRSS comporte des fonctions pouvant lire ce format. Revoir les besoins en ce qui concerne le format GML

ShapeFile (Écriture) À faire: Cheminement inverse Création des mêmes classes que pour le mode lecture. Reconvertir les données du format de GeoKettle vers celui de GeoTools Construire le shéma de données Introduire les données dans le «Datastore» Écrire les données

ShapeFile (Écriture) Conversion du type de données - Détecter la classe d’objet de l’entrepôt - Trouver la classe Geotools correspondante - Traduire la classe

Difficultés Chemin inverse partiel seulement Méthode en lecture: 1 - Datastore 2 - Feature Source (attributs) 3 - Feature Collection (Ensemble des données) 4 - Features (Données individuelles) 5 - Insertion dans l’entrepôt

Difficultés Impossible d’instancier certains éléments sans le shéma Solution: Javadoc Données dans l’entrepôt Création des types de données Création de la « Factory » Création du DataStore Création du shéma de données Création du « Writer » Écriture dans le DataStore

Difficultés Renvoit une exception si le fichier n’existe pas Solution: Tester la création d’un nouveau fichier et l’ajouter à la liste d’objets de fichiers.

Géométries Types de géométries très spécifiques dans un ShapeFile Null Shape Point PolyLine Polygon MultiPoint MultiPatch

Géométries GeoKettle comporte le type «Geometry» Peut comporter plusieurs types de géométrie Donc, Le type géométrique du premier objet est celui choisi, si les données ne sont pas toutes du même type, une erreur est lancée.

Tests Tests effectués sur tous les format de géométries possible dans un shapefile (Succès) Tests chronomètrés (environs 700-1000 lignes / secondes)

Démonstration

696 secondes plus tard…

Démonstration

À faire Liste de choix de géométries pour l’utilisateur… Demander pour réécrire un fichier existant… Champs dans le visualisateur non adaptés à l’écriture…

À faire Les opérations sur les systèmes de référence sont maintenant disponibles…inclure ces informations au ShapeFile. Chronomètre met beaucoup de temps à s’arreter Optimisation du code

Suggestions Possibilité d’ajouter des éléments à un Shapefile déjà existant Décomposeur de géométries

Bilan général Lecture de GML : non atteint Beaucoup plus problématique que dans les prévisions Problèmes de shéma GeoRss OpenJump et udig Lecture de MapInfo : non atteint Non supporté OpenJump Lecture de WFS : non atteint Manque de temps Écriture de ShapeFile : opérationnel

Apprentissages Faire des prétests durant l’étude de faisabilité Fonctionnement interne d’un outil ETL Mise en commun des apprentissages faits en cours et la réalité. Bâtir un projet sur une application existante

Remerciments Très grand merci à Étienne Dubé Thierry Badard, Frédéric Hubert Merci au debugger qui dépasse maintenant le chien comme meilleur ami de l’homme Merci à la coupe longueil de Denis Lapierre qui a été pour moi une source de motivation

Questions?