Formation PostgreSQL/PostGIS – Core development

Synopsis

Cette session de formation vous permettra de disposer d’une vision claire sur l’architecture bas niveau de PostgreSQL, PostGIS et de GEOS, et vous permettra d’envisager des extensions de ce SGBD spatial et/ou de mettre en place vos propres plugin PostgreSQL.

Cette session est assurée par un core développeur PostGIS.

Objectifs

  • Connaitre les principes d’architecture bas niveau de PostGIS et GEOS
  • Etre capable de rentrer dans le code existant de PostGIS
  • Etre capable d’enrichir le code existant pour répondre à des besoins spécifiques

Durée

  • 3 jours

Pré-Requis

  • Bon niveau en ANSI C
  • Aisance sous un unix like

Programme indicatif

Architecture bas niveau de PostGIS et GEOS
  • Fonctions de la librairie liblwgeom
  • Fonctions C natives PostGIS
  • Les principaux fichiers .h
  • Fonctions Pl/PgSQL
  • API GEOS
API PostgreSQL
  • Plugin minimaliste PostgreSQL en C
  • principales macros et fonctions API PostgreSQL
  • API SPI (accés aux données via du SQL, depuis un module C)
  • Retourner de multiples enregistrements (SETOF)
Representation interne des géométries
  • Rappels des représentations OGC SFS et ISO SQL/MM
  • Parseur EWKT, EWKB PostGIS
  • Structure interne ptarray
  • Le type Geography
  • Les types Curvilignes
  • Les représentations de géométrie dans GEOS
GEOS
  • Architecture interne de GEOS
  • API C et fonctions exposées depuis PostGIS
  • Représentation interne des géométries
  • Tour d’horizon des principales fonctions
Scripts de compilation
  • PGXS
  • autotools et Makefile
Principales fonctions et lien avec le code bas niveau
  • Fonctions sur des géométries euclidiennes
  • Fonctions sur les sphéroides
  • Fonctions d’import et d’export de géométries
  • Fonctions topologiques
Test unitaires
  • Cunit
  • PostGIS unit tests
Documentation
  • DocBook
  • Génération d’un document PDF et XHTML
Lien avec la librairie Proj4 et les fonctions de reprojections
Les index spatiaux bas niveaux
Communauté de développeurs
  • Conventions de codage PostGIS et GEOS
  • Préparer et envoyer un patch
  • Les mailings list de développement

Réservation et contact

Prochaines Dates

  • Sur demande