1.6.3 Tietokannat paikkatietojärjestelmissä

 

 

Esimerkkinä luettelo Metsäntutkimuslaitoksen tietokannoista. Mieti mitkä kannoista sisältävät spatiaalista tietoa, ja ovat esitettävissä karttaliittymän kautta.

 

Paikkatietojärjestelmän rakenteen ja toiminnan kannalta ei ole yhdentekevää, kuinka järjestelmä tallentaa sisäisesti siihen syötetyt tiedot. Etenkin suuria tietomääriä sisältävät järjestelmät, joiden tietoja lisätään tai päivitetään jatkuvasti, asettavat suuria vaatimuksia tietokantarakenteelle ja kantaa ohjaavalle tietokannanhallintajärjestelmälle (DBMS).

Yksinkertaisin tietokantamalli on suuri tiedosto, jossa uusi tietue lisätään yksinkertaisesti riviksi tiedoston loppuun. Tällaiseen tiedostoon on helppo lisätä tietoa, mutta tiedon haku on tehotonta.

Hierarkkinen ja verkkotietokantamalli

Erilaiset tietokantamallit helpottavat ja nopeuttavat tiedon käsittelyä. Hierarkkiset tietokantamallit muistuttavat rakenteeltaan puun juuristoa. Siinä tietotauluja voidaan kuvata termien isä/lapsi avulla. Yhteen isätauluun voi liittyä useita lapsitauluja, mutta yksittäisellä lapsitaululla voi olla vain yksi isätaulu. Hakuavaimena toimii tällöin "isän nimi". Seuraavassa kuvassa on havainnollistettu, kuinka  kuinka kaksi aluetta sisältävä kartta esitetään hierarkkisessa tietokantamallissa.

 

Hierarkkisessa tietokantamallissa käyttäjä ei pääse näkemään tauluja kuin isä/lapsi-polkua pitkin. Kuten esimerkistä näemme, viiva c ja sen päätepisteiden koordinaatit pitää varastoida kahdesti.

Verkkotietokantamalleissa myös taulujen välille voidaan luoda suhteita. Tämä nopeuttaa tiedon hakua, ja vähentää tarvetta varastoida samaa tietoa moneen kertaan. Verkkotietokannan ongelma on toisaalta se, että suhteiden ylläpito ja tallennus saattaa viedä yhtä paljon kapasiteettia kuin itse datan tallennus.

Relaatiotietokanta

Relaatiotietokannassa tieto järjestetään kaksiulotteisiin tauluihin. Malli perustuu matemaattiseen ajatteluun, jossa taulukoita kutsutaan relaatioiksi, rivejä monikoiksi ja sarakkeita attribuuteiksi. Yleiskielessä rivejä voidaan kutsua kohteiksi ja sarakkeita näiden arvoiksi. Relaatiotaulukoihin voidaan kohdistaa yksinkertaisia toimenpiteitä kuten aseta, valitse, projektio, liitä.

Hierarkkisen tietokantamallin hakuavain ja verkkotietokantamallin suhteet on relaatiotietokantamallissa korvattu yksiselitteisellä muista taulun riveistä poikkeavalla tunnistetiedolla, jonka perusteella tietue tunnistetaan. Seuraavassa kuvassa on esimerkki em. kahden polygonin muodostaman kartan kuvaamisesta relaatiotietokantamallilla (Burrough ym.1998).

Normalisoinniksi kutsutaan prosesseja, joiden avulla geometriatiedon rakenne relaatiotietokannassa yksinkertaistetaan. Esimerkiksi viiva koostetaan useiden janojen yhdistelmänä (arc).

Paikkatietojärjestelmissä geometrisille objekteille annetaan usein joku järjestelmän sisäinen tunniste, joka ei välttämättä näy lainkaan käyttäjälle. Näin esimerkiksi maatilan palstaa kuvaavan polygonin sisäinen tunniste säilyy samana, vaikka tilan järjestysnumero, maatilatunnus tai rekisterinumero jostain syystä vaihtuisivat.

Kun karttaobjekti on talletettu relaatiotietomallia käyttäen, on geometriatieto ainoastaan yksi tietotaulu muiden joukossa. Kartalla näkyvä karttaobjekti ja siihen liittyvä ominaisuustietotaulu ovat ohjelman ja käyttäjän määrittelemiä näkymiä niin geometria- kuin ominaisuustiedonkin sisältävään tietokantaan.

Tiedon haku relaatiotietokannoista toteutetaan kyselyllä, jossa käyttäjä määrittelee haluamansa tiedot ja hakuehdot. Näin käyttäjä voi hakea vaikkapa Joensuuhun rekisteröidyt vuosimallin -87 punaiset Toyotat, joiden omistaja on nainen. Ehdot määritellään hakukielellä, joista yleisin on SQL (structured query language).

SQL-kieleen on toteutettu spatiaalinen laajennus, jonka operaattoreilla voidaan hakea laajennusta tukevista tietokannoista objekteja sijainnin perusteella. Tällaisia spatiaalisia operaatoreita ovat esim:

  • Crosses (viivat)
  • Overlaps
  • Intersects
  • Contains
  • Within

Jotkut tietokanta- ja paikkatieto-ohjelmat sisältältävät huomattavasti enemmän näistä perusfunktioista johdettuja sijaintioperaattoreita.

Indeksoinnilla tarkoitetaan fyysisen aputiedon tai -taulun liittämistä tietokantaan. Uuden taulun tarkoitus on nopeuttaa tietokantaan kohdistuvia hakuja. Indeksoinnin toimintatapa riippuu tietokannan hallintaohjelmasta. Yleensä ne avaimet, joilla tietoa haetaan usein, kannattaa indeksoida. Indeksiä käytetään usein virheellisesti tietueavaimen synonyyminä.

Relaatiotietokantaan on helppoa lisätä uusia tietueita. Uusi tieto on ainoastaan taulu, jossa esiintyy avainsarakkeena sama tieto, joka on olemassa jossain muussa aikaisemmin talletetussa taulussa.

Oliotietokanta

Oliotietokannan peruskäsite on olio (object). Olio kuuluu johonkin olioluokkaan, ja kaikki saman luokan oliot perivät luokan ominaisuudet. Jokaiseen luokkaan liittyy myös toiminto- ja tilamääreet, jotka periytyvät luokkaan kuuluville olioille. Olioiden ominaisuuksia kuvataan joko olioihin liitettävillä attribuuteilla, tai olion suhteella toisiin olioihin. 

On myös olemassa tietomalleja, joissa relaatio- ja oliorakenteita yhdistellään. Tällaisia ovat laajennetut relaatiomallit ja olio-relaatiomallit. Yksi oliomallin eduista on mahdollisuus kuvata todellisen elämän objekteja olioilla, jolloin tietorakenne muistuttaa enemmän reaalimaailmassa olevia asioita ja niiden suhteita toisiinsa.

Oliomallin käyttökelpoisuutta paikkatietojärjestelmien rakenneosana on tutkittu, mutta käytännön sovelluksia on toistaiseksi vähän. Oliomallin etuina on pidetty, paitsi edellä mainittua "todentuntua", myös mahdollisuutta esittää funktionaalisia kokonaisuuksia relaatiomallia paremmin. Kokonaisiin olioihin kohdistuvat hakutoiminnot ovat myös nopeita.


Riippumatta käytettävästä tietokantamallista, tarvitaan paikkatietojärjestelmässä aina tiedonhallintajärjestelmä (DBMS)

Tiedonhallintajärjestelmän tehtävä on huolehtia mm. seuraavista asioista: 

  • Tiedon syöttö, haku ja tulostus

  • Tietokannan ja käyttöliittymän välinen liikenne

  • Tietokannan eheyden säilyttäminen

  • Useiden käyttäjien tarpeista ja oikeuksista huolehtiminen

  • Tietoturvan ja käyttöoikeuksien ylläpito 

Harjoitustehtävä:

Luo käyttämälläsi paikkatieto-ohjelmistolla metsikkökuvioille relaatiotietokanta, jossa seuraavat sarakkeet:

Kuvion numero

Tilan nro

Pääpuulaji

Ikä

Tilavuus/ha

Kehitysluokka

Tilavuus kuviolla

Toimenpide

Luontoarvot

Mieti kullekin sarakkeelle sopiva tietotyyppi. Laadi tietokanta siten, että karttaelementti syntyy asuinpaikkakuntasi peruskoordinaatistokaistalle, ja koordinaattilukemat ovat tämän kaistan P- ja I-koordinaatteja.

MapInfon käyttäjille työohje tästä.  

Susanna Nikumaan seminaarityö Oulun yliopiston tietojenkäsittelyn laitokselta (PDF-dokumentti) käsittelee GIS-järjestelmiä teoreettiselta kannalta.