Le monde des SIG est vaste, aussi bien en matière de type de stockage des données que de logiciel d'édition de ces dernières. Alors pourquoi utiliser PostGIS plutôt qu'un autre logiciel ?

Un besoin de centralisation des données

Lorsque l'on travaille avec des données SIG, de nombreux fichiers sont utilisés. Au fur et à mesure que le système grandit, le nombre de données augmente en même temps que le nombre de fichiers. Il devient alors compliqué de les gérer et de les organiser. Souvent, plusieurs types de fichiers cohabitent et certains impliquent l'utilisation de logiciels spécifiques pour pouvoir les utiliser. La meilleure des solutions est alors de centraliser toutes ces données au sein d'une base de données. L'accès est plus rapide, mieux organisé, plus sécurisé et surtout compatible avec la plupart des logiciels SIG.

La puissance de PostgreSQL

PostGIS repose sur le système de gestion de base de données PostgreSQL. Il bénéficie donc de tous les avantages de ce dernier : facilité d'installation et de gestion, puissance de traitement, respect de la norme SQL, compatibilité avec tous les systèmes d'exploitation, mises à jour régulières, développement open-source. PostgreSQL est en plus totalement gratuit, ce qui est un excellent point de démarrage pour créer une première base de données SIG.

PostGIS est lui aussi gratuit. Son développement est basé sur les standards de l'Open Geospatial Consortium (OGC) et les mises à jour régulières améliorent constamment ses performances. L'installation est simple, de même que les mises à jour.

Stockage, analyse et polyvalence

Un avantage de PostGIS vient du fait qu'il s'agit à la fois d'un moyen de stockage de données et d'un outil d'analyse spatiale. Il est ainsi possible de faire calculer des opérations par la base de données sans logiciel tiers. De plus, il supporte à la fois les données vecteur et les données raster ainsi que de nombreux formats comme le GeoJSON, le KML, les MVT (Mapbox Vector Tiles) ce qui permet d'interagir avec de multiples applications web.

Avec PostGIS, il devient possible de traiter efficacement de grandes quantités de données spatiales, simplement et beaucoup plus rapidement qu'à partir de fichiers plats. Il est également aisé d'automatiser les traitements pour des tâches régulières.

Travail collaboratif et soutien communautaire

Une base de données simplifie le travail à plusieurs. En effet, il est tout à fait possible d'intervenir en même temps sur les mêmes tables, PostgreSQL s'occupe de conserver l'intégrité des données.

Il existe plusieurs sociétés qui proposent une assistance sur PostGIS mais son taux d'adoption est tel qu'il en résulte une communauté d'utilisateurs à même de répondre à n'importe quelle question.

Qui utilise PostGIS ?

Pour toutes ces raisons, PostgreSQL + PostGIS est aujourd'hui le système de gestion de bases de données spatiales le plus utilisé dans le monde des SIG. Voici quelques organisations qui l'ont choisi pour gérer leurs données : OpenStreetMap (OSM), projet collaboratif de cartographie en ligne ; l'Institut Géographique National (IGN) (France) ; CartoDB, service de cartographie en ligne ; la National Oceanographic and Atmospheric Administration (NOAA – US) ; et Instagram (qui a choisi PostgreSQL en raison de PostGIS).

Alternatives à PostGIS

PostgreSQL + PostGIS n'est bien sûr pas la seule base de données spatiales qui existe. Plusieurs alternatives se côtoient, qu'elles soient propriétaires ou ultra-légères, anciennes ou toutes récentes.

Les solutions propriétaires

Tout a commencé avec Oracle Spatial Data Option (SDO) (Oracle 7), renommée ensuite Oracle Spatial. Il s'agissait à l'origine d'une extension onéreuse, c'est la raison pour laquelle une version basique offrant le strict minimum en termes de support spatial (Oracle Locator) était incluse dans chaque installation. Cette extension est maintenant incluse gratuitement avec la licence Oracle. Les possibilités offertes sont excellentes tant sur le plan performances que fonctionnalités, même si elles n'atteignent pas le niveau de PostGIS.

Microsoft SQL Server a introduit le type spatial avec SQL Server 2008. Les fonctionnalités spatiales restent très limitées en comparaison de PostGIS.

Les bases orientées web

MySQL et MariaDB sont beaucoup utilisés pour le développement web et supportent les données spatiales. Cependant, la maturité de leurs moteurs SQL et de leurs moteurs d'indexation ne peuvent rivaliser avec PostGIS malgré l'amélioration constante de leurs performances. Les analyses spatiales poussées sur de gros jeux de données sont donc à exclure dans ce cas.

Les solutions légères et portables

SpatiaLite et GeoPackage sont les plus récents et reposent tous les deux sur SQLite qui est une base de données portable open-source. SpatiaLite se base sur les mêmes bibliothèques que PostGIS (GEOS, PROJ et GDAL), ce qui lui permet d'utiliser les mêmes types géométriques et le même système de nommage de fonctions. Il gère également le format raster. GeoPackage, lui, est avant tout dédié au stockage des données vecteur et raster et n'inclut pas de fonctions d'analyse spatiale. Il est de plus en plus utilisé, notamment par QGIS comme format d'export par défaut. Cependant, ses possibilités de requêtage sont limitées notamment en terme d'agrégation mais le fait que les données soient stockées dans un fichier unique le rend facilement transportable et déployable, y compris sur des terminaux mobiles.

Les bases NoSQL

Les bases NoSQL (Azure Cosmo DB, Google Cloud Firestore, MongoDB, Elasticsearch) implémentent également le support des données spatiales même si ces fonctionnalités sont bien loin des possibilités offertes par PostGIS.

Conclusion

Bien qu'il existe plusieurs alternatives, PostGIS conserve d'excellents atouts sur ses adversaires : sa gratuité certes mais aussi et surtout ses performances parmi les meilleures.