Formats I/O supportés
GISPulse utilise PyOGRIO pour la lecture et l'écriture vectorielle et Rasterio pour le raster. La détection du format est automatique basée sur l'extension du fichier.
bash
# Lister les formats disponibles sur votre installation
gispulse formatsFormats vectoriels
Formats recommandés
| Extension | Format | Lecture | Écriture | Notes |
|---|---|---|---|---|
.gpkg | GeoPackage | oui | oui | Recommandé — multi-layers, styles, performant |
.fgb | FlatGeobuf | oui | oui | Ultra-rapide pour gros volumes, indexé spatialement |
.parquet | GeoParquet | oui | oui | Optimal pour données tabulaires larges, natif DuckDB |
.geojson | GeoJSON | oui | oui | Standard web, interopérable |
.geojsonl | GeoJSON Lines | oui | oui | Streaming, gros volumes |
Formats courants
| Extension | Format | Lecture | Écriture | Notes |
|---|---|---|---|---|
.shp | ESRI Shapefile | oui | oui | Héritage — préférer GPKG |
.csv | CSV (lat/lon ou WKT) | oui | oui | Détection auto colonnes géométrie |
.dxf | AutoCAD DXF | oui | oui | CAD |
.kml | KML / KMZ | oui | non | Google Earth |
.gml | GML | oui | oui | OGC standard |
.gpx | GPX | oui | non | GPS tracks |
Formats bases de données
| Format | Lecture | Écriture | Notes |
|---|---|---|---|
| PostGIS | oui | oui | Via GISPULSE_DSN (Pro) |
| SpatiaLite | oui | oui | Mode portable, sessions éphémères |
| GeoDatabase ESRI (.gdb) | oui | non | Read-only |
| OGC WFS | oui | non | Via OGCLayerLoader (lazy loading) |
| OGC API Features | oui | non | Standard OGC moderne |
Lecture par lots (chunked)
Pour les fichiers volumineux, read_vector_chunked() permet une lecture par lots de 50 000 features, évitant de charger tout en mémoire.
Formats raster (avec gispulse[raster])
| Extension | Format | Lecture | Écriture |
|---|---|---|---|
.tif, .tiff | GeoTIFF | oui | oui |
.tif (COG) | Cloud-Optimized GeoTIFF | oui | oui |
.jp2 | JPEG2000 | oui | non |
.asc | ASCII Grid | oui | non |
.vrt | GDAL VRT | oui | non |
.img | ERDAS Imagine | oui | non |
.nc | NetCDF | oui | non |
.hdf, .h5 | HDF5 | oui | non |
.ecw | ECW | oui | non |
.sid | MrSID | oui | non |
.png | PNG (géoréférencé) | oui | non |
Raster
Les formats raster nécessitent pip install "gispulse[raster]" (dépendance rasterio).
Détection automatique
GISPulse détecte le format à partir de l'extension :
bash
# Format détecté automatiquement
gispulse run input.fgb --rules rules.json -o output.gpkg
gispulse run input.geojson --rules rules.json -o output.fgb
gispulse run input.shp --rules rules.json -o output.parquetSi le fichier n'a pas d'extension reconnue, forcer avec --layer et --crs.
Conseils de format
Pour de gros volumes (> 100 000 features)
- FlatGeobuf (
.fgb) — lecture/écriture la plus rapide, indexé spatialement - GeoParquet (
.parquet) — excellent pour les dizaines de colonnes attributaires, natif DuckDB - GPKG — polyvalent, supporte les styles
Pour l'interopérabilité GIS desktop
- GeoPackage (
.gpkg) — supporte les styles QGIS (QML) et SLD, multi-layers - GISPulse copie automatiquement les styles lors d'un pipeline
--all-layers
Pour le web / API
- GeoJSON — standard universel, lisible humainement
- FlatGeobuf — streaming performant pour les grandes datasets côté client
- MVT — tuiles vectorielles via l'endpoint
/ogc/collections/{id}/tiles/
Pour la data spatiale "moderne"
- GeoParquet — compatible DuckDB, Pandas, Arrow, cloud-native
- COG — Cloud-Optimized GeoTIFF pour le raster
Multi-layers (GPKG)
GeoPackage supporte plusieurs layers dans un seul fichier :
bash
# Traiter une layer spécifique
gispulse run projet.gpkg --rules rules.json -o output.gpkg --layer batiments
# Traiter toutes les layers (styles copiés)
gispulse run projet.gpkg --rules rules.json -o output.gpkg --all-layersbash
# Inspecter les layers d'un GPKG
gispulse layers projet.gpkg
3 layer(s):
- parcelles
- batiments
- routes