Paikkatietomies-blogisivuston toiminta loppuu lokakuussa 2024. Syynä ovat mm. toiminnan harrastusmainen luonne huomioiden kestämättömästi viime aikoina kohonneet palvelinkustannukset ja ylläpitoon käytettävissä olevan ajan puute. Kiitän kaikkia blogiani näinä vuosina lukeneita! Paikkatietoasioista, myös avoimen lähdekoodin sellaisista, kirjoittelen jatkossa LinkedIn-alustalla. Tervetuloa seuraamaan ja verkostoitumaan!
PgAdmin -teemakuva

Paikkatiedot esiin pgAdmin 4 -sovelluksella

Uudelleentwiittasin hiljattain Twitterissä PostGIS-käyttäjän twiitin, jossa ilmoitettiin, että uusin versio pgAdmin 4 -tietokannanhallintatyökalusta (3.3) kykenee näyttämään tietokantakyselyn palauttamat geometriat. Tämä on erittäin kaivattu ominaisuus, sillä vastaava toiminnallisuus on ollut vakio-ominaisuutena jo kotvan aikaa esimerkiksi Microsoft SQL Server -tietokannan hallintaan käytettävässä SQL Server Management Studio -tietokannanhallintatyökalussa.

Jätettäköön siis hyvästit turhauttavalle QGIS:ssä tehtävälle PostGIS-taulujumpalle vain siksi, että voidaan pikaisesti vilkaista SQL-kyselyn palauttamia geometrioita. Asia on mielestäni niin merkittävä parannus pgAdmin -sovelluksen käytettävyyteen, että päätin demoilla sitä täällä blogissani.

Lukemalla tämän artikkelin tiedät kuinka toimia käytännössä. Ja uutena ominaisuutena on tarjolla myös automaattinen OpenStreetMap-taustakartta (saatavilla eri variaatioina) silloin kun kyselyn palauttamien geometrioiden koordinaattijärjestelmä on  WGS84.

pgAdmin 4 – avoimen lähdekoodin tietokannanhallintatyökalu

Muutama sana pgAdmin 4 -tietokannanhallintatyökalusta on paikallaan näin aluksi. PgAdmin on graafinen PostgreSQL-tietokannan hallintaan käytettävä tietokannanhallintatyökalu, jolla pystyy esimerkiksi kytkeytymään useisiin PostgreSQL-tietokantainstansseihin, ja suorittamaan perustason kannanhallintatoimintoja ilman SQL-komentojen kirjoittamista. Varsinaiset tietokantakyselyt tulee kuitenkin syöttää käsipelissä erilliseen kyselyikkunaan. Mikäli SQL:n käyttö paikkatietoanalyysien tekemiseen on vieras asia, saatat ehkä haluta vilkaista aikaisemmin kirjoittamani artikkelin reikien poistosta PostGIS-tietokannassa tai PostGIS-kannassa tehtävästä reitityksestä.

Avoimilla datoilla liikkeelle

Mutta nyt itse asiaan. Pyrin demonstroimaan uutta toiminnalisuutta oheisella esimerkkikyselyllä (kuva 1), jossa teen leikkausanalyysin eräillä avoimilla paikkatietoaineistoilla. Ennen kyselyn suorittamista olen nostanut käyttämääni PostgreSQL 10 -tietokantainstansissa majailevaan gis-nimiseen tietokantaan Suomen ympäristökeskuksen paikkatietoaineistojen latauspalvelusta lataamani yksityisten mailla olevat luonnonsuojelualueet (taulu: syke_luonnonsuojelualueet_yksityisten_mailla) ja Tilastokeskuksen WFS-rajapinnalta lataamani kuntarajat 1 : 1 000 000 mittakaavassa (taulu: tilastokeskus_kunnat_1000k). Aineistoja varten olen luonut em. tietokantaan open_data-nimisen tietokantaskeeman.

kysely_1024x500
Kuva 1: Esimerkkikysely

Kysely palauttaa suojelualueet-taulusta suojelualueen nimen, tyyppinimen ja geometrian. Kyselyn olosuhde-ehdossa hyödynnetään PostGIS-tietokannan ST_Intersects-spatiaalifunktiota. Kyselyn olosuhde-ehdossa määritellään lisäksi se, että leikkausanalyysin halutaan palauttavan ainoastaan Joensuun kuntarajan sisällä olevia kohteita. Tämä rajaus tehdään kyselyssä kuntakoodiin perustuen.

Geometry Viewer -välilehti näyttää geometriat

Kun kysely ajetaan pgAdmin 4-tietokannanhallintatyökalussa, palauttaa se alla olevassa kuvassa (kuva 2) havaittavia tuloksia. Rivejä palautuu huomattavasti enemmän kuin em. kuvassa on nähtävissä, mutta kuvan ajatuksena on esitellä pgAdmin 4-sovelluksen uutta toimintoa eikä niinkään leikkausanalyysin tulosta. Geometriat saa näkyviin joko geometriasarakkeen yhteydessä olevasta silmä-painikkeesta tai Geometry Viewer -tekstilinkistä. Nämä kohdat ovat korostettu punaisella yllä olevassa kuvassa. Vastaavat namiskat saa esiin vaikkapa vaan tarkastelemalla geometrioita sisältävää taulua View/Edit Data-toiminnon kautta.

kyselyn_tulokset_1024x500
Kuva 2: Esimerkkikyselyn palauttamat rivit 1 – 14

Geometriat näyttävä ikkuna on perusilmeeltään hyvin selkeä (kuva 3). Geometriat esitetään näkymässä, jota on mahdollista zoomailla. Toiminnallisuus näyttäisi vastaavan Microsoft SQL Server Management Studio -sovelluksen toiminnallisuutta, joka toimii kutakuinkin samalla periaatteella.

geometriat_430x500
Kuva 3: Geometriat Geometry Viewerissä

Mikäli vastaava analyysi tehtäisiin paikkatietoaineistoilla, joiden koordinaattijärjestelmät ovat WGS84, käyttää Geometry Viewer taustakarttana OpenStreetMapia. Tätä täytyy kokeilla, joten projisoin taulujen geometriat alkuperäisestä TM35FIN-koordinaattijärjestelmästä WGS84:ään (ST_Transform-spatiaalifunktiota hyödyntäen) ja ajan saman kyselyn uudelleen.

OpenStreetMap taustalle

Ja totta tosiaan, kun geometriat ovat WGS84-koordinaattijärjestelmässä, on geometrioita mahdollista tarkastella OpenStreetMap-taustakarttaa vasten ja taustakartta tulee näkyville vieläpä automaattisesti (kuva 4). Geometry Viewer -näkymässä on jopa mahdollisuus valita useasta eri OSM-variaatiosta. Alla olevassa esimerkissä käytetään haalennettua OSM:ia.

geometriat_osm_430x500
Kuva 4: OpenStreetMap Geometry Viewerissä

Geometry Viewer mahdollistaa myös mahdollisten paikkatietokohteiden ominaisuustietojen tarkastelemisen (kuva 5). Tässä esimerkissä käytetty kysely palauttaa geometrian lisäksi suojelualueen nimen ja tyyppinimen. Nämä tiedot ovat tarkasteltavissa paikkatietokohdetta klikkaamalla, jolloin Geometry Viewerissä avautuu ominaisuustietoikkuna. Kuvassa olevassa esimerkkitapauksessa olen klikannut Höytiäisen kanavan suistossa sijaitsevan linnustonsuojelualueen geometriaa.

ominaisuustiedot_430x500
Kuva 5: Paikkatietokohteiden ominaisuustiedot

PgAdmin 4 on nyt pykälää parempi

Jos nyt tähän loppuun vielä summaa, että kyseessä on siis pgAdmin 4 -tietokannanhallintasovelluksen kirjoitushetkellä viimeisimmässä (3.3) versiossa oleva erittäin käytännöllinen toiminto. Toiminto on varsin simppeli käyttää eikä vaadi mitään asetusten säätämisiä missään valikoissa/konffitiedostoissa, vaan toimii suoraan pakasta vedettynä (mikäli vaan kysely palauttaa gemetrioita). Toiminnon kautta on mahdollista tarkastella myös kyselyn palauttamien paikkatietokohteiden ominaisuustietoja, ja mikäli näytettävät paikkatietokohteet ovat WGS84-koordinaatistossa, on niitä mahdollista tarkastella OSM-taustakartan päällä.