De la solubilité de Postgresql dans les SIG



Documents pareils
Les applications webmapping en opensource. 1 Christophe Adriaensen

PostgreSQL. Formations. SQL avancé Calendrier... 18

PostgreSQL. Formations. Catalogue Calendrier... 8

LES LOGICIELS OPEN SOURCE DANS LA GEOMATIQUE

Laurent Jégou novembre 2014 M2 Sigma U351_33 WebMapping. Séance 2 Les systèmes de gestion de bases de données spatiales : L'exemple de PostGIS

Laurent Jégou 07/12/2012 M2 Sigma

Les Géodatabases en 9.2

Mettre en place un Géoportail avec ArcGIS Server Armel OUEDRAOGO Pierre TEYSSENDIER

Réplication E-maj Foreign Data Wrapper PostGIS PostgreSQL-f

ArcGIS for INSPIRE SIG RAIL 2011

PostgreSQL. Formations. Calendrier... 14

Utilisation d'outils de WebMapping OpenSource dans une collectivité territoriale Communauté de Communes de l'agglomération Saint-Loise (CCASL)

PostgreSQL, le cœur d un système critique

Les SIG libres. Eric BREHAULT TOULIBRE le 02/04/2008

DataStudio. Solution d intégration des données et de diffusion de l information

CATALOGUE FORMATION 2014

ArcGIS. for Server. Sénégal. Comprendre notre monde

L expérience citoyenne numérique. Solutions et expertises pour répondre aux enjeux des territoires

Le cloud computing au service des applications cartographiques à haute disponibilité

Principe, applications et limites

Mise en place d'une chaîne de production raster multi-échelles

Gestion collaborative de documents

SIG EIFFAGE N O U V E L L E S O F F R E S I N T E R N E S

ArcGIS, Plateforme d'interopérabilité. Gaëtan LAVENU

ArcGIS 10.1 for Server

Les bases de données relationnelles

La place de la Géomatique Décisionnelle dans le processus de décision

Le SIG provincial. B u r e a u S y s t è m e d I n f o r m a t i o n G é o g r a p h i q u e. DSI Service des Applications Métiers. province-sud.

ArcGIS. for Server. Comprendre notre monde

INDUSTRIALISATION ET RATIONALISATION

Pierre Racine Professionnel de recherche Centre d étude de la forêt Département des sciences du bois et de la forêt, Université Laval, Québec

Présentation du module Base de données spatio-temporelles

FICHE PRODUIT. MapInfo Professional v12.5 Evolution. Comparaison de la v12.5 avec les anciennes versions. Les plus de MapInfo Professional v12.

Les outils actuels permettent-ils d automatiser la production de cartes? De quels outils dispose-t-on?

Introduction: 1. définition d un ETL 2. importance et diversité des données spatiales utilitédes ETL géographiques

MySQL. (Administrateur) (Dernière édition) Programme de formation. France, Belgique, Suisse, Roumanie - Canada

PGDay.fr ans de PostgreSQL chez Cityvox Les dessous d'un succès. Toulouse, le 4 octobre 2008 Guillaume Smet Open Wide

Mise en place d'un serveur d'application SIG au Conseil général de Seine-et-Marne

POTIMART : SIG OPEN SOURCE TRANSPORT UTILISATION, ARCHITECTURE INSTALLATION

Chaîne opératoire de réalisation d une base de données. ANF «Comment concevoir une base de données» (29-30/01/2015)

ArcGIS Mobile 9.3. Cédric Pesty Gael Simon. Conférence SIG 2008 Ateliers Techniques. S'il vous plait! Merci d'éteindre vos appareils portables

Cartographie et SIG interactifs en ligne Séance 1 : Présentation générale du webmapping : principe et techniques

Application de technologies innovantes pour la gestion des ressources en eau

Présentation du projet

SQL Server Administration d'une base de données transactionnelle avec SQL Server Management Studio (édition enrichie de vidéos)

Projet CASI: Master Data Management

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Un SIG collaboratif pour la recherche historique Partie. Partie 1 : Naissance et conception d un système d information géo-historique collaboratif.

GEOTREK, une application opensource pour la gestion et la valorisation des sentiers. Parc national des Ecrins Juin 2014 / Forum TIC de l ATEN

Rémi BOVARD Ingénieur BSc HES en géomatique

M2 SIAW - Exemples de stages réalisés. Gabriella Salzano - Document de travail - 28/1/2015

La replication dans PostgreSQL

Les nouveautés de FME 2014

Communiqué de lancement Paie 100 pour SQL Server

Performances. Gestion des serveurs (2/2) Clustering. Grid Computing

Conférence SIG 2011 Versailles 5-6 Octobre 2011 Atelier Technique ArcGIS for Server en 10.1

Ora2Pg Performances. (C) 2013 Gilles Darold

SQL Server 2014 Administration d'une base de données transactionnelle avec SQL Server Management Studio

Retour d'expérience migration Oracle vers PostgreSQL. Vincent Moreau Adeo Services

Intégration ESRI - SAP Geo-Enablement de l ERP SAP Exemple : GEO.e. Christophe Lapierre Enrique Yaptenco Professional Services - ESRI Suisse

Intégration du référentiel hydrographique Bd Carthage dans le Système d Information de l agence de l eau Adour Garonne

ArcGIS 10 Christophe Tourret Gaëtan Lavenu

PostGIS, un module de PostgreSQL pour les données spatiales

Nouveautés ArcGIS 10.2

ArcGIS Desktop Les nouveautés de la version 10. Gaëtan LAVENU

Fournir un accès rapide à nos données : agréger au préalable nos données permet de faire nos requêtes beaucoup plus rapidement

Introduction à ORACLE WAREHOUSE BUILDER Cédric du Mouza

Qu est-ce que ArcGIS?

Mercredi 15 Janvier 2014

Glossaire. base de données géographiques Voir géodatabase (GDB).

Procédure d'installation de PostgreSQL pour Windows

Le "tout fichier" Le besoin de centraliser les traitements des fichiers. Maitriser les bases de données. Historique

GKR. Geological Knowledge Representation Base de connaissances métallogéniques

Outil de saisie et de gestion de données d observation naturaliste

Initiation aux bases de données (SGBD) Walter RUDAMETKIN

Inscriptions : Renseignements : 33 (0) education.france@sap.com

La collecte et la gestion des données dans le cadre de la prospection d énergie solaire

Sofrecom, filiale du Groupe France Telecom Orange - Intégrateur de solution SIG. Expériences et solutions SIG

SOMMAIRE Thématique : Systèmes d'information et d'exploitation

Introduction to PostGIS

Intégration de Données et Systèmes Décisionnels. Au cœur de la performance

Business & High Technology

Livret de Stages 2014 / 2015

ArcGIS Server / 9.4. Gaëtan LAVENU Jean-Marie DULISCOUET

Analyse de performance, monitoring

PRODIGE V3. Manuel utilisateurs. Consultation des métadonnées

SIG Propreté. Mehdi Huguet

Lotus Notes et Domino 8.5 Administration de serveurs Domino

Université de Toulouse-Le Mirail janvier 2012 Département de Géographie-Aménagement-Environnement Laurent Jégou

Formation Symantec Veritas Cluster Server 6.x pour Unix

Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS. IDS2014, Nailloux 26-28/05/2014

Détection d'intrusions en environnement haute performance

9 rue Lucien Roullier Goussainville / INGÉNIEUR SYSTÈME LINUX

Expert technique J2EE

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage

SQL Server 2012 Implémentation d'une solution de Business Intelligence (Sql Server, Analysis Services...)

Table des matières Chapitre 1 Virtualisation, enjeux et concepts Chapitre 2 Ligne de produit XEN

Bases de données Cours 1 : Généralités sur les bases de données

Développer une stratégie SIG Entreprise efficace avec ESRI et ArcGIS

Transcription:

De la solubilité de Postgresql dans les SIG VincentPicavetMakinaCorpus Pgday2008

Vincent Picavet / Makina Corpus vincent.picavet@makina-corpus.com Ingénieur Systèmes d'information Géographique SSLL Française ~ 50 personnes Siège à Paris 5 agences en France Bruxelles, Tunis, Madrid. SIG Outils collaboratifs Gestion de contenu Système & réseau VincentPicavetMakinaCorpus Pgday2008

Contexte 2 ans de développement SIG chez Makina Corpus Mission actuelle chez le client X, au service recherche & développement VincentPicavetMakinaCorpus Pgday2008

PostgreSQL dans les architectures de systèmes d'information géographique orientés web VincentPicavetMakinaCorpus Pgday2008

Applications webmapping But Présenter de l'information géographique sur le web Qui? Collectivités, entreprises Exemples Géoportail, Consultation du cadastre, PLU Localisation de point d'intérêts VincentPicavetMakinaCorpus Pgday2008

Applications webmapping VincentPicavetMakinaCorpus Pgday2008

Architecture SIG web VincentPicavetMakinaCorpus Pgday2008

Bdd et webmapping Types de données particuliers (géométries) Gros volumes Accès conccurentiels forts, rapidité cruciale Principalement de la lecture, avec serveurs cartos Gestion des droits au niveau applicatif Lecture / écriture avec des clients SIG desktop Peu de mise à jour en mode web VincentPicavetMakinaCorpus Pgday2008

Composants BdD et environnement Postgresql (8.3 sauf contrainte) PostGIS (1.3.3) Serveurs Linux (Debian) sauf exception Types de données géométriques Fonctions de traitement Indexes spatiaux Recompilation de PostgreSQL et Postgis, procédures et outils de déploiement maison Clients Stations de développement sous Linux Outils clients sous Linux ou Windows VincentPicavetMakinaCorpus Pgday2008

Intégration Phase importante en SIG Données hétéroclites, en type ou formats SIG : Mapinfo, SHP, Oracle Spatial... Néogéographie : GeoJson, KML, GeoRSS... Rasters pas en base Souvent fait une fois pour toute (ou à chaque relivraison) Outils Scripts maison Shp2pgsql Ogr2ogr (GDAL/OGR) De plus en plus des ETL : FME, Talend (+SDI) VincentPicavetMakinaCorpus Pgday2008

ETL FME&Talend+SDI VincentPicavetMakinaCorpus Pgday2008

Outils clients SIG web Web Serveurs cartographiques : geoserver, mapserver Serveurs de «features» : FeatureServer Frameworks de développement (geodjango...) Applications de webmapping : Cartoweb, Openlayers (pas d'accès direct). VincentPicavetMakinaCorpus Pgday2008

Outils clients SIG desktop Clients desktop : SIG «traditionnel» QGIS, Udig, GvSIG VincentPicavetMakinaCorpus Pgday2008

Outils clients SIG desktop VincentPicavetMakinaCorpus Pgday2008

Outils clients SIG desktop VincentPicavetMakinaCorpus Pgday2008

Outils clients développement PgAdmin III Scripts maison : python + psycopg2 Django + geodjango VincentPicavetMakinaCorpus Pgday2008

Pratiques courantes Casser le modèle relationnel performances Les requêtes sont fixées par avance Importance des prétraitements Indexation géographique CLUSTER VincentPicavetMakinaCorpus Pgday2008

Évolution De plus en plus d'édition web de données Attention à la performance Volumes de plus en plus importants Problèmes de synchronisation des bases Processus d'échanges de données entre les bases Gestion des métadonnées Support de PostGIS dans les applications clientes classiques (ESRI, Mapinfo...) Remplacement des BdD propriétaires VincentPicavetMakinaCorpus Pgday2008

Un projet SIG particulier sous PG graphes de réseaux VincentPicavetMakinaCorpus Pgday2008

Contexte Client : grand besoin info géographique Graphes de réseaux routiers Données métier associées à ces graphes Données initiales 2004 Évolution en parallèle pendant 4 ans Désynchronisation des données VincentPicavetMakinaCorpus Pgday2008

Contexte VincentPicavetMakinaCorpus Pgday2008

Problèmatique Resynchroniser les données «recoller» les graphes Réassocier et/ou reconstruire les données métier Construire un processus de mise à jour des données VincentPicavetMakinaCorpus Pgday2008

VincentPicavetMakinaCorpus Pgday2008

Traitements Méthodologie des traitements effectués (1) (2) (3) (4) (5) (6) (7) (8) Chargement données de référence Chargement données métier Création du modèle d'entrée d'appariement Appariement des graphes (noeuds, voies, tronçons) Correspondances des données métier Recréation de données métier Création de modèle de sortie Export du modèle de sortie VincentPicavetMakinaCorpus Pgday2008

Méthodes Sémantiques Basées sur la typonymie Traitement de texte Topologiques Basées sur la structure des graphes Calcul matriciel ou parcours de graphes Géométriques Basées sur les objets géométriques Le moins possible Traitements géométriques (Postgis) VincentPicavetMakinaCorpus Pgday2008

Typologie d'utilisation «ELT» : Extract, Load, Transform Traitements longs et lourds Chaine de production globale ~ 1 mois Traitements dans Postgres + Postgis + quelques outils externes Non utilisés : Gestion de droits Accès conccurentiels Réplication VincentPicavetMakinaCorpus Pgday2008

Données : modèle TODO : Screenshot du modèle (si validation) VincentPicavetMakinaCorpus Pgday2008

Données : modélisation des graphes VincentPicavetMakinaCorpus Pgday2008

VincentPicavetMakinaCorpus Pgday2008

VincentPicavetMakinaCorpus Pgday2008

Données : volumétrie ~ 50 Tables + tables temporaires + tables de controle et stats Entre quelques Mo et quelques Go Entre 1500 et > 20M enregistrements ~ 30 champs de géométrie Volume total : ~ 100Go, 150Go en fin de traitement En entrée ~ 15 tables En sortie ~ 10 tables VincentPicavetMakinaCorpus Pgday2008

Environnement Serveurs windows Clients windows Deux serveurs de test et prod Dimensionnement large Avantage libre : serveurs de dev en local Développement PgAdmin Éditeurs classiques SVN Python + psycopg2 VincentPicavetMakinaCorpus Pgday2008

Outils : intégration et exports Talend SDI Données métier Sybase vers Postgres Postgres vers Sybase Shp2pgsql, pgsql2shp & ogr2ogr Intégration des données géographiques de référence Exports de la géographie en fin de process VincentPicavetMakinaCorpus Pgday2008

Outils : modélisation et contrôle Modélisation : PowerAMC Lié à Sybase En amont : conception En aval : rétroingénierie pour controle Visualisation Udig GvSIG Mapinfo (exports SHP) VincentPicavetMakinaCorpus Pgday2008

Difficultés rencontrées : aperçu Organisation du code Extension en C sous windows Paramétrage serveur Monitoring et statistique d'exécution Intégration d'outils externes peu adaptés Environnement Windows Optimisation des requêtes VincentPicavetMakinaCorpus Pgday2008

Difficultés rencontrées : code Organisation du code Mettre le plus de code coté serveur : plpgsql Utilisation de fonctions, regroupées par modules Requêtes EXECUTE Utilisation ELT transactions longues mécanisme de cache inefficace problèmes avec le cache lors de changement de la structure de la base (résolus en 8.3?) Problème d'accès au log des requêtes unitaires Compromis modularité / généricité / performances VincentPicavetMakinaCorpus Pgday2008

Difficultés rencontrées : C Extensions en C sous windows Environnement de développement complexe à mettre en place (DevC++, bibliothèques...) Problèmes avec certaines bibliothèques Manque de documentation Les modules C déstabilisent le serveur VincentPicavetMakinaCorpus Pgday2008

Difficultés rencontrées : tuning Paramétrages serveur Manque de connaissance admin système Fortement lié au matériel (baie SAN...) Quels paramètres pour quels usages? Paramètres nécessaires dépendant des requêtes effectuées Nécessité de benchmarker, long VincentPicavetMakinaCorpus Pgday2008

Difficultés rencontrées : stats Monitoring serveur et statistiques d'exécution Monitoring serveur : admin sys Statistiques d'exécution des traitements Requêtes longues Pgfouine : pas forcément adapté au traitements type ELT Problème des requêtes unitaires EXECUTE Instrumentation dans le code plpgsql et python Utilisation d'astuces du type SELECT nextval('compteur'), * FROM VincentPicavetMakinaCorpus Pgday2008

Difficultés rencontrées : tools Intégration d'outils externes peu adaptés Programmes de traitements en C++ windows (avec interface) Tournent en partie coté client Mauvaise intégration dans la chaine de traitement transferts réseau conversion de formats de données Recoder les applications en modules pg VincentPicavetMakinaCorpus Pgday2008

Difficultés rencontrées : windows Environnement windows Manque de connaissance admin sys Passage à l'échelle sur serveur gonflé problèmatique Utilisation de > 3Go de mémoire Stabilité du serveur Monter en compétence Passer sous Unix (Linux, *BSD) Les modules C empêchent la migration VincentPicavetMakinaCorpus Pgday2008

Difficultés rencontrées : optimisation Optimisation des requêtes Validation des algos et requêtes sur échantillons Tests grandeur réelle difficiles car longs Obligation de gérer manuellement les index et la structure Problèmes des updates massifs (MVCC) Vacuum et autovacuum Loi de Pareto (80-20) VincentPicavetMakinaCorpus Pgday2008

Directions futures Développement Optimisation Rationalisation du code Passage sous environnement UNIX Intégration des outils externes sous forme de modules Généralisation de l'utilisation de Postgresql VincentPicavetMakinaCorpus Pgday2008

Conclusion OUI! PostgreSQL est bien soluble dans les SIG...... ou l'inverse! Expériences positives Montée en compétence des équipes Volonté de généraliser l'utilisation de PG Marché très vaste Manque de support des applications (SIG) VincentPicavetMakinaCorpus Pgday2008

Questions? Vincent Picavet vincent.picavet@makina-corpus.com Makina Corpus www.makina-corpus.com contact@makina-corpus.com Tel : 01 44 82 00 80 VincentPicavetMakinaCorpus Pgday2008