Bases de données spatiales

Slides:



Advertisements
Présentations similaires
Master sciences et techniques de géomatique environnementale
Advertisements

Mettre en ligne des cartes.
Centre d'Études Techniques de l'Équipement de l'Ouest COPIL PRODIGE 14 février 2013.
1 Comité de suivi régional du SINP LR - 8 juin 2012 Comité technique du SINP LR Montpellier, 8 juin 2012.
Les profils du SEDA confection de profil avec Agape.
1 The Nhân LUONG Éditeur visuel pour la création d'applications web géographiques Présenté par Mike Deguilhem Séminaire T2I – mercredi 16 juin 2010.
FORMATION PRODIGE Aspects techniques Chistophe BOCQUET (CPII/DOO)
SQL : 4 fonctions d'exploitation de SGBD SQL (Structured Query Language, traduisez Langage de requêtes structuré) est un langage informatique ayant pour.
FORMATION PRODIGE Aspects techniques Christophe BOCQUET (CPII/DOO)
SQL partie 1 Langage de Définition de Données. SQL est un langage de définition de données  SQL est un langage de définition de données (LDD), c'est-à-dire.
PostgreSQL - Postgis - OpenStreemap. Atelier base de données PostgreSql + Postgis avec intégration de données OpenStreetmap Installation base de données.
Refonte du portail eaufrance Présentation du cadre de référence pour avis GCIB – 14/10/2014 – Anne Macaire.
Interface sur laquelle on arrive lorsqu’on atteint le site Tous les champs ci- dessous sont supprimés Liste des clients disponibles Liste des serveurs.
ARCHITECTURE MULTITENANT CONTAINER DATABASE ET PLUGGABLE DATABASES Pr. A. MESRAR
Enseigner autrement les mathématiques au travers du socle commun et des nouveaux programmes Un collège réformé, adapté et contextualisé.
Synapse appliquée au risque inondation
POWER QUERY Les FONCTIONS.
Présenté par M. Anis DIALLO
TotEM Nouvelle version 2016.
Formation BTS CG – Parc Chabrières
Google analytics.
PHP & MYSQL.
ONEE-BE en partenariat avec le RACEE/ASAEE Formation de Formateurs
Chantier développer.
Séminaire Novembre 2006 Zephir : Déploiement et supervision des serveurs Eole.
Les Bases de données Définition Architecture d’un SGBD
Structured Query Language
8. Mettre les paramètres du test final
Présentation générale de la réforme
Généralité sur les bases de données
Importation des données satellite: SST/SSS (NetCDF; HDF)
Les « observables » ! Situation A de CCF : de la prise d’information à la constitution d’un profil.
Support – info Sauvegarde des données locales des postes clients
STRATÉGIES ET INSTRUMENTS D´ÉVALUATION
Cyber-Sphinx Séance 2.
Promotion du Contrat de territoire corridors biologiques
Le web géographique Conférence des webmasters 25 janvier 2007
Licence 3 MIASHS info – UE MIGE504V
Esabora.as Dématérialisation.
élaboration de contenus pédagogiques
Documentation technique (Linux)
PROGRAMMATION INFORMATIQUE D’INGÉNIERIE II
Regroupement contextuel de cimes dans les images aéroportées
Informations vous concernant :
Guide Utilisateur. Guide Utilisateur.
DATA WEARHOUSE 1ère année LA: Technologies systèmes d’information
Proposition de réponses attendues
La mission SUIVI DE GESTION
Projet d’Appui à la Gouvernance Economique (PAGE)
Une offre d’admission: et après ?
Responsable Petite et Moyenne Structure
5 Analyse avec Designer d'Oracle
FAIRE UN BLOG D'ECOLE Un exemple détaillé.
SIMM : Réflexions sur les besoins en référentiels.
7 Contraintes d’intégrité en SQL
Notions de base sécurité
Les mesures dans les enquêtes
Semaine 3 Retour sur la semaine 2 Plan de séance
Université de la méditerranée
Présenté par M. Anis DIALLO
Base de données validées
Comment la faire ? Quand la faire ?
Démarrage du projet Préparer les fonds de plan
Les différents modes de démarrage de Windows
SQL Structured Query Language
Support de formation Administrateur Entretiens
Notions de base sécurité
Parcours adapté L’évaluation au service des apprentissages
Les données structurées et leur traitement
Cartographie Numérique
Transcription de la présentation:

Bases de données spatiales Licence 3 MIASHS – UE MIGE504V Bases de données spatiales Séance 3 : Travaux pratiques Emilie Lerigoleur Emilie.Lerigoleur@univ-tlse2.fr 2016/2017

Objectifs du TP Vous êtes compétent en gestion de bases de données spatiales Comment le valoriser dans le cadre d’un emploi ?

Exemple d’offre d’emploi Un vrai exemple : http://www.toulouse-metropole.fr/-/un-technicien-sig-h-f- MISSIONS Au sein du service Géomatique votre mission générale sera d'exploiter et de valoriser les bases de données référentielles et métiers du SIG de la collectivité. A ce titre, vous assurerez la mise à jour du Plan de Ville de Toulouse Métropole dans sa représentation des noms de voies, des bâtiments et des lieux ou équipements publics qui composent son territoire. Vous effectuerez les opérations de géocodage des fichiers d'adresses de la collectivité et vous réaliserez les analyses spatiales qui en découlent. Vous exploiterez la base de données des adresses pour l'envoi de courriers institutionnels dans une zone géographique déterminée. Vous serez aussi en charge du contrôle, de l'intégration et de l'exploitation des données métiers produites par les services pour leur utilisation transversale, pour la production des plans thématiques utiles aux opérations de communication ou d'aide à la décision et pour leur publication éventuelle sur le site OpenData de la Collectivité.

Objectifs du TP Mise en situation professionnelle Mission fictive : vous êtes géomaticien au service « Géomatique » de l’Agence de l’eau Adour Garonne

Cahier des charges Mission fictive Architecture logicielle Données sources à disposition

Cahier des charges Mission fictive Une étude vise actuellement à étudier finement les plans d’eau (lacs, étangs, …) de la région Occitanie Pyrénées Méditerranée. Le chargé de mission de l’agence de l’eau s’intéresse tout particulièrement aux plans d’eau situés dans les communes bordant le fleuve de la Garonne ou dans un périmètre de 10 km du centre de la commune de Toulouse. Mission = fournir au chargé de mission : Un fichier CSV indiquant la longueur totale du fleuve Garonne Un fichier KML des plans d’eau répondant aux critères ci-dessus Un fichier CSV des plans d’eau de plus de 20 hectares parmi ceux répondant aux critères ci-dessus Une carte interactive simple (mise en forme de « base ») permettant de visualiser la Garonne, les départements de la région Occitanie, les communes bordant la Garonne, la zone tampon autour de Toulouse et les plans d’eau qui intersectent ces deux dernières zones. Un fond de carte sera fourni en plus des fonds de carte standards.

Cahier des charges Mission fictive Architecture logicielle Serveur PostgreSQL/PostGIS : Créer une base de données et y importer les fichiers de données spatiales fournis pour ensuite effectuer les traitements et exports Créer en amont un utilisateur administrateur de la base de données QGIS Desktop Attention le chargé de mission ne possède pas de logiciel SIG (QGIS ou autre), inutile donc de lui fournir des couches de type shapefiles Vous utiliserez QGIS seulement pour : Importer les données spatiales dans la base de données Visualiser vos tables de données importées et générées Générer la carte interactive via qgis2web

Cahier des charges Mission fictive Architecture logicielle Données sources à disposition Nom Format Type Fournisseur DEPARTEMENT shp Vecteur MULTIPOLYGON IGN ADMINEXPRESS COMMUNE CHEF_LIEU Vecteur POINT garonne geojson Vecteur MULTILINESTRING SANDRE plan_eau_occitanie KML franceraster_1000k jpeg Raster image non tuilée IGN FRANCERASTER

Méthodologie à suivre Créer l’utilisateur administrateur de la BDD Créer la connexion en tant qu’admin Créer la BDD (en tant qu’admin) Activer l’extension PostGIS (en tant que superutilisateur) Créer un schéma spécifique pour les données « métier » Configurer le chemin de parcours des schémas (search_path) Explorer les données sources dans QGIS Importer les données vectorielles et raster Visualiser les tables PostGIS dans QGIS pour valider les imports Exécuter des requêtes SQL pour analyser les données et visualiser les résultats des tables générées dans QGIS pour valider Exporter les résultats selon les formats CSV et KML attendus Créer la carte interactive via qgis2web

1. Créer l’utilisateur administrateur de la BDD En tant que superutilisateur : CREATE ROLE admin_miashs LOGIN ENCRYPTED PASSWORD 'md59f1021e0f09d972e64a6af14407cb31a' CREATEDB CREATEROLE VALID UNTIL 'infinity'; Mot de passe : admin

2. Créer la connexion en tant qu’admin

3. Créer la BDD

4. Activer l’extension PostGIS pour cette BDD Attention il faut avoir les droits de superutilisateur

5. Créer un schéma spécifique pour les données « métier » CREATE SCHEMA tp AUTHORIZATION admin_miashs; GRANT ALL ON SCHEMA tp TO admin_miashs;

6. Configurer le chemin de parcours des schémas (search_path) ALTER DATABASE tp_miashs SET search_path = "$user", tp, public;

7. Explorer les données sources dans QGIS

8. Importer les données vectorielles et raster 8.1. Créer une nouvelle connexion dans QGIS en tant qu’admin à la BDD

8. Importer les données vectorielles et raster 8.2. Importer les couches vectorielles une à une via le gestionnaire de BD dans QGIS (ou via utilitaires shp2pgsql et ogr2ogr)

8. Importer les données vectorielles et raster Pour les données geojson :

8. Importer les données vectorielles et raster Pour le KML :

8. Importer les données vectorielles et raster Résultat : Vue geometry_columns dans pgAdmin

8. Importer les données vectorielles et raster 8.3. Importer le raster via l’utilitaire raster2pgsql (avec tuiles de 50x50) Résultat : Vue raster_columns dans pgAdmin

9. Visualiser les tables PostGIS dans QGIS pour valider les imports

10. Exécuter des requêtes SQL pour analyser les données Rappel Mission : Critères : plans d’eau situés dans : communes bordant le fleuve de la Garonne ou Zone tampon de 10 km autour du centre de la commune de Toulouse Mission = fournir au chargé de mission : Un fichier CSV indiquant la longueur totale du fleuve Garonne Un fichier KML des plans d’eau répondant aux critères ci-dessous Un fichier CSV des plans d’eau de plus de 20 hectares parmi ceux répondant aux critères ci-dessous Une carte interactive simple (mise en forme de « base ») permettant de visualiser la Garonne, les départements de la région Occitanie, les communes bordant la Garonne, la zone tampon autour de Toulouse et les plans d’eau qui intersectent ces deux dernières zones. Un fond de carte sera fourni en plus des fonds de carte standards.

10. Exécuter des requêtes SQL pour analyser les données 1) Longueur du fleuve Garonne en km Si la table garonne est en RGF93-Lambert93 (SRID 2154), alors l’unité est le m donc pour obtenir la longueur en km, il faut diviser par 1000 SELECT (sum(st_length(geom))/1000) AS longueur_garonne_km FROM tp.garonne; Si la table garonne est en WGS84 (SRID 4326 en degrés), il faut transformer le système de projection dans un système ayant comme unité le mètre, comme c’est le cas pour RGF93-Lambert93 (2154) (sum(st_length(st_transform(geom,2154)))/1000) AS longueur_garonne_km

10. Exécuter des requêtes SQL pour analyser les données 1) Longueur du fleuve Garonne en km Résultat = 717 km + Export en CSV

10. Exécuter des requêtes SQL pour analyser les données 2) Sélection des plans d’eau situés dans les communes bordant le la Garonne ou dans la zone tampon de 10 km autour de Toulouse Plusieurs requêtes sont nécessaires Plusieurs solutions possibles, en voici une : departement commune garonne chef_lieu Plan_eau_occitanie Requête A Requête B dpt_occitanie com_occitanie Requête C Requête D com_garonne Toulouse_buffer Requête E resultat_final

10. Exécuter des requêtes SQL pour analyser les données 2) Sélection des plans d’eau situés dans les communes bordant le la Garonne ou dans la zone tampon de 10 km autour de Toulouse Requête A : créer la vue dept_occitanie (départements région Occ.) CREATE OR REPLACE VIEW tp.dept_occitanie AS SELECT row_number() OVER () as gid, departement.id, departement.geom, departement.nom_dep, departement.insee_dep, departement.insee_reg FROM departement WHERE departement.insee_reg::text = '76'::text; ALTER TABLE tp.dept_occitanie OWNER TO admin_miashs;  Utile pour créer un identifiant unique dans la vue, facilitant l’affichage de cette dernière dans QGIS

10. Exécuter des requêtes SQL pour analyser les données 2) Sélection des plans d’eau situés dans les communes bordant le la Garonne ou dans la zone tampon de 10 km autour de Toulouse Requête B : créer la vue com_occitanie (communes région Occitanie) CREATE OR REPLACE VIEW tp.com_occitanie AS SELECT row_number() OVER () AS gid, commune.id, commune.geom, commune.nom_com, commune.insee_dep, commune.insee_reg FROM commune WHERE commune.insee_reg::text = '76'::text; ALTER TABLE tp.com_occitanie OWNER TO admin_miashs;

10. Exécuter des requêtes SQL pour analyser les données 2) Sélection des plans d’eau situés dans les communes bordant le la Garonne ou dans la zone tampon de 10 km autour de Toulouse Requête C : créer la table commune_garonne (communes bordant la Garonne) CREATE TABLE tp.commune_garonne AS SELECT DISTINCT c.gid, c.id, c.nom_com, c.insee_dep, c.geom FROM tp.com_occitanie AS c, (SELECT geom FROM tp.garonne) AS g WHERE st_distance(c.geom, g.geom)<1; ALTER TABLE tp.commune_garonne OWNER TO admin_miashs; NB : Il vaut mieux créer une table plutôt qu’une vue car ça fige le contenu sans nécessité de recalculer à la volée (inutile ici)

10. Exécuter des requêtes SQL pour analyser les données 2) Sélection des plans d’eau situés dans les communes bordant le la Garonne ou dans la zone tampon de 10 km autour de Toulouse Requête D : créer la table toulouse_buffer (zone tampon 10 km) CREATE TABLE tp.toulouse_buffer AS SELECT st_buffer(geom,10000) AS geom FROM tp.chef_lieu WHERE nom_chf='Toulouse'; ALTER TABLE tp.toulouse_buffer ADD COLUMN id SERIAL UNIQUE, ADD CONSTRAINT toulouse_buffer_pkey PRIMARY KEY (id), ADD CONSTRAINT enforce_geotype_geom CHECK (geometrytype(geom) = 'POLYGON'::text), ADD CONSTRAINT enforce_srid CHECK (st_srid(geom) = 2154); CREATE INDEX toulouse_buffer_geom_idx ON tp.toulouse_buffer USING gist (geom);

10. Exécuter des requêtes SQL pour analyser les données 2) Sélection des plans d’eau situés dans les communes bordant le la Garonne ou dans la zone tampon de 10 km autour de Toulouse Requête E : requête finale (méthode avec st_intersects) CREATE TABLE tp.resultat_final_intersects AS SELECT DISTINCT p.id, p.geom, (st_area(p.geom)/10000) as aire_ha FROM tp.plan_eau_occitanie as p, tp.toulouse_buffer as t, tp.commune_garonne as c WHERE st_intersects(t.geom,p.geom) OR st_intersects(c.geom,p.geom); ALTER TABLE tp.resultat_final_intersects ADD CONSTRAINT resultat_final_intersects_pkey PRIMARY KEY (id), ADD CONSTRAINT enforce_geotype_geom CHECK (geometrytype(geom) = 'MULTIPOLYGON'::text), ADD CONSTRAINT enforce_srid CHECK (st_srid(geom) = 2154); CREATE INDEX resultat_final_intersects_geom_idx ON tp.resultat_final_intersects USING gist (geom); NB : Il faut utiliser st_intersects plutôt que st_contains dans ce cas sinon les plans d’eau qui chevauchent les limites ne sont pas sélectionnés

10. Exécuter des requêtes SQL pour analyser les données 2) Sélection des plans d’eau situés dans les communes bordant le la Garonne ou dans la zone tampon de 10 km autour de Toulouse Validation dans QGIS

10. Exécuter des requêtes SQL pour analyser les données 3) Sélection des plans d’eau dont l’aire est supérieure à 20 hectares parmi ceux présélectionnés SELECT id, aire_ha FROM resultat_final_intersects WHERE aire_ha > 20 ORDER BY aire_ha DESC; Résultat : 9 plans d’eau + export CSV

11. Exporter les résultats selon les formats CSV et KML attendus Exports CSV : OK Export KML de la couche des plans d’eau situés dans les communes bordant la Garonne ou dans un périmètre de 10 km autour de Toulouse Via l’invite de commande de Windows : Attention, l’utilitaire ogr2ogr renvoie un message d’erreur (format non reconnu, or dans la liste !) Via la suite OSGEO4W, l’utilitaire ogr2ogr de GDAL fonctionne ! (même paramètres que ci-dessus) Via QGIS

11. Exporter les résultats selon les formats CSV et KML attendus Exports CSV : OK Export KML de la couche des plans d’eau situés dans les communes bordant la Garonne ou dans un périmètre de 10 km autour de Toulouse Validation dans Google Earth

12. Créer la carte interactive via qgis2web NB : certaines tables ou vues de PostGIS n’apparaissant pas dans la carte interactive, il a fallu reprendre les données sources (cas de garonne.geojson) ou les données transformées dans un autre format (cas du KML de résultats)

12. Créer la carte interactive via qgis2web