Laurent Jégou 01/12/2011 M2 Sigma



Documents pareils
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

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

Procédure d'installation de PostgreSQL pour Windows

Les Géodatabases en 9.2

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

contact@nqicorp.com - Web :

INTRODUCTION et choix de la méthode d installation

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

Guide d installation de MySQL

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

Introduction to PostGIS

SAGE Financements Notice de mise à jour via internet

Procédure d installation :

ArcGIS 10.1 for Server

Les applications webmapping en opensource. 1 Christophe Adriaensen

Mise à jour de version

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

contact@nqicorp.com - Web :

Sommaire. Etablir une connexion avec une base de données distante sur PostGreSQL

Architecture de la plateforme SBC

Manuel utilisateur (Manuel_utilisateur_version pdf) Manuel Reprise des données (Manuel_Reprise_donnees_version

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

LES ACCES ODBC AVEC LE SYSTEME SAS

Programme détaillé. Administrateur de Base de Données Oracle - SQLServer - MySQL. Objectifs de la formation. Les métiers

Connexion entre une BD FileMaker Pro 10 et ArcGis 10.x sous Windows 7

SAUVEGARDER SES DONNEES PERSONNELLES

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

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

Test de HSQLDB et Comparatif avec Sqlite

Diffuser un contenu sur Internet : notions de base... 13

Déploiement d application Silverlight

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

Cours Bases de données 2ème année IUT

TUTORIEL D INSTALLATION D ORACLE ET DE SQL DEVELOPPER TUTORIEL D INSTALLATION D ORACLE...1 ET DE SQL DEVELOPPER...1

Guide de l'agent de notification

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

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

Mercredi 15 Janvier 2014

Guide d installation de SugarCRM Open Source version 4.5.1

PHP 4 PARTIE : BASE DE DONNEES

Oracle Developer Suite 10g. Guide de l installation. Vista & Seven

Procédure d installation pour WinEUR PROCÉDURE D INSTALLATION POUR WINEUR. Copyright GIT SA 2015 Page 1/16

Manuel du logiciel PrestaTest.

POTIMART : SIG OPEN SOURCE TRANSPORT UTILISATION, ARCHITECTURE INSTALLATION

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

Support de TD ArcGIS Introduction à l automatisation et au développement avec ArcGIS 10.1 JEAN-MARC GILLIOT e année ingénieur

1/ Présentation de SQL Server :

Les nouveautés de FME 2014

DOSSIER D'ACTIVITES SUR LE PHP N 03 Créer une base de données MySQL avec PHPMyAdmin

Mise en route et support Envision 10 SQL server (Avril 2015) A l'intention de l'administrateur SQL Server et de l administrateur Envision

1 Introduction et installation

FORMATION PcVue. Mise en œuvre de WEBVUE. Journées de formation au logiciel de supervision PcVue 8.1. Lieu : Lycée Pablo Neruda Saint Martin d hères

TD séance n 2c Mise à jour des Systèmes

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

Langage SQL : créer et interroger une base

5 - SQL - Bases de données

Guide SQL Server 2008 pour HYSAS

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES

Table des matières 1. Installation de BOB BOB ou un programme annexe ne démarre pas ou ne fonctionne pas correctement...10

Guide d installation de OroTimesheet 7

Introduction aux SGBDR

TP 7, 8 & 9 : Installation et Gestion de GLPI et Télédéploiement SISR 1 HUBERT JULIEN LABBE RICHARD DAY MICKAEL DOGNY CHRISTOPHE

SQL Express face à la concurrence

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

PROCEDURE D INSTALLATION DES LOGICIELS EBP EN ENVIRONNEMENT ESU4

Installation d'une galerie photos Piwigo sous Microsoft Windows.

COSWIN MOBILE SERVEUR DE SYNCHRONISATION GUIDE D INSTALLATION

gvsig: nouveautés version 2.1 et plus

DOCUMENT D ACCOMPAGNEMENT POUR L INSTALLATION DU LOGICIEL ESTIMACTION

MODE OPERATOIRE OPENOFFICE BASE

Les bases de données Page 1 / 8

Mise à jour d une édition Yourcegid V9

WDpStats Procédure d installation

Création d'un site dynamique en PHP avec Dreamweaver et MySQL

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

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

DELEGATION ACADEMIQUE AU NUMERIQUE FORMATION ADMINISTRATEUR SCRIBE 2.3 ET CARTABLE EN LIGNE (CEL)

INSTALLER JOOMLA! POUR UN HEBERGEMENT LINUX

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

ManageEngine EventLog Analyzer. Les bonnes critiques et recommandations

8 - Import-Export de données

COMMENT INSTALLER LE SERVEUR QIPAIE

Service Informatique et Télématique (SITEL), Emile-Argand 11, 2009 Neuchâtel, Tél ,

Optimisations des SGBDR. Étude de cas : MySQL

Procédure d'installation de Oracle Client pour Windows

Sur un ordinateur exécutant Windows 2000 Server Ayant une adresse IP statique

Procédure d'installation complète de Click&Decide sur un serveur

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

THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL

Sommaire 1 ) Contexte de l application :... 2

Documentation Annexe sur le PGI :

Installation de BOINC (pour Windows) La procédure reste néanmoins très similaire pour les utilisateurs de LINUX

Formateurs : Jackie DAÖN Franck DUBOIS Médiapôle de Guyancourt

Nuxeo 5.4 : les nouveautés

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

Transcription:

Laurent Jégou 01/12/2011 M2 Sigma M2 Sigma U50_B33 WebMapping Séance 2 Les systèmes de bases de données spatiales PostGIS Webographie spécifique : Tutoriel FOSS4G 2011 (en français) : http://www.postgis.fr/chrome/site/docs/workshop-foss4g/doc/index.html Guide utilisateur de D. Techer (en français, mais pour la version 1.3 de 2007) : http://www.davidgis.fr/documentation/win32/html/index.html 1- Le principe du stockage d objets spatiaux et des fonctions d interrogation et de traitement et de génération d objets. a- La norme Simple Features for SQL (Norme OpenGIS de l OGC). Une norme très utilisée qui définit le format numérique de stockage pour des objets géographiques, munis ou non d attributs non spatiaux. Il s agit de géométries 2D simples, avec interpolation linéaire entre vertex. (Schéma tiré de la norme OpenGeo / OGC SF-SQL, 05-134) La norme définit en outre des fonctions de conversion de formats et opérations spatiales sur ces géométries (calculs de distances / surfaces, relations spatiales, arithmétique entre géométries, etc.). Document sous licence CC-BY-SA 1

b- Les principales implémentations - PostGIS (extension intégrée de PostGreSQL) - SpatiaLite (extension de SQLite) - MyGIS (extension intégrée de MySQL) - Oracle Spatial - Microsoft SQL Server 2008 Aujourd'hui certains de ces logiciels progressent vers des possibilités SIG plus avancées comme le support de types de données géographiques gérant possédant une topologie complète, de rasters. 2- PostGIS, principes et utilisation a- Présentation Un moteur de BD orienté entreprise et réseau (sécurité, optimisation, réactivité) PostgreSQL est un SGBDR basé sur le logiciel POSTGRES développé à l'université de Californie au département des sciences informatiques de Berkeley à partir de 1986. POSTGRES était un logiciel expérimental dans le domaine des BDD, et il a servi de plateforme de test pour de nombreuses technologies modernes : requêtes complexes ; clés étrangères ; déclencheurs (triggers) ; vues ; intégrité des transactions ; contrôle des accès concurrents (multi-utilisateur en temps réel, MVCC ou multiversion concurrency control). Aujourd hui PostgreSQL qui est son héritier open source se vante d être le SGBDR le plus avancé au monde, car il possède des fonctionnalités très puissantes et le moyen de les étendre facilement par la programmation (langages de macro). PostGIS est pour une bonne partie codé dans un de ces langages de macro, plpgsql. Organisation d une BDD PostGIS (particularités de PostgreSQL et tables PostGIS) Une installation de PostgreSQL (un cluster) contient une ou plusieurs bases de données, totalement indépendantes. Chaque base de données peut ensuite contenir un ou plusieurs schémas, ou subdivisions logiques, ces derniers contenant les objets courants de base de données (tables, vues, fonctions, requêtes, etc.). Document sous licence CC-BY-SA 2

Cluster o Base de données Schéma Tables Fonctions Requêtes Vues Les utilisateurs peuvent avoir des droits différents (rôles), sur chaque base de données et chaque table. PostGIS ajoute à ce système ses types de données et ses (très nombreuses) fonctions, Cf. : http://postgis.refractions.net/documentation/manual-1.3/ch06.html Il ajoute aussi deux tables utilitaires : geometry_colums et spatial_ref_sys. La première sert à indiquer au logiciel quels sont les champs contenant des types géographiques dans chacune des tables. La seconde contient les paramètres des systèmes de projection supportés et sert en interne au logiciel : ce sont en fait les paramètres utilisés par la bibliothèque de fonctions PROJ.4 qui gère le système de projection. On peut y retrouver les principales projections utilisées sous leurs identifiants EPSG (L93 = 2154). La prochaine version de PostGIS, attendue courant 2012, apportera des innovations importantes, comme la gestion des données rasters et la prise en compte plus poussée des relations topologiques. Cependant, vous pouvez déjà tester la gestion des données rasters avec la version beta de PostGIS 2.0 ou du plugin WKTRaster (sur la page des projets expérimentaux du site de PostGIS). b- Principe d utilisation de PostGIS Le principe est donc de pouvoir : - stocker des informations géographiques en tenant compte de ces caractéristiques particulières (projection, dimensions, etc.), - réaliser des opérations de type SIG comme des mesures de distance, d intersection, - créer de nouvelles géométries en les décrivant dans un format reconnu, ou comme résultat d opérations sur des géométries existantes (arithmétiques), - retourner des informations géographiques (géométries et/ou attributaires) selon un format précis, sur le réseau. Document sous licence CC-BY-SA 3

c- Installation de PostgreSQL / PostGIS sous Windows XP Cf. Procédure détaillée en annexe, avec copies d écrans. Télécharger le paquet d installation sur http://www.enterprisedb.com/products/pgdownload.do Laisser les chemins d installation par défaut (programme et data) Choisir un mot de passe pour le superuser du cluster : postgres (nous faisons une installation locale de test, naturellement en production il faudra choisir un mot de passe plus sur). Laisser le port par défaut (5432) Choisir le «locale» French/french Laisser l installeur lancer le «stack builder» à la fin de l installation Dans StackBuilder, choisir le cluster PG local Dans le groupe «spatial extensions», choisir PostGIS Choisir un serveur FTP où télécharger l extension Dans l installation de PostGIS, laisser les choix par défaut (postgis et «create spatial database») Fournir l identifiant et le mot de passe du superuser postgres Une base de données spatiale sera créée et nommée «postgis» par défaut Le serveur PostGreSQL est installé, il s'agit d'un service windows à démarrage automatique (lancé à chaque fois que windows démarre, à modifier en démarrage à la demande sur une machine qui n'est pas dédiée serveur). Lancer ensuite PGAdminIII dans le même menu démarrer pour vérifier la connexion. Préparation de la base : Créer un nouveau rôle d utilisation (un nouvel utilisateur), ayant les droits sur la base «PostGIS» du cluster, par exemple «sigma» et mot de passe «sigma». Tester la connexion au serveur avec ce rôle. Configuration de PostGIS sur le serveur - ouvrir si besoin les connexions au réseau local dans le fichier pg_hba.conf : host all all 0.0.0.0/0 trust - modifier la définition de la page de codes du client dans le fichier postgresql.conf client_encoding = latin1 (Sinon les caractères avec accents ne seront pas reconnus et bloqueront l'insertion de nouvelles données dans la base, qui est en codage UTF8 par défaut). recharger la configuration (dans le menu démarrer de Windows, PostgreSQL). Document sous licence CC-BY-SA 4

d- Alimentation de la base de données Les jeux de données gratuites et libres d utilisation sont à récupérer dans une archive compressée : Leur provenance originale est : - Données GéoFla Départments IGN au format shape (Lambert93) o http://professionnels.ign.fr/display/000/528/175/5281750/geoflade pt_fr_corse_av_l93.zip - Données BD Carthage : Cours d eau du bassin Adour-Garonne (Lambert93) o http://services.sandre.eaufrance.fr/data/zonage/hydrographie2011/arcgis/ Bassins/AG/ - Données DREAL Midi-Pyrénées des stations de mesures hydrologiques (Lambert93) o http://carmen.developpementdurable.gouv.fr/index.php?map=global.map&service_idx=23w Conversion en commandes SQL et intégration des données : Dans PGAdminIII, choisir dans le menu «Plugin» : «Shape File to PostGIS Importer» Modifiez les paramètres proposés en écriant le nom de la table en minuscules et en changeant le code système de projection par défaut (-1 pour «inconnu») par celui des couches à importer : 2154 (code EPSG pour le Lambert RGF 93). cette opération est à répéter à chaque importation de données, sinon elles ne seront pas correctement reconnues dans leur projection. Attention à placer les fichier shape à importer dans un répertoire dont le chemin ne présente pas un nom trop complexe : 8 lettres max. et pas d'espace. Exemple pour le GéoFla Départements (IGN) : Document sous licence CC-BY-SA 5

Attention : pour les données BD Carthage, qui comporte des toponymes en minuscules avec accents, prenez bien soin de préciser (bouton «Options») que l encodage des caractères est de type «LATIN1» dans le.dbf de la source (les fichiers DBF ne contiennent pas d'information sur leur encodage de texte). L importation par ce plugin va convertir les shapefiles en tables postgis, et créer les informations utiles dans la table geometry_columns ainsi qu un index sur la colonne contenant les géométries. Un champ "gid" sera de même rajouté (sauf option contraire) aux tables, contenant des valeurs numériques uniques permettant de créer une clé primaire. Les géométries des objets spatiaux sont stockées dans un champ de type "geometry", qui a été ajouté au serveur par l'installation de PostGIS. Ces champs contiennent en fait une description de la géométrie dans un format binaire compressé, que l'on peut lire en utilisant la fonction ST_AsText(the_geom). PostGIS possède dans le même ordre d'idées des convertisseurs de format permettant de générer du KML ou du GeoJSON. Document sous licence CC-BY-SA 6

e- Exercices pratiques de découverte progressive des fonctions L'utilisation des fonctions de PostGIS s'effectue au travers de requêtes SQL, comme on utiliserait les fonctions habituelles de PostGreSQL. Sélection attributaire simple Les départements de la région Midi-Pyrénées (code 73) : SELECT * FROM departement WHERE code_reg = '73' Les noms des cours d eau principaux du bassin Adour-Garonne : SELECT toponyme FROM courseau WHERE classe = '1' Lister les noms des cours d eau comportant le nom «Garonne» : SELECT toponyme FROM courseau WHERE toponyme like '%Garonne' Compter le nombre de tronçons de la Garonne : SELECT count(gid) FROM courseau WHERE toponyme = 'La Garonne' Calculs spatiaux simples Mesurer la Garonne (dans le jeu de données partiel téléchargé) : SELECT sum(length(the_geom)) FROM courseau WHERE toponyme = 'La Garonne' La superficie du département du Tarn (code 81) : SELECT area(the_geom) FROM departement WHERE code_dept = '81' Résultat : 5 781 488 782.5 m2 (donc 5 781 km2). Le périmètre du polygone du Tarn : SELECT perimeter(the_geom) FROM departement WHERE code_dept = '81' Résultat : 459 569.4 m (la couche est en projection Lambert 93, donc les données sont dans l'unité du mètre, ce qui correspond à 460 km). Sélections spatiales simples (sans relation entre plusieurs tables) Les départements limitrophes du Tarn Document sous licence CC-BY-SA 7

SELECT d.nom_dept FROM departement as d, (SELECT the_geom FROM departement WHERE departement.code_dept = '81') as tarn WHERE ST_Touches(d.the_geom, tarn.the_geom) Les départements à moins de 200km de la frontière du Tarn : SELECT DISTINCT d.code_dept, d.nom_dept FROM departement as d, Les cours d'eau du Tarn : (SELECT the_geom FROM departement WHERE departement.code_dept = '81') as tarn, ST_buffer(tarn.the_geom, 200000) as le_buffer WHERE ST_contains(le_buffer, d.the_geom) SELECT DISTINCT ce.toponyme FROM courseau as ce, (SELECT the_geom FROM departement WHERE code_dept = '81') as tarn WHERE ST_intersects(tarn.the_geom, ce.the_geom) Les points de mesure hydrologiques du Tarn : SELECT DISTINCT mes.nom_usuel FROM st_eausup_ag as mes, (SELECT the_geom FROM departement WHERE code_dept = '81') as tarn WHERE ST_Contains(tarn.the_geom, mes.the_geom) Le nom des points de mesure à proximité de la Garonne : - Création d une table temporaire pour stocker un buffer de 100m autour de la Garonne : create table bgaronne as select st_buffer(the_geom, 100) as the_geom from courseau where toponyme = 'La Garonne' - Recherche des points de mesure dans ce polygone : select st_eausup_ag.nom_usuel from st_eausup_ag, bgaronne where st_contains(bgaronne.the_geom, t_eausup_ag.the_geom) Document sous licence CC-BY-SA 8

f- Test du logiciel QuantumGIS comme client PostGIS Créer une connexion au serveur PG Charger les couches disponibles Vérifier les projections Tester la visualisation et la symbolisation Tester la modification de couches, observer la répercussion sur le serveur Tester la création de couches issues de requêtes de sélection. g- Exercices - Télécharger les données "Admin-0 Countries" version 1:110M du site : http://www.naturalearthdata.com/downloads/ - Télécharger les données "Populated Places" version 1/110M - Les intégrer au serveur PostGIS, dans leur projection Répondre aux questions suivantes : - Quels sont les pays frontaliers du Bhoutan? - Quelle est la distance, en kms, entre Paris et Londres? Document sous licence CC-BY-SA 9

ANNEXE : Installation de PostGreSQL + PostGIS sous Win32. Télécharger le paquet d installation sur http://www.enterprisedb.com/products/pgdownload.do Laisser les chemins d installation par défaut (programme et data) Document sous licence CC-BY-SA 10

Choisir un mot de passe pour le superuser postgres du cluster : postgres (installation locale de test, naturellement en production il faudra choisir un mot de passe plus sur). Laisser le port par défaut (5432) Document sous licence CC-BY-SA 11

Choisir le «locale» French/french Laisser l installeur lancer le «stack builder» à la fin de l installation Document sous licence CC-BY-SA 12

Dans StackBuilder, choisir le cluster PG local Dans la catégorie «Spatial Extensions», choisir PostGIS Document sous licence CC-BY-SA 13

Choisir un serveur FTP où télécharger l extension Dans l installation de PostGIS, laisser les choix par défaut (postgis et «create spatial database») Laisser le chemin d installation par défaut (le chemin de PG). Document sous licence CC-BY-SA 14

Fournir l identifiant et le mot de passe du superuser : postgres Une base de données spatiale sera créée et nommée «postgis» par défaut Document sous licence CC-BY-SA 15

Laisser l installateur insérer la commande shp2pgsql dans PGAdminIII Lancer ensuite PGAdminIII dans le même menu démarrer pour vérifier la connexion. Document sous licence CC-BY-SA 16