SpatiaLite yerine GeoPackage kullanmak ve bunun tersi mi?


35

Şimdi GeoPackage formatı için destek içeren QGIS 2.18 kullanıyorum.

GeoPackage'ın Shapefile yerine geçtiğini biliyorum ama GeoPackage'ın veritabanı yetenekleri olduğu için pek değil. Aynı zamanda, GeoPackage, SpatiaLite'ın yerine geçmez, çünkü mekânsal sorguları ve işlevleri yoktur. Ayrıca, Spatialite GeoPackage'ı desteklemektedir.

Öyleyse, QGIS düzenleme bağlamında GeoPackage'ı kullanmak (ve SpatiaLite for Spatial SQL görevleri için GeoPackage'a erişmek) ne zaman ve ne zaman sadece Spatialite kullanmak daha iyidir?


1
Ben de bu soruyla ilgileniyorum. İlk düzenlemeden sonra kilitleme hatası nedeniyle coğrafi paket desteğinin şu anda sınırlı olduğunu unutmayın.
hilpers

Ama bu zaten çözüldü ?! Kodlayıcı vermedi 2.18 ile ilgili sorunlar.
Mat

Ne yazık ki, 2.18.3
hilpers

Eski hata izleyicide yazılmış olan prosedür ile 2.18.3 ile test ettim ve yeniden üretemedim. Hangi durumlarda problemin var?
Mat

Ayrıca GeoPackage ile yapılan ilk düzenlemeden sonra ancak 2.18.3'te yeni DWG / DXF içe aktarmayı kullandığımda kilitleme hatası ile karşılaşıyorum. DWG'yi başarılı bir şekilde içe aktarabilir ve başlangıçta oluşturulan GeoPackage'ı düzenleyebilirim (örneğin, Vector Bender eklentisiyle georeference). Ancak QGIS projesini kapatıp yeniden açtıktan sonra geçiş düzenleme düğmesi gri renkte görünüyor ve GeoPackage tekrar düzenlenemez.
Rob Willson

Yanıtlar:


32

QGIS'te GeoPackage ve SpatiaLite arasında küçük bir karşılaştırma. Şu an GeoPackage'ı QGIS ile kullanmak gerçekten verimli değil. Oldukça hızlı değişebilir (eklere bakınız!)

Yeni QGIS 2.99 takma adı ile ilgili bazı eklemeler QGIS 3, Kasım 2017 (ayrıca karşılaştırmalı olarak eklendi): GeoPackage artık QGIS 3'te neredeyse hiçbir sorun yaşamadan çalışıyor. QGIS geliştirici sürümüyle ilgili bazı küçük sorunlarla karşılaştı. Ayrıca SpatiaLite için en sorunlu sorun çözüldü. Artık herhangi bir geçici çözüm olmadan sütunlar silinebilir. Her ikisi de GUI üzerinden raster yazmayı desteklememektedir, bu da büyük bir sorun değildir; çünkü veri tabanındaki rasterler ana amaç değildir. Her iki format da gerçekten iyi bir çalışma formatıdır. GeoPackage'ın odağı taşıma formatı ve SpatiaLite için yerel bir veri deposu oluşturmak için birçok dosya içeren (dosya formatından daha fazla bir RDBMS olduğu gibi) kolay bir dosya tabanlı veritabanı sistemidir.

Her ikisi de:

  1. işlemsel
  2. SQL ve görünümler (ancak görünümler, kullanılan yazılımda farklı şekilde uygulanır)
  3. "hepsi bir arada" vektör katmanları, semboloji ve metin, raster
  4. shapefile ile karşılaştırıldığında neredeyse hiç kısıtlama olmayan nitelik tabloları
  5. zaman zaman VACUUM'a ihtiyaç duymaz mıyım (veri tabanına özel veri depolama)
  6. Çoğu geometri türü (eğriler gibi)

GeoPackage:

  1. SQLite tabanlı bir OGC standardıdır, uygulamanın farklı yazılımlarda daha tutarlı olması gerektiği anlamına gelir; örneğin, semboloji SLD Stilleri kullanıldığında gelecekte QGIS ve ArcMap'te çalışabilir.
  2. oldukça genç (2014), QGIS'te 2,18'e kadar bazı sorunlar var (güncelleme: QGIS 3'te iyi destek)
  3. SpatiaLite'a karşı çıkan "normal" kullanıcılar için QGIS'deki sütunların kolayca kaldırılmasını sağlar
  4. şu anda DB-Manager bununla çok iyi çalışmıyor ve raster desteği tek bir entegre raster okumakla (yazı yazmak yok) (QGIS 2.18.3 kullanılarak) sınırlı (güncelleme: DB-Manager şimdi geopackage ile iyi çalışıyor)
  5. QGIS’de çalışmayan ancak sanal katman aracılığıyla görüntülenenler pek çok kullanıcı arasında paylaşım yapmak için kullanılmadıklarında çok fazla sorun yaratmaz (güncelleme: hala QGIS 3 görünümleri göremez, ancak bunları daha sonra okuyamaz)
  6. coğrafi işlem araçları, varolan dosyanın eklenmesine izin vermez (yalnızca tüm dosyanın yerini alır) (güncelleme: şimdi çalışıyor)

SpatiaLite:

  1. GIT yazılımında farklı olarak uygulanan (çoğunlukla sürücü ve sürüm sorunları nedeniyle) SQLite’in bir uzantısıdır
  2. QGIS'e daha büyük ve şimdiye kadar daha iyi entegre
  3. QGIS’te, karmaşık olmayan bir SQL Sorgu olmadan sütunları silemezsiniz, ancak bazı kullanıcılar için zaten çok fazla "kod" (güncelleme: QGIS 3 bunu şimdi yapar)
  4. Sadece geometri dolu bir ele sahipken oldukça büyük bir dosya, taşıma formatı kadar iyi değil, aynı zamanda yerel veri tabanı depolaması için (5MB civarında bir şeyle başlar)
  5. Çok sayıda ek araç (görünümler, yol ağları, birçok ithalat / ihracat formatı, ST_Queries ve daha fazlasını oluşturabilir)

GeoPackage veya SpatiaLite'ı yalnızca QGIS ile veya başka bir yazılımla da kullanmayı planlıyor musunuz? SpatiaLite ayrıca tüm bu gaia-gis.it/gaia-sins/spatialite-sql-latest.html QGIS'siz bağımsız olarak destekler .
user30184

Çoğunlukla SpatiaLite'ı QGIS ile birlikte SpatiaLite-GUI ile birlikte kullanıyorum. Bunu QGIS eğitim kurslarımda tanıtıyorum. Buradaki tek nokta yeni başlayanlar için sütun silme problemidir. Bunları ArcGIS eğitimlerinde tanıtmıyorum, çünkü bazı yetkililerde zorunlu olan FileGeodatabase var (hala% 10'unda hala sanat haberi olmayan şekil dosyası değil ...). Gelişmiş QGIS kurslarında GeoPackage'ı duyurmaya başladım, ancak yukarıda belirtilen geri dönüşlerle. Ancak GDAL iyi bir uygulamaya sahip olduğundan, QGIS'in gerekli düğmelere sahip olması çok uzun olamaz.
Mat,

Söylediğiniz gibi, karşılaştırmanız QGIS kullanımı ile ilgilidir. SpatiaLite veya GeoPackage'ın "bırakma sütunu" vakası ile daha iyi olup olmadığına karar vermenin QGIS'e özgü olduğunu vurgulamak isterim. SQLite'nin kendisi bu işlemi doğrudan desteklemiyor . Sqlite.org/lang_altertable.html . Aynı geçici çözümler hem SpatiaLite hem de GeoPackage için de geçerlidir, bazı yazılımlar düğmeleri kaçırabilir.
user30184

1
QGIS ile ilgili orijinal sorunun bağlamına koydum. Sütunun olduğu nokta, standardın programlarda daha "normal" kullanıcı için bir konudur. SpatiaLite ile bunun mümkün olup olmadığından emin değil, çünkü entegrasyon seviyesi birkaç yıl sonra bile çok farklı. Sonunda benim için yeni bir standart taşıma formatı (GeoPackage) olabileceği noktaya yol açacaktır. SpatiaLite, yerleşik fonksiyonları ile bir CBS'ye çok benziyor (ST-Sorguları, birçok veri alma seçeneği, ağ ...).
Mat,

GeoPackage ve SpatiaLite, SQLite tabanlıdır.
Matthias Kuhn
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.