Utilisation de PostgreSQL/PostGIS pour g - PowerPoint PPT Presentation

1 / 39
About This Presentation
Title:

Utilisation de PostgreSQL/PostGIS pour g

Description:

Exemple pr cisant en d tail l'utilisation de la charte graphique pour des pr sentations powerpoint – PowerPoint PPT presentation

Number of Views:116
Avg rating:3.0/5.0
Slides: 40
Provided by: Admini660
Category:

less

Transcript and Presenter's Notes

Title: Utilisation de PostgreSQL/PostGIS pour g


1
Utilisation de PostgreSQL/PostGIS pour gérer la
base de données topographique française
2
Plan de la présentation
  • Contexte pourquoi PostgreSQL/PostGIS?
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications de PostgreSQL/PostGIS à lIGN
    France

3
Contexte Pourquoi PostgreSQL/PostGIS ?
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications

4
Contexte bases de données avant 2002
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications
  • BDTopo
  • Vocation référentiel géographique 3D de haute
    précision
  • Thèmes réseau routier, réseau ferré, réseau
    hydrographique, bâtiments, végétation, surfaces
    administratives
  • Sources restitution sur photographies aériennes
  • Constitution de 1990 à 2006 2007
  • Échelle gt 1/10 000
  • Précision ? 2 m

5
Contexte bases de données avant 2002
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications
  • Géoroute
  • Vocation calcul ditinéraires, navigation
    embarquée, géocodage.
  • Thèmes réseau routier, restrictions de
    circulation, équipement (hôpital, police )
  • Couvre les zones urbaines des données moyenne
    échelle assure le lien entre ces zones.
  • Sources hétérogènes
  • BDTopo
  • Cadastre
  • BDCarto
  • Constitution entre 1995 et 2000.
  • Echelle gt 1/20 000
  • Précision ? 10 m

6
Contexte bases de données avant 2002
  • BDCarto
  • Vocation référentiel moyenne échelle
  • Thèmes réseau routier, réseau hydrographique,
    occupation du sol, limite administrative
  • Sources vectorisation de carte (échelle 1/50
    000)
  • Constitution entre 1986 et 1993
  • Echelle 1/100 000
  • Précision ? 30 m
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications

7
Contexte éléments techniques
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications

BD TOPO GEOROUTE BD CARTO
Serveur ? ? Oracle Arc/Info
SIG GéoConcept GéoConcept GéoConcept, Arc/Info
Bases de données 1 par département (100 blocs) 50 blocs 1 pour toute la France
Mise à jour Irrégulière sur photographies aériennes Irrégulière Régulière (pour les principaux thèmes)
8
Nouvelle étape la mise à jour en continue
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications
  • Nouvel objectif mise à jour en continue pour la
    BDTopo, Géoroute et BDCarto.
  • Principe
  • Collecter linformation de mise à jour une seule
    fois. Principales sources
  • Partenaires (gestionnaires de réseaux,
    administrations locales, pompiers, ...)
  • Collecte
  • La propager dans les bases.
  • Mise à jour décentralisée
  • 7 unités de production (5 en dehors de Paris)
  • 120 collecteurs

9
2002 un nouveau projet
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications
  • Objectifs
  • Unification
  • Rendre la mise à jour plus facile
  • Conserver les avantages des 2 produits
  • Implémentation dun nouveau système pour
    sauvegarder, gérer et mettre à jour les bases de
    données vecteur de lIGN
  • Bases dun seul bloc sur la France métropolitaine
  • Mise à jour décentralisée
  • Possibilité de travailler sur le terrain
    (déconnecté)

10
2002 un nouveau projet
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications

11
Première approche
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications
  • Un marché touffu
  • Technologies variées (Oracle, ESRI, IBM, Oracle,
    GéoConcept)
  • Coûts variés
  • Définition des besoins
  • Etape difficile par manque dexpérience du projet
    et des équipes de production.
  • ? Nous navions pas assez dexpérience pour
    rédiger lappel doffre
  • Un existant IGN
  • Grande utilisation du SIG Géoconcept (production,
    mise à jour, développement)
  • PostgreSQL utilisé par une autre équipe IGN

12
2004 Prototypage
  • Objectifs
  • Augmenter les compétences techniques de léquipe
  • Mieux définir le besoin
  • Recherche dune IHM et dun protocole opératoire
  • Point de départ
  • Client SIG Géoconcept
  • Serveur PostgreSQL/PostGIS (gratuit, facile à
    apprendre et compétence à lIGN)
  • Client Serveur communication A développer
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications

13
2004 Prototypage
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications

Géoconcept
Géoconcept
Géoconcept
Géoconcept
  • Développement dun outil permettant de
    synchroniser les données entre les n clients et
    le serveur
  • Tests de PostgreSQL (transaction)
  • Les utilisateurs sont impliqués dans le suivi /
    guidage des développements

14
2005 - 2006 industrialisation et production
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications
  • Le prototype donne de bons résultats (coût,
    besoins, IHM)
  • ? Industrialisation du prototype
  • Traitement des cas difficiles
  • Paramétrages fins
  • Test du système (bases de données massives)
  • Vérification daptitude
  • Production
  • Printemps 2006 montée en base de
    lagglomération parisienne
  • 03/2008 toute la France métropolitaine sur le
    système

15
Fonctionnalités client serveur
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications

16
GCVS principes
BDUni France entière PostgreSQL / PostGIS
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications

GCVS
SIG du collecteur (Géoconcept)
  • GCVS Geographic Concurrent Versioning System
  • Développement avec visual C (utilisation du
    pilote ODBC)
  • 3 principales fonctions accessibles depuis
    Géoconcept
  • Montée en base des données
  • Extraction des données
  • Synchronisation des clients

17
GCVS montée en base
? Prend les données sous Géoconcept et les charge
sur le serveur PostgreSQL
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications

BDUni PostgreSQL / PostGIS
Montée en base
gtbegin
gtinsert into road segments
gt insert into road segments
gt Insert into buildings
gtinsert into administrative_boundary
.
gtcommit
  • Utilisé une fois par zone géographique
  • Transactionnel

18
GCVS extraction
? Extrait une zone sur le serveur PostgreSQL et
transfère ces données sous Géoconcept pour la
mise à jour.
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications

BDUni France entière PostgreSQL / PostGIS
Extraction
Géoconcept
  • Plusieurs collecteurs peuvent extraire la même
    zone en même temps

19
GCVS synchronisation des données
  • Envoie les mises à jour des postes clients sur le
    serveur et les mises à jour du serveur sur les
    autres clients.
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications
  • Si 2 collecteurs mettent à jour le même objet, un
    conflit est généré et lun des 2 collecteurs doit
    le résoudre
  • Travail déconnecté
  • Synchronisation à la demande

20
Déroulement dune mise à jour
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications
  • T1 le collecteur A met à jour une route sous
    Géoconcept

3
1
4
1
Autoroute
Autoroute
6
2
2
5
  • T2 le collecteur A crée une zone de
    réconciliations avec des métadonnées de mise à
    jour

3
1
4
Création dune bretelle
Autoroute
6
2
5
  • T3 (à la demande) synchronisation

21
GCVS implémentation
  • GCVS doit être capable de retrouver rapidement
    les objets détruits, créés et modifiés sur les
    clients et sur le serveur. Pour cela
  • Sur le serveur, chaque objet a
  • Un identifiant
  • Un numéro de réconciliation
  • Sur le client
  • Chaque objet a un identifiant
  • Un fichier MS Access contient
  • La correspondance entre lidentifiant client et
    lidentifiant serveur.
  • Une clé md5 de chaque objet client (mise à jour
    après chaque réconciliation)
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications

22
GCVS implémentation
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications
  • Exemple dune modification sur le client

Autoroute
Nationale
  • GCVS
  • Détecte une modification sur le poste client par
    comparaison des clés md5
  • Calculée sur lobjet
  • Stockée dans le fichier Access
  • Recherche si lobjet na pas déjà été modifié sur
    le serveur

23
GCVS de nombreuses possibilités
  • Paramétrage avec des fichiers XML
  • Correspondance entre les classes dobjets du SIG
    et les tables du serveur.
  • Une classe dobjet peut être en lecture/écriture.
  • Des profils variés en production
  • Lecture seule (cartographes, contrôle qualité)
  • Mise à jour des unités administratives par une
    seule personne sur tout le territoire
  • Recherche des objets non synchronisés
  • Traitement des liens
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications

24
Structure des données sur le serveur
  • Table des tronçons de route
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications

Identifiant Numéro de réconciliation Nom de la rue . Date de création Date de modification Date de destruction
TR1 10 Rue Picasso 03/01/2009 05/01/2009
TR2 11 Rue Matisse 03/01/2009 06/01/2009
  • Table historique des tronçons de route

Identifiant Numéro de réconciliation Nom de la rue . Date de création Date de modification Date de destruction
TR1 1 Rue Mozart 03/01/2009
Cette structure permet la réplication et le
calcul des évolutions entre 2 dates (différentiel)
25
Réplication maison
Permet davoir une copie de la base de production
en quelques minutes réplication maitre /
esclave.
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications

Base à t0
Copie à t0
Dump/Restore
Replication
Mise à jour
Base à t1
Copie à t1
Les évolutions entre t0 et t1 sont transférées
dans la copie à t0
26
Résultats - Conclusions
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications

27
La base unifiée aujourdhui
  • Serveur de production
  • 1 base de données pour la France métropolitaine
  • 118 Go
  • 124 tables et 124 tables historiques
  • 160 millions dobjets
  • 19 millions dobjets végétations (17 Go)
  • 16 millions de tronçons de route (13 Go)
  • 23 millions de bâtiments (12 Go)
  • 32 millions dobjets dans les tables historiques
  • Des indexes de plus de 1 Go (identifiant,
    indexes géométriques)
  • 6 bases de données pour les territoires
    doutre-mer (Martinique, Réunion, Guyane )
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications

28
La base unifiée aujourdhui
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications
  • Serveur de production
  • Server DELL, PowerEdge 6850, 4 processeurs
  • Disque 5 x 300 Go 10 000 rpm SCSI, dont 4 en
    RAID 1
  • RAM 12 Gb
  • Serveur de secours
  • 1 base de données restaurée chaque semaine
    (sauvegarde)
  • 1 base de données en lecture seule contrôle
    qualité, démos,
  • réplication toutes les 30 minutes
  • Réseau 1Mbit/s entre Paris et les CIRs

29
Maintenance de la solution
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications
  • DBA PostgreSQL/PostGIS
  • 1/3 temps (ingénieur système unix)
  • Sauvegarde, réplication, quelques interventions
    (déblocage)
  • Maintenance évolutive (spécifications )
  • Maintenance GCVS
  • 1 temps plein (ex développeur au projet)
  • Rattrape de production
  • Maintenance évolutive (amélioration logicielle
    )
  • Soutien de léquipe projet (1/4 temps)

30
PostgreSQL/PostGIS retour dexpérience
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications
  • Facile à prendre en main
  • Gratuit et open-source
  • Nombreuses possibilités daccès et de
    développement (ODBC, libpq )
  • ? Prototypage rapide
  • Performance
  • Gestion de bases de données massives
  • Capacité à répondre rapidement aux requêtes
  • Transaction

31
Comparaison avec une solution commerciale
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications

Solution commerciale Solution IGN avec PostgreSQL
Couts (Licences clients serveur formation adaptation ou développement) Moyen à élevé (gt 750 k) faible (300 k)
Maitrise technique Niveau utilisateur Niveau utilisateur développeur
Délais Risque lié à lappel doffre (compliqué en France) 1 an Temps des développements et des tests 1,5 an
Réseau Peut nécessité ladaptation du réseau Pas de changements
SIG Inconnu Conservation de Géoconcept
32
Autres applications autour PostgreSQL/PostGIS à
lIGN France
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications

33
Flux de données vue générale
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications

Archivage (entrepôt)
Production
Diffusion
BDUni
Géoconcept
BDParcellaire
Produits dérivés
  • Fichiers
  • Données Vecteur Format FEIV
  • Métadonnées Fichiers XML ISO19115

BDAlti
  • Diffusion classique massive (batch)
  • Service internet
  • Visualisation public Géoportail
  • Interrogation métadonnées (intranet)

BDGéodésique
Orthophotographies
Bases carto
34
Base de données altimétriques (2006)
  • 80 Go
  • Vecteur courbes, points côtés
  • Raster MNT
  • Métadonnées
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications

BASALT
PostGreSQL/PostGIS LINUX
lt 5 clients
  • Logiciel maison
  • Visual c avec ODBC

ExploZOE Windows
Consultation
Intégration
Edition
Modification
35
Base de données géodésique
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications

Base de données PostgreSQL
  • 70 Go
  • Vecteur (Bornes )
  • Raster (Photos)
  • Plusieurs schémas

36
Stockage et consultation des métadonnées
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications
  • Stockage sur PostgreSQL
  • 50 Go
  • 20 millions dobjets dans la table de registre
    (ebRIM)
  • Fichiers XML (norme ISO19115)
  • Consultation sur lintranet de lIGN (CSW)
  • Utilisation du logiciel RedSpider

37
Géoportail (2007)
  • Accès en ligne pour le grand public à la donnée
    géographique
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications
  • PostgreSQL est seulement utilisé pour stocker les
    données vecteur (300 Go) et pour pré-calculer les
    tuiles de données à afficher
  • Bientôt service WMS and WFS (Geoserver)

38
Diffusion extraction
BDTopo France entière PostgreSQL
  • Contexte
  • Fonctionnalités Client / Serveur
  • Résultats / Conclusions
  • Autres applications

Extraction
Livraison dans différentes emprises et formats
39
Conclusion
  • PostgreSQL/PostGIS est devenu le principal SGBD à
    lIGN France.
  • Il est utilisé pour
  • Stocker des bases de données massives et variées
  • Consulter et mettre à jour les données avec des
    logiciels maisons
  • Solution attractive et robuste

Merci pour votre attention
Write a Comment
User Comments (0)
About PowerShow.com