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



Documents pareils
Les Géodatabases en 9.2

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

Laurent Jégou 07/12/2012 M2 Sigma

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

Introduction to PostGIS

5 - SQL - Bases de données

Démonstrateur libre Application des données Open Street Map à l analyse géographique de réseaux de voirie et Transports Collectifs

Mise en place des serveurs spatiaux au sein des systèmes d information

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

ArcGIS 10.1 for Server

Les applications webmapping en opensource. 1 Christophe Adriaensen

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

Les nouveautés de FME 2014

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

Qu est-ce que ArcGIS?

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

Cartographie mobile implantée au service de police de la ville de Québec

Le langage SQL (première partie) c Olivier Caron

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

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

ArcGIS 10 Christophe Tourret Gaëtan Lavenu

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)

Le Parc naturel régional des SIG. Restructuration d un SIG et diffusion des données dans le cadre de la directive Inspire

GL BE FLYER. Chef de projet de l équipe : SCIONICO Pierre

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

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

ArcGIS for INSPIRE SIG RAIL 2011

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

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

La solution pour gérer vos connaissances techniques et scientifiques

ISC Système d Information Architecture et Administration d un SGBD Compléments SQL

La problématique de la Préservation des Bases de Données. Olivier ROUCHON CINES Groupe PIN Jeudi 7 Octobre

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

Le langage SQL Rappels

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

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

ArcGIS. for Server. Comprendre notre monde

Bases de données Outils de gestion

Développer des Applications Internet Riches (RIA) avec les API d ArcGIS Server. Sébastien Boutard Thomas David

Bases de Données. Le cas des BD relationnelles ouverture sur les BD relationnelles spatiales Séance 2 : Mise en oeuvre

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

Module d échange de données INTERLIS v1.0 GeoConcept Manuel d'utilisation

Thomas Loubrieu (Ifremer) Small to Big Data Novembre 2013, Ifremer, Brest

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

Cartographie libre du monde OpenStreetMap

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

1. Qu'est-ce que SQL? La maintenance des bases de données Les manipulations des bases de données... 5

SITI Agri La nouvelle génération du Système Intégré de Gestion et de Contrôle pour l administration des subventions

Cours Base de données relationnelles. M. Boughanem, IUP STRI

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

Business Intelligence avec SQL Server 2012

Mercredi 15 Janvier 2014

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

Le Langage SQL version Oracle

Gestion des documents associés

1 Introduction et installation

gvsig: nouveautés version 2.1 et plus

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

Nicolas ANGENIEUX GISMARTWARE

Bases de Données. Plan

Sextant V4.0. Le portail de diffusion de l information géographique de l Ifremer. Sextant Présentation générale

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

8 - Import-Export de données

Développement de base de données Microsoft SQL Server Durée : 5 jours Référence : DPSQL12. Contenu

Cours iguess. inotes v10.1

ORACLE 10G DISTRIBUTION ET REPLICATION. Distribution de données avec Oracle. G. Mopolo-Moké prof. Associé UNSA 2009/ 2010

Bases de données élémentaires Maude Manouvrier

Nouveautés Ignition v7.7

Gestion collaborative de documents

THOT - Extraction de données et de schémas d un SGBD

1 La visualisation des logs au CNES

GESTION D UNE BASE BIBLIOGRAPHIQUE

SQL. Oracle. pour. 4 e édition. Christian Soutou Avec la participation d Olivier Teste

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.

Création et Gestion des tables

Constat ERP 20% ECM 80% ERP (Enterprise Resource Planning) = PGI (Progiciel de Gestion Intégré)

Table des matières PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS. Introduction

2 Serveurs OLAP et introduction au Data Mining

LES LOGICIELS OPEN SOURCE DANS LA GEOMATIQUE

Chapitre 1 Introduction

Historique - Topomat Technologies SA

Présentation du PL/SQL

STATISTICA Version 12 : Instructions d'installation

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

Les bases de données relationnelles

Bases de données et sites WEB

SIG Propreté. Mehdi Huguet

GEOCONCEPT. Les données font leur révolution! Production et rendu cartographiques : du cloud computing au SaaS

PTV MAP&GUIDE INTRANET QUELLES SONT LES NOUVEAUTÉS?

La directive INSPIRE en Wallonie: le géoportail et l infrastructure de diffusion des géodonnées en Région wallonne (InfraSIG(

Nécessité de concevoir un outil de recherche PDF Présentation des fonctionnalités d'indexation et de recherche... 3

LES NOUVEAUTES DE COST AND PROFITABILITY MANAGEMENT 8.1

//////////////////////////////////////////////////////////////////// Administration bases de données

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

Bases de Données relationnelles et leurs systèmes de Gestion

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

Hyper-V et SC Virtual Machine Manager Technologie de virtualisation sous Windows Server 2008 R2 [2ième édition]

CESI Bases de données

Transcription:

PostGIS, un module de PostgreSQL pour les données spatiales Olivier Courtin Vincent Picavet Licence GNU FDL PGDay.eu 2009 OSLANDIA SARL / 5. novembre 2009 / www.oslandia.com / infos@oslandia.com

Qui sommes nous? Olivier Courtin (ex-camptocamp) Vincent Picavet (ex-makina) Convaincus par les modèles Open Source Commiter et contributeurs PostGIS

Oslandia, une SSLL spatiale Services Formation Support Conseil Développement Positionnement: SIG Côté serveur Bases de données spatiales Traitement et analyse complexe routing, géocodage... Web Services OGC et INSPIRE

Plan de la présentation Contexte Les SIG Cas concrets PostGIS Le projet et ses acteurs Types spatiaux Indexes spatiaux Fonctions spatiales Évolution PostGIS 1.4 PostGIS 1.5 PostGIS 2.0 Questions

Contexte: SIG? 80% de l'information est spatiale Système d'information Géographique Capturer Stocker Échanger Analyser Représenter Initialement : Collectivités territoriales Aujourd'hui : Public & Privé

Contexte : Architecture SIG Architecture distribuée Clients web bureautique Échanges WS standardisés

Contexte : un SIG territorial, les vals de saintonges Pays des Vals de Saintonges : syndicat mixte 53000hab., 117 communes Données : Économiques Touristiques Aménagement Environnement Équipement Services Sport et culture Utilisation : Stockage Analyse Production de cartes Catalogage Collecte Mise à jour Diffusion

Contexte : un SIG territorial, les vals de saintonges Consultation et diffusion Application cadastre Consultation avec outils dédiés

Contexte : Problématique de covoiturage BisonVert.net Logiciel Libre de covoiturage Objectif : Associer les utilisateurs qui font le même trajet Existant Association avec le libellé des étapes Paris Lyon Marseille Nice Marseille Nice Limité!

Contexte : covoiturage spatial Solution : Utiliser les trajets réels 1/ Calcul du trajet (routing) 2/ Comparaison des trajets (analyse spatiale)

Contexte : Principaux enjeux d'un SGBD spatial Géométrie Attributs un enregistrement = «feature» Requêtes SQL Filtres sur partie attributaire Filtres sur partie spatiale Tenir la charge Gros volumes de données Traitements longs Performances acceptables Respect des standards existants (OGC, ISO)

Contexte : Standards Internationaux Les spécifications: OGC SFS (Simple Feature for SQL) ISO SQL/MM part 3 Ce qui est spécifié: Types de géométries supportés Prototypes des fonctions spatiales Table et traitements additionnels pour intégrité référentielle

PostGIS : Principe et architecture Plugin de PostgreSQL Écrit principalement en C Fait appel a des librairies tierces : Implémente OGC SFS 1.1 (et une partie de ISO SQL/MM) Nombreuses fonctions additionnelles

PostGIS : Rappel historique 2001 Première version alpha 2003 Version 0.8 - Utilisation en production 2005 Version 1.0 Réécriture du coeur et LWGEOM Compatible OGC SFS 1.1 2006 Version 1.2 Cap sur ISO SQL/MM (Curves, préfixes ST_...) 2009 Sortie de la 1.4 Création d'un PSC et entrée OSGeo

PostGIS : Communauté Institutionnels IGN : Institut Géographique National IRSN : Institut de Radioprotection et de Sûreté Nucléaire JRC : Joint Research Center Union Européenne... Entreprises françaises Mediapost France Telecom... Communauté Mondiale Plusieurs milliers d'utilisateurs Mailing-list postgis-users très active

PostGIS : Commiters PostGIS LisaSoft OpenGeo Oslandia CadCorp Paragon Corporation Refractions Research Sandro Santilli Sirius

PostGIS : Autres SGBD spatiaux Oracle Spatial (et Locator) ESRI ArcSDE IBM DB2 Microsoft SQLServer 2008 SpatiaLite

Géométries : Représentation et stockage Geometry (ou HEWKB) Stockage natif en base Binaire avec encodage hexa WKT (Well Known Text) Représentation textuelle Dimensions 2D, 3D, ou 4D Identifiant d'un système de projection (SRID)

Géométries: Point POINT (10 10)

Géométries: LineString LINESTRING ( 0 5, 5 1, 9 4, 2 14, 14 13, 4 4 )

Géométries: Polygon POLYGON ( (9 13,13 9,13 3,4 2,1 4,1 12, 9 13), (5 11,5 6,1 9,5 11), (10 7, 10 4, 6 4, 8 8, 10 7) ) 1) Le premier ring (obligatoire) correspond au ring externe 2) Les coordonnées des rings sont fermantes

Géométries: Polygon et validité SFS Types invalides (au sens OGC SFS) Schema extrait du site de JTS (vividsolutions.com)

Géométries: Les types multiples et aggrégats MULTIPOINT MULTILINESTRING MULTIPOLYGON GEOMETRYCOLLECTION 1) On ne peut pas mixer différents systèmes de projection 2) Idem pour les dimensions

Géométries: Les courbes Les types dits «curves» : CIRCULARSTRING COMPOUNDCURVE MULTISURFACE

Géométries: Polyhedral Surface (PostGIS 2.0)

PostGIS en base : Les tables additionnelles geometry_columns : catalogue des colonnes spatiales spatial_ref_sys: catalogue des systèmes de projection Astuce : placer ces tables dans un schéma à part

Index spatiaux: Principe et création Améliorer performances sur filtrage Géométrie Approxime les géométries: Bbox Bbox Création d'un index spatial: CREATE INDEX index_name ON table_name USING GIST(geom_column_name);

Index spatiaux: R-Tree Regroupement des Bbox dans des régions de l'index

Index spatiaux SELECT c1.nom FROM communes c1, communes c2 WHERE c2.nom = 'Toulouse' AND ST_Touches(c1.the_geom, c2.the_geom);

Fonctionnalités : Export KML SELECT ST_AsKML(the_geom, 5) FROM dept WHERE code_dept='75' ;

Fonctionnalités : Export GeoJSON SELECT ST_AsGeoJSON( ST_Transform(the_geom, 4326), 5 ) FROM dept WHERE code_dept='75' ;

Fonctionnalités : ST_Buffer SELECT ST_Buffer(the_geom, 2500) FROM dept WHERE code_dept='75';

Fonctionnalités : Aggrégation de géométries SELECT ST_Union(the_geom) FROM commune GROUP BY code_dept;

Fonctionnalités : ST_Intersects et sous requête SELECT nom_dept FROM dept WHERE ST_Intersects(the_geom, (SELECT ST_Buffer(the_geom, 2500) FROM dept WHERE code_dept='75') ); Résultat: PARIS HAUTS-DE-SEINE SEINE-SAINT-DENIS VAL-DE-MARNE

Fonctionnalités : ST_Distance SELECT code_dept, round( ST_Distance(ST_Centroid(the_geom), (SELECT ST_Centroid(the_geom) FROM dept WHERE code_dept='75')) / 1000) AS distance FROM dept ORDER BY distance LIMIT 4; Résultats: 75 0 92 7 93 12 94 13

Fonctionnalités : Création de géométries SELECT nom_dept FROM dept WHERE St_Within( GeometryFromText('POINT(600440 2428685)', 27582), the_geom); Resultat: PARIS

Fonctionnalités : Import GML (PostGIS 1.5) SELECT ST_AsText( ST_GeomFromGML( '<gml:point srsname="epsg:27582"> <gml:pos srsdimension="2"> 600440 2428686 </gml:pos> </gml:point>' ) ); Résultat: POINT(600440 2428686)

Fonctionnalités : Généralisation via ST_Simplify Algorithme Douglas-Peuker SELECT ST_AsGeoJSON( ST_Transform( ST_Simplify(the_geom, 800), 4326), 5) FROM dept WHERE code_dept='75';

Fonctionnalités : référencement linéaire Fonctions de référencement Linéaire (cas de tronçons routiers) ST_line_interpolate_point(linestring, location) ST_line_substring(linestring, start, end) ST_line_locate_point(LineString, Point) ST_locate_along_measure(geometry, float8)

Fonctionnalités : pgrouting PgRouting, un module additionel de parcours de graphe

PostGIS 1.4 : La dernière version stable Sortie fin Juillet 2009 Amélioration des performances Séparation du code bibliothèque réutilisable (liblwgeom) Nouvelles fonctionnalités Bugfixes

PostGIS 1.4 : Performance de ST_Union SELECT ST_Union(the_geom) from dept; Version 1.3 Time: 10865 ms Version 1.4 Time: 2391 ms

PostGIS 1.4 : Refonte du manuel Rédacteurs: Regina Obe et Kevin Neufeld Version multilingue pour la 1.5?

PostGIS 1.4 : populate_geometry_columns Synchro entre les colonnes géométriques et la table 'geometry_columns' SELECT * FROM geometry_columns; public dept the_geom 2 27582 MULTIPOLYGON ALTER TABLE dept RENAME TO foo; SELECT populate_geometry_columns(); SELECT * FROM geometry_columns; public foo the_geom 2 27582 MULTIPOLYGON

PostGIS 1.4 : populate_geometry_columns II CREATE VIEW myview AS SELECT gid, ST_Buffer(the_geom, 2500) AS the_geom FROM france WHERE code_dept='75'; SELECT populate_geometry_columns(); SELECT * FROM geometry_columns WHERE f_table_name='myview'; public myview the_geom 2 27582 POLYGON

Nouveautés : la 1.5 Sortie envisagée: 'christmastime' Type 'geography' : latitude, longitude = «support géodésique» Fonctions d'import GML KML GeoJSON

Nouveautés : la 2.0 Sortie envisagée fin 2010 Chantiers en cours ou prévus : WKTRaster images manipulables depuis la base Primitives 3D Fonctionnalités de topologie et graphes

Fin questions? Merci de votre attention Questions, informations : infos@oslandia.com Oslandia : http://www.oslandia.com Feedback : http://2009.pgday.eu/feedback