Vous utilisez GeoPackage au lieu de SpatiaLite et vice-versa?

36

J'utilise maintenant QGIS 2.18, qui inclut la prise en charge du format GeoPackage.

Je sais que GeoPackage est un substitut de Shapefile mais pas tout à fait, car GeoPackage dispose de capacités de base de données. En même temps, GeoPackage ne remplace pas complètement SpatiaLite, car il ne possède pas de requêtes ni de fonctions spatiales. En outre, Spatialite prend en charge GeoPackage.

Ainsi, dans le contexte de l'édition QGIS, quand est-il judicieux d'utiliser GeoPackage (et d'accéder à GeoPackage à partir de tâches SpatiaLite for Spatial SQL), et dans quels cas vaut-il mieux utiliser uniquement Spatialite?

Pahbloo Marks
la source
1
Je suis aussi intéressé par cette question. N'oubliez pas que la prise en charge de geopackage est actuellement limitée en raison d'un bogue de verrouillage après la première modification.
Hilpers
Mais cela était déjà résolu?! N'a pas rencontré de problèmes avec le 2.18.
Matte
Malheureusement, j'utilise 2.18.3
hilpers le 13/02/2017
Je l'ai testé avec la version 2.18.3 avec la procédure écrite dans l'ancien outil de suivi des bogues et je ne pouvais pas le reproduire. Dans quelles circonstances avez-vous eu le problème?
Matte
Je rencontre également le bogue de verrouillage après la première modification avec GeoPackage, mais uniquement lorsque j'utilise la nouvelle importation DWG / DXF dans 2.18.3. Je peux importer avec succès le fichier DWG et éditer dans un premier temps le fichier GeoPackage créé (par exemple, pour le géoréférencer avec le plugin Vector Bender). Mais une fois que je ferme le projet QGIS et que je rouvre, le bouton d’édition en bascule est grisé et GeoPackage ne peut plus être modifié.
Rob Willson

Réponses:

33

Une petite comparaison entre GeoPackage et SpatiaLite dans QGIS. Pour le moment, utiliser GeoPackage avec QGIS n’est pas vraiment productif. Peut changer assez vite cependant (voir addtions!).

Ajouts concernant le nouvel alias QGIS 2.99 QGIS 3, nov. 2017 (ajouté également à titre de comparaison): GeoPackage fonctionne maintenant presque sans problème dans QGIS 3. Des problèmes mineurs, liés à la version du développeur QGIS, ont été rencontrés. Le problème le plus problématique pour SpatiaLite est également résolu. Les colonnes peuvent être supprimées maintenant sans aucune solution de contournement supplémentaire. Les deux ne prennent toujours pas en charge l'écriture de rasters via l'interface graphique, ce qui n'est pas un gros problème, car les rasters d'une base de données ne constituent pas l'objectif principal. Les deux formats sont un très bon format de travail. GeoPackage se concentre sur le format de transport et sur SpatiaLite, un système de base de données facile à utiliser, doté de nombreux outils, permettant de créer un stockage de données local (car il s’agit plus d’un SGBDR que de format de fichier).

Les deux ont:

  1. transactionnel
  2. SQL et vues (mais les vues sont implémentées différemment dans le logiciel utilisant)
  3. "tout en un" couches vectorielles, symbologie et texte, raster
  4. tables d'attributs avec pratiquement aucune restriction par rapport au fichier de formes
  5. avez-vous besoin d'un VACUUM de temps en temps (stockage de données spécifique à la base de données)
  6. la plupart des types de géométrie (comme les courbes)

GeoPackage:

  1. est une norme OGC basée sur SQLite, cela signifie que la mise en œuvre devrait être plus cohérente dans différents logiciels; par exemple, la symbologie pourrait fonctionner dans QGIS et ArcMap à l'avenir lorsque des styles SLD sont utilisés
  2. assez jeune (2014), quelques problèmes avec QGIS jusqu'à la version 2.18 (mise à jour: bon support dans QGIS 3)
  3. permet de supprimer facilement les colonnes de QGIS pour les utilisateurs "normaux" opposés à SpatiaLite
  4. pour le moment, DB-Manager ne fonctionne pas très bien avec ce dernier et la prise en charge des rasters est limitée à la lecture d'un seul raster intégré (pas d'écriture) (avec QGIS 2.18.3) (mise à jour: DB-Manager fonctionne désormais correctement avec le géopackage)
  5. Les vues ne fonctionnent pas dans QGIS, mais via la couche virtuelle, ce n’est pas un problème si elles ne sont pas utilisées pour le partage entre plusieurs utilisateurs (mise à jour: toujours aucune vue, QGIS 3 pouvant créer des vues mais ne pouvant pas les lire après)
  6. les outils de géotraitement ne permettent pas l'ajout au fichier existant (remplace uniquement le fichier entier) (mise à jour: fonctionne maintenant)

SpatiaLite:

  1. est une extension de SQLite, implémentée différemment dans le logiciel GI (principalement en raison de problèmes de pilotes et de versions)
  2. beaucoup plus ancien et jusqu'à présent mieux intégré dans QGIS
  3. dans QGIS, vous ne pouvez pas supprimer des colonnes sans une requête SQL qui n’est pas compliquée, mais pour certains utilisateurs déjà trop de "code" (mise à jour: QGIS 3 le fait maintenant)
  4. assez gros fichier quand on a seulement une main pleine de géométries, pas assez bon comme format de transport mais pour le stockage de base de données locale (ça commence avec quelque chose comme 5Mo)
  5. Beaucoup d'outils supplémentaires (vues, peuvent créer des réseaux routiers, de nombreux formats d'importation / exportation, ST_Queries et plus)
Mat
la source
Prévoyez-vous d’utiliser GeoPackage ou SpatiaLite uniquement avec QGIS ou avec d’autres logiciels? SpatiaLite prend également en charge tous ces gaia-gis.it/gaia-sins/spatialite-sql-latest.html autonomes sans QGIS.
user30184
J'utilise principalement SpatiaLite avec QGIS, mais aussi avec SpatiaLite-GUI. Je l'introduis dans mes cours de formation pour QGIS. Le seul problème est le problème de la suppression des colonnes pour les débutants. Je ne l'introduis pas dans les formations ArcGIS car ils ont le fichier FileGeodatabase qui est obligatoire dans certaines autorités (dans les 10% où ce n'est pas le fichier de formes qui est toujours à la pointe de la technologie ...). J'ai commencé à annoncer GeoPackage dans les cours avancés QGIS, mais avec les annotations écrites ci-dessus. Mais comme GDAL a une bonne implémentation, il ne faudra pas longtemps avant que QGIS ait les boutons nécessaires.
Matte
Comme vous le dites, votre comparaison porte sur l'utilisation de QGIS. Je tiens à souligner que juger si SpatiaLite ou GeoPackage est préférable par le cas de la "colonne de chute" est très spécifique à QGIS. SQLite lui-même ne supporte pas cette opération directement sqlite.org/lang_altertable.html . Les mêmes solutions de contournement fonctionnent à la fois pour SpatiaLite et pour GeoPackage même si certains logiciels risquent de manquer des boutons.
user30184
1
Je l'ai placé dans le contexte de la question initiale concernant QGIS. Le point avec la colonne était un exemple où j'espère que la norme conduira à une utilisation plus cohérente dans les programmes car il s'agit d'un sujet pour l'utilisateur "normal". Pas sûr que cela soit possible avec SpatiaLite car le niveau d'intégration est si différent, même après plusieurs années. En fin de compte pour moi, cela mènera au point où ce pourrait être un nouveau format de transport normalisé (GeoPackage). SpatiaLite ressemble beaucoup plus à un SIG avec ses fonctions intégrées (requêtes ST, nombreuses options d'importation de données, réseau ...).
Matte
GeoPackage et SpatiaLite sont tous deux basés sur SQLite.
Matthias Kuhn