Un GeoPackage (.gpkg) est un format de fichier ouvert et normalisé pour les données géospatiales, construit sur SQLite. Un seul fichier .gpkg peut contenir des entités vectorielles, des couvertures raster, de l'imagerie tuilée, des tables attributaires et des métadonnées réunies — le tout dans une base de données autonome. Il est défini par une norme de l'Open Geospatial Consortium (OGC).

Ce que c'est et pourquoi c'est important

GeoPackage a été conçu comme un remplaçant moderne du format Shapefile vieillissant. Comme il s'agit d'un fichier SQLite unique, il contourne les limitations bien connues du Shapefile : l'amas de fichiers annexes (.shp/.shx/.dbf/.prj), la limite de taille de 2 Go, la limite de 10 caractères pour les noms de champs et la gestion fragile des attributs non ASCII.

Pour les équipes SIG et de géologie, c'est important parce qu'un seul fichier peut transporter tout un jeu de données en couches — unités géologiques, failles, points d'échantillonnage et une pyramide de tuiles de MNT — avec des attributs en UTF-8 complet et un SCR défini. Il est multiplateforme, ne nécessite aucun serveur et est lu et écrit nativement par QGIS, GDAL/OGR, ArcGIS et la plupart des outils modernes.

Exemple concret

Convertir un Shapefile en GeoPackage avec ogr2ogr de GDAL :

ogr2ogr -f GPKG units.gpkg units.shp -nln geological_units

Le fichier units.gpkg obtenu est une base de données SQLite interrogeable. Vous pouvez ajouter d'autres couches dans le même fichier et même l'ouvrir avec des outils SQLite standard pour exécuter des requêtes SQL sur la table gpkg_contents qui répertorie chaque couche.

Piège courant

GeoPackage est excellent pour le stockage et l'échange, mais ce n'est pas une base de données multi-utilisateurs concurrente — SQLite verrouille l'ensemble du fichier lors d'une écriture. Pour plusieurs éditeurs accédant simultanément aux mêmes données, utilisez plutôt PostGIS. GeoPackage brille pour l'édition mono-utilisateur, la livraison et l'usage hors ligne.

Pour aller plus loin