Julkaistu 27.1.2020

Kätevä GeoPackage – mikä se on?

Kaikessa mitä teemme, teemme helposti juuri niin kuin aina ennenkin. Kätevää, kun sen osaa – muttei välttämättä läheskään aina tehokkainta.

Erilaisia paikkatietoformaatteja on useita. Niistä tunnetuimpia lienevät vektoripuolella shapefile ja tätä hieman enemmän mahdollisuuksia tarjoava geodatabase, rastereiden käsittelyssä taas GeoTIFF. Miksi kuitenkin kokeilisit jotakin muuta? Mikä GeoPackage? Joku avoimen lähdekoodin oma formaattihömpötys?

GeoPackage (GPKG) on geospatiaalisen tiedonsiirtoon tarkoitettu formaatti, jota voisi kuvailla kannettavaksi tietokannaksi, jossa tieto tallennetaan tauluihin. Saat tallennettua yhteen tiedostoon useita tasoja, mikä on suuri etu verrattuna esimerkiksi shapefilen kaltaisiin yhden tason tiedostoformaatteihin. GeoPackagea käyttettäessä tukitiedostojakin avautuu vain kaksi (SHM, WAL) kirjoitusta ja lukua varten. GeoPackagea siirrettäessä on muistettava sulkea tiedosto, jolloin tukitiedostot katoavat ja tiedosto on valmis siirrettäväksi.

GeoPackage on SQLite-tietokantaan perustuva, OGC-standardoitu tietokanta eli siten esimerkiksi ohjelmistoriippumaton. Voit käyttää sitä siis millä tahansa SQLiteä lukevalla ohjelmistolla, kuten QGISilla. QGIS 3 tukeekin GeoPackagea natiivina. GeoPackagen tehtyä tuloaan ja muutaman vuoden, QGIS3 tekee sen käytöstä helppoa ja suositeltavaa. Se on laajasti implementoitu (mm. GDAL, R, Python, Esri) ja siihen voidaan tallentaa myös tiilitettyä rasteridataa. Koska GeoPackage on avoimen lähdekoodin formaatti, pakkautuu vain yhteen tiedostoon ja toimii alustasta riippumatta, se sopii hyvin myös mobiilimaailman sovellusten kehittämiseen.

Iso plussa GeoPackagessa on sen tuki SQL:n käyttöön. SQL API -ohjelmointirajapinnan tarjoaminen innostaa erityisesti vaikkapa PostGIS-maailmaan perehtyneitä, sillä tietokannan käytöstä tulee huomattavasti tehokkaampaa SQL-kieltä hyödyntämällä.

Näppäriä vinkkejä GeoPackagen käyttöön

Katsotaanpa vielä muutama kätevä vinkki GeoPackagen kanssa työskentelyyn QGISin kanssa.

GeoPackage-tason luominen ja tasojen ryhmittely QGISissa

QGIS-projektiin luodaan uusi GeoPackage-taso Tasot > Luo taso > Uusi GeoPackage-taso.

GeoPackage

Tässä kohtaa voi määritellä taulun perustietojen lisäksi sille sopivia ominaisuustietoja jo valmiiksi.

GeoPackage

Tauluja voi yhdessä GeoPackagessa olla useita, joten niiden ryhmittely on usein paikallaan. Tämän voi tehdä klikkaamalla klemmari-ikonia tasovalikon yläpuolelta.

GeoPackage

Tyylin tallennus GeoPackageen

GeoPackage-tietokantaan voi tallentaa myös tyylejä. Valitse taso, jonka tyylin haluat tallentaa, ja klikkaa tason ominaisuuksiin. Vasemmasta alakulmasta valitse Tyyli > Tallenna tyyli > In database (GeoPackage).

GeoPackage

Tallennetut tyylit näkyvät GeoPackagen layer_styles-tasossa. Voit tarkastella sitä avaamalla QGISissä DB Manager -työkalun klikkaamalla QGISin yläpalkista Tietokanta > Tietokannan hallinta. GeoPackage-ikonin päältä klikkaamalla New connection voit lisätä luomasi gpkg-tietokannan. Luomiesi taulujen joukossa on nyt layer_styles-taulu. Esimerkkikuvassa tämä taulu sisältää nyt tyylit puistot- ja puut-tasoille. Huomaa myös, että taulun SLD-sarake sisältää tyylin SLD-koodin. Tätä koodia voi käyttää tason visualisointiin GeoServerillä.

GeoPackage

GeoPackagea kannattaa siis käyttää, kun haluaa enemmän irti helposti. Myös vanhojen tiedostojen siirto GeoPackage-muotoon on mahdollista esimerkiksi GDAL/OGR-kirjaston avulla. Kokeilemaan vaan!

Profiilikuva

Maiju Rekola

Maiju Rekola on aluetieteen ja ympäristöpolitiikan HTM, jota kiinnostaa erityisesti paikkatiedon jalostus ymmärrettävään ja visuaalisesti miellyttävään muotoon. Harrastuksina mm. suunnistus ja samoilu.