TP Bases de données spatiales



Documents pareils
Date de diffusion : Rédigé par : Version : Mars 2008 APEM 1.4. Sig-Artisanat : Guide de l'utilisateur 2 / 24

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

Les Utilisateurs dans SharePoint

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

OSIRIS/ Valorisation des données PORTAIL BO MANUEL UTILISATEUR

Atelier Le gestionnaire de fichier

AFTEC SIO 2. Christophe BOUTHIER Page 1

Laurent Jégou 07/12/2012 M2 Sigma

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

Raja Bases de données distribuées A Lire - Tutoriel

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

Avec PICASA. Partager ses photos. Avant de commencer. Picasa sur son ordinateur. Premier démarrage

Module d introduction Comment réaliser vos propres cartes avec ArcGIS Online

SYSTEME DE GESTION DES ENERGIES EWTS EMBEDDED WIRELESS TELEMETRY SYSTEM

Logiciel ArpentGIS-PC Guide de l utilisateur

Procédure : Sauvegarder un Windows 7 sur un disque réseau

Installation 1K-Serveur

Le générateur d'activités

Service de certificat

Administration du site (Back Office)

INTRODUCTION GENERALE...1 LA CONNEXION ODBC :...1. CONNEXION AU TRAVERS D EXCEL(tm)...6. LOGICIEL QUANTUM GIS (Qgis)... 10

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

DOCUMENTATION VISUALISATION UNIT

Service de Virtualisation de la DSI UJF

Les possibilités de paramétrage réseau des logiciels de virtualisation sont les suivantes quant à la connexion réseau :

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

KAJOUT WASSIM INTERNET INFORMATION SERVICES (IIS) 01/03/2013. Compte-rendu sur ISS KAJOUT Wassim

Cours iguess. inotes v10.1

Installation d OpenVPN

Comment congurer WinEdt pour L A TEX?

COMMENT INSTALLER LE SERVEUR QIPAIE

But de cette présentation

Créer et partager des fichiers

Gestion des utilisateurs : Active Directory

Tutoriel d'introduction à TOR. v 1.0

BIRT (Business Intelligence and Reporting Tools)

2010 Ing. Punzenberger COPA-DATA GmbH. Tous droits réservés.

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

Installation d'une galerie photos Piwigo sous Microsoft Windows.

Utilisation d'un réseau avec IACA

Didacticiel de mise à jour Web

Table des matières. 1 À propos de ce manuel Icônes utilisées dans ce manuel Public visé Commentaires...

Matérialiser les données d une BdD : créer une carte de densité de points par maillage

Compte-rendu de projet de Système de gestion de base de données

Créer un site Web : mode d emploi Sous SPIP, avec le squelette «établissement» de l académie de Versailles

Rendre un plan de cours interactif avec Médiator

Découvrez Windows NetMeeting

Installation d un ordinateur avec reprise des données

Guide de démarrage rapide

GUIDE D INSTALLATION DE L APPLICATION GECOL SUR

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

Business Intelligence avec SQL Server 2012

Didacticiel du service cartographique en cache

Affectation standard Affectation modifiée (exemple)

Placez vous au préalable à l endroit voulu dans l arborescence avant de cliquer sur l icône Nouveau Répertoire

WinTask x64 Le Planificateur de tâches sous Windows 7 64 bits, Windows 8/ bits, Windows 2008 R2 et Windows bits

Sage 50 Version 2014 Guide d installation. Sage Suisse SA

Prise en main du logiciel. Smart BOARD Notebook 10

FreeNAS Shere. Par THOREZ Nicolas

ENVOI EN NOMBRE DE Mails PERSONNALISES

Guide d installation CLX.PayMaker Office (3PC)

NOOBÉ GUIDE DE PRISE EN MAIN SOMMAIRE. INSTALLER Installer le logiciel Lancer le logiciel Découvrir NOOBÉ

Stellar Phoenix Outlook PST Repair - Technical 5.0 Guide d'installation

Dispositions relatives à l'installation :

TUTORIEL RADIUS. I. Qu est-ce que RADIUS? II. Création d un groupe et d utilisateur

pas à pas prise en main du logiciel Le Cloud d Orange - Transfert de fichiers sur PC et MAC Le Cloud

GESTION DE L'ORDINATEUR

Guide pour le bon fonctionnement des applications académiques avec Internet Explorer 7.x

TP 1 : 1 Calculs en binaire, octal et hexadécimal

NAS 106 Utiliser le NAS avec Microsoft Windows

Cyberclasse L'interface web pas à pas

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

Sql Server 2005 Reporting Services

Introduction à Expression Web 2

Galaxy est une plateforme de traitements (bio)informatiques accessible depuis l'url : (en précisant votre login et mot de passe LDAP «genotoul»).

Microsoft OSQL OSQL ou l'outil de base pour gérer SQL Server

La Clé informatique. Formation Excel XP Aide-mémoire

Rapports d activités et financiers par Internet. Manuel Utilisateur

Edutab. gestion centralisée de tablettes Android

LibreOffice Calc : introduction aux tableaux croisés dynamiques

GUIDE DE DEMARRAGE RAPIDE:

INTRODUCTION AUX TESTS DE PERFORMANCE ET DE CHARGE

3 : créer de nouveaux onglets dans Netvibes Cliquer sur le bouton «+» et renommer le nouvel onglet (par exemple Encyclopédies en ligne)

INITIATION A L INFORMATIQUE. MODULE : Initiation à l'environnement Windows XP. Table des matières :

Sauvegarde d'une base de données SQL Server Express 2005

Manuel BlueFolder ADMINISTRATION

Sauvegarder automatiquement ses documents

Administration du site

Microsoft Hosted Exchange 2010 DOCUMENT D EXPLOITATION

1. Introduction Avantages, fonctionnalités, limitations et configuration requise Avantages... 2

Chaque ordinateur est constitué de différentes unités de stockage de données (Disque dur, Graveur ) que l on peut imaginer comme de grandes armoires.

Installation / Sauvegarde Restauration / Mise à jour

LES ACCES ODBC AVEC LE SYSTEME SAS

FANTEC HDD-Sneaker MANUEL D'UTILISATION. Comprend: Guide d'installation de materiel Disque dur Formatage manuel PCClone EX Guide d'installation

LANDPARK NETWORK IP LANDPARK NETWORK IP VOUS PERMET D'INVENTORIER FACILEMENT VOS POSTES EN RÉSEAU

iil est désormais courant de trouver sur Internet un document

Tutoriaux : Faites vos premiers pas avec Microsoft Visio 2010

pcon.planner 6 Préparer et présenter une implantation en toute simplicité

Transcription:

TP Bases de données spatiales Julien Barde, Nicolas Moyroud 27 Juin 2008 1 Présentation générale du TP 1.1 Contexte et objectifs du TP On veut représenter l'information géographique sur la position des pêches qui est contenue dans notre base de données. Pour cela, on va activer dans notre base PostgreSQL la cartouche géographique PostGIS. On l'utilisera pour stocker l'information géographique et ajouter dans la base une nouvelle table contenant une couche vectorielle issue d'un chier shape. On utilisera ensuite les opérateurs spatiaux de PostGIS pour réaliser une analyse spatiale entre diérentes couches. On achera ensuite les couches géographiques de la base avec le logiciel libre QGIS, en y ajoutant un fond raster (chier tif) ainsi qu'une couche géographique provenant d'un serveur WMS. Pour nir, on mettra en oeuvre le serveur cartographique MapServer pour publier les cartes produites sur le web. 1.2 Principales étapes à réaliser activer les fonctionnalités PostGIS dans la base, ajouter et alimenter une colonne géographique dans la table Peche, insérer un chier shape dans une nouvelle table de la base, créer des vues contenant le résultat de requêtes d'analyse spatiale, visualiser les couches produites avec QuantumGIS, acher une couche raster et une couche WMS dans QuantumGIS, publier une carte sur le web avec MapServer. 1.3 Matériel et logiciels nécessaires On dispose pour ce travail : d'un PC sous Windows, du SGBD PostgreSQL avec son module spatial PostGIS, d'une interface d'administration de bases phppgadmin, du logiciel libre QuantumGIS (version 0.10 'Io'), d'un serveur web Apache/PHP local avec le serveur cartographique MapServer activé (MS4W). 1.4 Données fournies les valeurs de latitude et longitude contenues dans la table Peche de la base de données PostgreSQL, le chier shape qui contient les grands éco-systèmes marins : lme2006.shp, le chier raster bluemarble.tif, la couverture mondiale issue du serveur WMS de la NASA. 1.5 Liens utiles documentation PostgreSQL/PostGIS en français : http://www.davidgis.fr/documentation/win32/html/index.html, site ociel QuantumGIS : http://www.qgis.org, site ociel MapServer : http://mapserver.gis.umn.edu, site MS4W (MapServer pour Windows) : http://www.maptools.org/ms4w. 1

2 Ajout des informations géographiques dans la base Vous allez activer la cartouche spatiale PostGIS puis ajouter des données géographiques dans la base. Démarche Activer le langage PL/PgSQL dans la base Activer les fonctionnalités spatiales dans la base Manipulation Démarrez une console DOS (menu Démarrer, sélectionnez Exécuter et taper la commande cmd). Tapez C:, puis allez dans le répertoire Program Files\PostgreSQL\8.3\bin. Pour activer le langage PL/PgSQL dans la base, tapez la commande createlang.exe -U postgres plpgsql isotopes. Un message peut s'acher en indiquant que le langage est déjà activé dans la base. Cela est dû au fait que dans la conguration du serveur PostgreSQL l'activation du langage PL/PgSQL est automatiquement réalisée à chaque création d'une base. Toujours dans la console DOS en restant dans le même répertoire, exécutez les deux commandes suivantes : psql -U postgres -d isotopes -f "C:\Program Files\PostgreSQL\8.3\share\contrib\lwpostgis.sql" psql -U postgres -d isotopes -f "C:\Program Files\PostgreSQL\8.3\share\contrib\spatial_ref_sys.sql" Ajouter une colonne géographique dans la table Peche La première commande ajoute dans la base toutes les fonctions spatiales et une table geometry_columns qui contient les informations sur les colonnes géographiques de la base. La deuxième commande intègre une table spatial_ref_sys qui contient les informations sur les systèmes de références spatiaux. Se connecter avec PhpPgAdmin dans la base isotopes. Vérier que les deux tables geometry_columns et spatial_ref_sys ont bien été ajoutées et visualiser leur contenu. Vous allez ajouter une colonne supplémentaire lieu_peche dans la table Peche pour contenir l'information géographique sur les lieux des pêches. Cette colonne utilisera le système de projection WGS 84 (code SRID=4326) et contiendra des objets géographiques de type point sur 2 dimensions. Pour cela, exécutez la requête SQL suivante : SELECT AddGeometryColumn ( ' peche ', ' lieu_peche ', 4 3 2 6, ' POINT ', 2 ) ; Insérer l'information géographique dans la colonne lieu_peche Visualisez la nouvelle structure de la table Peche ainsi que le contenu de la table geometry_columns. Remplissez la nouvelle colonne lieu_peche en utilisant les valeurs contenues dans les colonnes longitude_peche et latitude_peche. Exécutez la requête SQL suivante : UPDATE peche SET lieu_peche = GeometryFromText ( ' POINT ( ' longitude_peche ' ' latitude_peche ') ', 4 3 2 6 ) ; Visualisez le contenu de la colonne lieu_peche dans la table Peche. Remarquez que l'information géographique est achée sous forme de code binaire (WKB). C'est le format de stockage dans PostGIS. Pour acher une forme plus compréhensible (WKT), vous pouvez exécuter la requête suivante : SELECT id_peche, AsText ( lieu_peche ) from peche ; Pour acher uniquement la géométrie des objets contenus dans la colonne, vous pouvez exécuter la requête suivante : SELECT id_peche, GeometryType ( lieu_peche ) from peche ; 2

Importer un chier shape pour ajouter une couche vectorielle Dans la console DOS, toujours depuis le même répertoire C:\Program Files\PostgreSQL\8.3\bin, exécutez la commande : shp2pgsql -s 4326 -c -D -i -I "C:\2008-06-24_formation_IRD_SGBD\05-BD_spatiales\shapes\lme2006.shp" lme2006 > lme2006.sql Avec l'éditeur de texte NotePad++, visualisez le contenu du chier lme2006.sql. Pour insérer ces données dans la base, vous pouvez copier/coller le contenu du chier dans phppgadmin OU exécuter la commande suivante dans la console DOS : psql -U postgres isotopes < lme2006.sql Avec phppgadmin, visualisez la structure et le contenu de la nouvelle table lme2006 en utilisant la fonction AsText. 3

3 Achage des données géographiques dans le SIG QuantumGIS Grâce au SIG libre QuantumGIS, vous allez acher les données géographiques de la base. Vous réaliserez des requêtes d'analyse spatiale grâce à PostGIS et vous visualiserez également les résultats dans QuantumGIS. Démarche Acher les lieux de pêche et les grands éco-systèmes marins dans QuantumGIS Consulter et gérer les couches dans QuantumGIS Réaliser des requêtes d'analyse spatiale avec PostGIS Manipulation Lancez QuantumGIS (Démarrer>Programmes>QuantumGIS>QuantumGIS). Sélectionnez le menu Couche>Ajouter une couche PostGIS. Dans la nouvelle fenêtre, entrez les paramètres suivants : Nom = BD peches, Hote = localhost, Base de données = isotopes, Port = 5432, Nom d'utilisateur = postgres, Mot de passe = postgres. Cochez sauvegarder le mot de passe, puis cliquez sur le bouton OK. Cliquez sur le bouton Connecter. Les deux couches géographiques contenues dans la base s'achent. Sélectionnez les deux couches lme2006 et peche puis cliquez sur le bouton Ajouter. Vériez que la couche peche se trouve au-dessus de la couche lme2006 dans la fenêtre à gauche de QuantumGIS (la couche qui contient les points s'ache alors par-dessus celle qui contient les polygones). Cliquez avec le bouton droit sur la couche peche, puis sélectionnez Zoomer sur l'emprise de la couche. La carte est alors positionnée sur la zone couverte par les points de cette couche. Vous pouvez utiliser les outils déplacement et zoom pour naviguer sur la carte. Cliquez sur la couche peche puis sur l'outil Identiez les données. Vous pouvez maintenant cliquer sur un des points de la couche peche pour acher ses informations attributaires. En sélectionnant la couche lme2006, vous pouvez également acher les informations attributaires de cette couche. A l'aide de phppgadmin, écrivez une première requête qui retourne tous les points de pêche contenus dans l'écosystème marin de gid=56. Vous utiliserez l'opérateur spatial within (contenu dans) de PostGIS : SELECT peche. FROM peche, lme2006 WHERE lme2006. gid=56 AND within ( peche. lieu_peche, lme2006. the_geom ) ; Ecrivez une deuxième requête pour sélectionner tous les points de pêche situés à moins de 10 degrés d'un point xe : SELECT peche. FROM peche WHERE distance ( peche. lieu_peche, GeometryFromText ( ' POINT (43.32 6.24) ', 4326)) < 1 0 ; Utiliser des vues pour stocker les résultats des requêtes d'analyse spatiale Vous allez eectuer les mêmes requêtes que précédemment en stockant leur résultat de façon permanente dans des vues. Exécutez les deux requêtes suivantes avec phppgadmin : CREATE VIEW peche_zone_56 AS ( SELECT peche. FROM peche, lme2006 WHERE lme2006. gid=56 AND within ( peche. lieu_peche, lme2006. the_geom ) ) ; CREATE VIEW peche_point_10 AS ( SELECT peche. FROM peche WHERE distance ( peche. lieu_peche, GeometryFromText ( ' POINT (43.32 6.24) ', 4326)) < 1 0 ) ; Dans le sous-menu Vues de phppgadmin, vous pouvez vérier que le contenu des deux vues correspond bien aux résultats des requêtes précédentes. Le contenu aché ici est dynamique : si vous ajoutez des enregistrements dans la table peche, ils seront automatiquement pris en compte dans ces vues. 4

Achez le contenu des vues dans QuantumGIS Ajouter une couche raster dans QuantumGIS Ajouter une couche provenant d'un serveur WMS dans QuantumGIS Utiliser QuantumGIS pour importer des chiers shape dans PostGIS Vous pouvez maintenant acher le contenu des deux vues précédentes dans le SIG QuantumGIS. Pour cela, sélectionnez le menu Couche>Ajouter une couche PostGIS, sélectionnez la BD peches, cliquez sur le bouton Connecter, sélectionnez peche_point_10 et peche_zone_56, puis cliquez sur le bouton Ajouter. Dans la fenêtre des couches de QuantumGIS, positionnez les deux nouvelles couches en haut puis décochez la case de la couche peche pour la masquer. Pour mettre en évidence les points d'une couche, vous pouvez changer leur couleur avec un clic droit sur la couche et en sélectionnant Propriétés. Vous allez ajouter une image de fond dans l'interface cartographique de QuantumGIS. Cette image provient d'un chier tif géolocalisé présent sur votre disque. Sélectionnez le menu Couche>Ajouter une couche raster, puis sélectionnez le chier C:\2008-06-24_formation_IRD_SGBD\05-BD_spatiales\shapes\bluemarble.tif. Dans la fenêtre des couches, faites glisser la couche bluemarble en dernière position. Masquez la couche bluemarble. Sélectionnez le menu Couche>Ajouter une couche WMS. Cliquez sur le bouton Add default servers puis OK. Sélectionnez NASA (JPL) puis cliquez sur le bouton Connexion. Sélectionnez la première couche global_mosaic, puis cliquez sur le bouton Ajouter. Dans la fenêtre des couches, faites glisser la couche NASA(JPL) en dernière position. Cette couche distante peut provoquer un certain ralentissement pour l'achage de la carte lorsque l'on utilise les outils déplacement ou zoom. Dans QuantumGIS, il est possible d'activer une certain nombre de plugins, dont un qui permet d'importer des chiers shape dans la base PostgreSQL. Sélectionnez le menu Plugins>Gestionnaire de plugin, cliquez sur SPIT, puis cliquez sur le bouton OK. Le menu d'importation de chiers shape dans PostgreSQL se trouve dans Plugins>Fractionner>Importer des shapes dans PostgreSQL. 5

4 Publication de cartes sur le web avec MapServer A l'aide du serveur cartographique libre MapServer, vous allez publier sur le web une carte qui présente les couches d'information géographique contenues dans la base. Comme fond d'image, vous utiliserez l'image bluemarble.tif. Démarche Mettre en place les chiers pour MapServer Acher la carte dans le navigateur Firefox Ajouter la barre d'échelle et la légende des couches sur la page Manipulation Les chiers pour MapServer se trouvent dans le répertoire C:\2008-06-24_formation_IRD_SGBD\05-BD_spatiales\mapserver. Copier ce répertoire à l'intérieur du répertoire C:\ms4w\Apache\htdocs. Il contient deux chiers peche.php et maple.map et un sous-répertoire tmp. Ouvrez le chier peche.php avec l'éditeur Notepad++. Il s'agit d'un programme PHP qui utilise un objet MapScript pour charger le chier maple.map et acher dans une page HTML une image générée par MapServer. Toutes les images seront stockées dans le sous-répertoire tmp. C'est le chier maple.map qui contient les paramètres de conguration de la carte à générer. Ouvrez ce chier avec l'éditeur Notepad++ et analysez son contenu. Les premières lignes contiennent la conguration globale de la carte (nom, étendue géographique, taille de l'image générée, type d'image générée, unités). Un bloc PROJECTION contient le système de projection de la carte. Un bloc WEB contient les chemins vers les images (sur le système et par rapport au chier maple). La structure du chier est ensuite constituée de blocs LAYER... END pour le chargement de chacune des couches. C'est la dernière couche du chier qui sera chargée en dernier, et donc positionnée audessus des autres. La première couche chargée est le chier raster bluemarble.tif. Les quatre couches suivantes sont des couches extraites de PostGIS. Un dernier bloc SYMBOL sert à dénir un cercle qui est utilisé comme symbole pour représenter les points. Pour que les images puissent être générées, vous devez mettre les droits en écriture pour tous les utilisateurs du système dans le sous-répertoire tmp. Ouvrez le navigateur Firefox et tapez l'url http://localhost:8080/mapserver/peche.php. La carte doit s'acher dans le navigateur. Dans le chier maple.map, commentez les lignes 66 et 86 puis décommentez les lignes 67 et 87 (ajouter/enlever le #). Recharger la page dans Firefox. Que constatez-vous? Pourquoi? Vous pouvez jouer avec le chier map- le.map pour ajouter/enlever des couches. Dans le chier peche.php, à la ligne 10, ajoutez le code suivant : $image_legend = $map >drawlegend ( ) ; $image_bar = $map >drawscalebar ( ) ; $image_legend = $image_legend >savewebimage ( ) ; $image_bar = $image_bar >savewebimage ( ) ; En-dessous de la balise img qui contient l'image de la carte, ajoutez le code suivant : <img src=" <? php echo $image_legend ;? >" alt=" legend " /> <img src=" <? php echo $image_bar ;? >" alt=" scalebar " /> Actualisez la page peche.php dans le navigateur Firefox. 6