• Ei tuloksia

Yhtenäinen tallentaminen

Tiedon hyödyntämisen kannalta on tärkeää, että tieto on projektin asianmukaisten osa-puolten käytettävissä sekä selkeästi jäsenneltyä. Tiedon yhtenäinen tallentaminen mah-dollistaa jäsennellyn tiedon hallinnan, yhtenäisen tiedon hyödyntämisen ja minimoi se-kalaisiin toimintatapoihin liittyvän tiedon katoamisen riskin. Lisäksi eri osapuolten ja oh-jelmien ei tarvitse erikseen käsitellä raakatietoa.

Tämän työn aikana selvitettiin sekä tiedosto- että tietokantapohjaisia ratkaisuja. Tiedos-topohjaisissa ratkaisuissa järjestelmän käyttämä tieto tallennetaan erillisiin tiedostoihin.

Nämä tiedostot voivat olla esimerkiksi teksti- tai taulukkomuodossa.

Tietokannalla tarkoitetaan laajasti tietokannanhallintajärjestelmän hallitsemaa tiedon joukkoa. Tyypillisin tietokannan muoto on relaatiotietokanta. Tässä työssä termillä tie-tokanta tarkoitetaan juuri relaatiotietie-tokantaa. Relaatiotietokannassa tieto on jäsennelty re-laatioiksi eli kaksiulotteisiksi tauluiksi. Tieto on tallennettu tauluihin tietueina eli riveinä.

Yhden tietueen sarakkeet eli kentät kuvaavat tietueen ominaisuuksia. (Ullman & Widom, 2014.) Esimerkki yksinkertaisesta Reiät-taulusta on esitetty taulukossa 2. Relaatiotieto-kantojen suurin hyöty saavutetaan relaatioalgebran avulla, jolla voidaan muodostaa uusia relaatioita olemassa olevien relaatioiden perusteella (Ullman & Widom, 2014).

Taulukko 2 Esimerkki Reiät-taulusta

Reikätunnus ReportID Tyyppi Pituus

3134-1 DRPQuality_114D28866-1_3134 Contour 5,26

3134-3 DRPQuality_114D28866-1_3134 CutHole 4,81

3136-1 DRPQuality_114D28866-1_3136 BoltHole 3,53

Tiedosto- ja tietokantapohjaisen tallentamisen välillä on eroavaisuuksia. Tiedostopoh-jainen tallentaminen soveltuu hyvin yksikertaisille listamaisille tietorakenteille. Tieto-kanta pystyy kuitenkin käsittelemään paremmin monimutkaisia datan sisältämiä yhteyk-siä. Lisäksi tietokannan avulla tietorakenteessa olevan tiedon päällekkäisyys vähenee.

Monimutkaisen tiedon hallinnassa viite-eheydellä on suuri merkitys. Esimerkiksi tässä työssä kehitettävässä järjestelmässä jokaisen reiän tulee kuulua johonkin katkoon. Viite-eheyden ylläpitämiseksi tarkistetaan, että esimerkiksi katkoa poistettaessa poistetaan myös siihen liittyvät reiät. Viite-eheyden hallinta on yksinkertaisempaa tietokannan avulla. (Manning, 2015.) Tiedostot ovat kuitenkin tietokantoja helpommin muokatta-vissa ja niiden lukeminen sekä kirjoittaminen on usein tietokantaa nopeampaa.

Tietokanta voidaan toteuttaa monella skaalalla. Suuri osa tietokannoista on toteutettu eril-lisenä palvelinprosessina. Toisaalta tietokanta voidaan toteuttaa myös ilman erillistä pal-velinta. (SQLite, 2020a.) Tälläisiä tietokantoja kutsutaan työpöytätietokannoiksi. Työ-pöytätietokantoja voidaan toteuttaa esimerkiksi Microsoft Access ja SQLite -ohjelmis-toilla (Microsoft, 2020; SQLite, 2020b). Tämän työn aikana järjestelmän tiedon tallenta-miseen hyödynnettiin MS Access -työpöytätietokantaa.

MWD-raakadatan suora käyttäminen on haasteellista. Sekä DRPQual- että DRMWD-tie-dostot sisältävät osittain tarpeetonta tietoa ja osa tiedosta vaatii laskentaa tehokkaan hyö-dyntämisen mahdollistamiseksi. Tämän seurauksena tieto on tallennettu muokatussa muodossa tietokannan mukaisiin tauluihin.

Tietokannassa jokaiselle kentälle on määritetty tietotyyppi. Kenttä voi sisältää esimer-kiksi merkkijonon, totuusarvon tai numeron. Lisäksi tietotyypin avulla voidaan määrittää kentän koko. Työn kannalta oleelliset MS Accesissa määritetyt tietotyypit ovat:

int:kokonaisluku välillä -32 768 32767, koko 2 tavua

double:desimaaliluku välillä -1,797E-10308 1,797E10308, koko 8 tavua short text:merkkijono, pituus maksimissaan 255 merkkiä

datetime:aika ja päivämäärä bool:totuusarvo

Tallentamisessa DRPQual-tiedostojen tieto jaetaan ensisijaisesti kahteen tauluun:Katkot jaReiät. Katkot-taulu sisältää nimensä mukaisesti katkoon liittyvän tiedon, jossa jokainen katko on eritelty omaan tietueeseen. Tässä tapauksessa katkolla tarkoitetaan yhtä lou-hinta- lujitus- tai injektointireikien sarjaa. Mikäli yksi DRPQual-tiedosto sisältää useam-paa reikätyyppiä, jaetaan reiät kahteen katkoon. Jokainen reikä on tallennettu Reiät-tau-luun.Reiät-taulun rakenne on esitetty taulukossa 3 jakatkot-taulun rakenne taulukossa 4.

Taulukko 3Reiät-taulun kentät sekä niiden tyypit ja selitteet

REIÄT

Tyyppi Nimi Selite

short text Reikätunnus MWD-datan reportID ja reikäID

short text Katkotunnus Katkon tunnus: reportID ja LOUH/LUJ/INJ short text ReikäID Reiän numero porauksessa

datetime Aloitusaika Porauksen aloitusaika datetime Lopetusaika Porauksen lopetusaika

short text Tyyppi Louhinta/Lujitus/Injektointi/Määrittelemätön short text Alatyyppi IREDES-standardin mukainen tyyppi, kts. 5.5.2

double Pituus Yksikkö: m3

double DRP_Alku_X

Toistaiseksi reiän alku- ja loppupisteiden sijainti tieto on tallennettu kolmella tavalla: po-rakaavion mukaisessa koordinaatistossa, projektikoordinaatistossa (Raide-Jokerin ta-pauksessa on ETRS-GK25, EPSG: 3879) ja WGS84-koordinaattijärjestelmässä (EPSG:

4326). Taulussa on käytetty etuliitteitä koordinaattien erottelemiseksi: DRP-etuliitteellä tarkoitetaan porakaavion mukaista koordinaatistoa, WCS-etuliitteellä projektin koordi-naatistoa ja WGS84-etuliitteellä WGS84-koordikoordi-naatistoa. Tämä on tehty sijaintitiedon käsittelyn helpottamiseksi, jotta jokaisen tietoa käsittelevän sovelluksen ei tarvitse tehdä itse koordinaatistomuunnoksia. Ratkaisun myötä tietokantaan tallennetaan kuitenkin päällekkäistä tietoa, mikä lisää tietokannan kokoa vaikuttaa tiedon muokkaamista. Toi-saalta koordinaatistomuunnoksiin liittyy aina virheen riski, jolloin muunnosten keskittä-minen voi lisätä tiedon luotettavuutta.

Taulukko 4Katkot-taulun kentät sekä niiden tyypit ja selitteet

KATKOT

Tyyppi Nimi Selite

short text Katkotunnus Katkon tunnus: reportID ja LOUH/LUJ/INJ short text ReportID DRPQual-raportin tunnus

datetime Aloitusloggausaika Katkon porauksen aloitusaika datetime Lopetusloggausaika Katkon porauksen lopetusaika

short text Porakaavio Porauksessa käytetyn porakaavion tiedosto-nimi

short text Mittalinja double Alkupaalu double Loppupaalu double Katkonumero

double Reikämäärä Katkossa olevien reikien lukumäärä

double Reikäpituus Katkossa olevien reikien pituuksien summa double Teoreettinen tilavuus Yksikkö: m3

double Laskettu tilavuus Yksikkö: m3

short text Tyyppi Louhinta/Lujitus/Injektointi/Määrittelemätön datetime Tuontiaika DRPQual-tiedoston tuontiaika tietokantaan Porauksesta saatavan tiedon lisäksi tietokantaan tiedon jatkojalostamista varten tallenne-taan tietoa suunnitellusta geometriasta, lujituksesta ja injektoinnista. Näistä yksinkertai-sin on GEOM-taulu (taulukko 5). Tämä taulu sisältää projektin jokaisen mittalinjan ja tasauksen paalut metrin välein sekä näiden paalujen sijaintiedon X- Y- ja Z-koordinaatin projektikoordinaatistossa.

Taulukko 5GEOM-taulun kentät sekä niiden tyypit ja selitteet

GEOM

Tyyppi Nimi Selite

short text Sijaintitunnus Sijainnin yksilöivä tunnus

short text Mittalinja

Katkon teoreettisen tilavuuden laskemiseksi tarvitaan myös suunnitellun louhintageomet-rian tietoa. Tieto on tallennettulouhinta-alueet -tauluun (taulukko 6), joka sisältää jokai-sen louhinta-alueen louhintaprofiilit, mittalinjan sekä alku- ja loppupaalun. Louhinta-alue voi olla joko profiililtaan muuttumaton, jolloin alueen alku- ja loppuprofiilit ovat samat tai profiilin vaihtumisalue, jolloin louhintaprofiili vaihtuu lineaarisesti alueen aikana. Tä-män seurauksena tulee tauluun tallentaa alueen alku- ja loppuprofiili erikseen. Louhinta-alueiden lisäksi järjestelmä tarvitsee tiedon profiilien poikkipinta-aloista katkon teoreet-tisen tilavuuden laskemiseksi.

Taulukko 6 Louhinta-alueet-taulun kentät sekä niiden tyypit ja selitteet

LOUHINTA-ALUEET

Tyyppi Nimi Selite

short text Louhinta-aluetunnus Alueen yksilöivä tunnus short text Mittalinja

short text Alkuprofiili short text Loppuprofiili

double Alkupaalu

double Loppupaalu

Lujitusten suunnittelun tarkkuus on riippuvainen projektista. Yksinkertaisimmillaan luji-tuspultit on suunniteltu alueittain. Jokaiselle lujitusalueelle on määritetty lujitusprofiili, jonka perusteella alueen pulttien määrää voidaan arvioida. Karkeimmillaan lujitusprofii-lille on tietokannassa määritelty pulttien lukumäärä viuhkassa sekä viuhkaväli. Tarvitta-essa myös seinä- ja holvipultit on voitu erotella toisistaan. Tämän tapainen ratkaisu on esitelty taulukossa 7, jossa lujitusalueet on eritelty ja taulukossa 8, jossa lujitusprofiilien tiedot on esitelty. Huomionarvoista on myös, että jokainen louhintaprofiili vaatii omat lujitusprofiilinsa. Suunniteltujen lujitusten tarkkuuden vaikutusta porattujen reikien ja suunnitteluaineiston sovittamiseen on käsitelty tarkemmin kohdassa 5.7.2.

Taulukko 7 Lujitusalueiden määrittely

Lujitusprofiili Viuhkaväli [m] Mittalinja Alkupaalu Loppupaalu

Prof-01-g 2,2 I-raide 8745 8854

Prof-01-f 1,8 I-raide 8854 8862

Prof-02-f 1,8 I-raide 8862 8902

Prof-03-p 2,3 Työtunneli 0 55

Taulukko 8 Lujitusprofiilien määrittely

Profiilitunnus Viuhkaväli [m] Seinäpultteja [kpl] Holvipultteja [kpl]

Prof-01-g 2,2 4 6

Prof-01-f 1,8 4 8

Prof-02-f 1,8 4 6

Toisaalta lujitukset voidaan suunnitella myös yksityiskohtaisesti, jolloin jokaiselle pul-tille on määritetty metatietojen, kuten viuhkatunnuksen ja tyypin lisäksi alku- ja loppu-pisteiden koordinaatit 3D-koordinaatistossa. Tämän työn lähtöaineiston lähteenä käyte-tyssä Patterimäen tunnelissa lujitukset on suunniteltu tällä tavalla. Tällöin suunniteltujen lujituspulttien tiedot voidaan tallentaa suoraanlujitus-tauluun (taulukko 9).

Taulukko 9Lujitus-taulun kentät ja niiden tyypit ja selitteet

LUJITUS

Tyyppi Nimi Selite

short text Pulttitunnus Pultin yksilöivä tunnus short text Mittalinja

double Paalu

double Profiili Käytettävä louhintaprofiili

bool Luokka Käytettävä lujitusluokka

short text Pulttityyppi

double Halkaisija Pultin halkaisija. Yksikkö: m

double Pituus Pultin pituus. Yksikkö: m

short text Viuhkatunnus Toteutettavan viuhkan yksilöivä tunnus short text Lujitusviuhkatunnus Suunnitellun lujitusprofiilin tunnus

int Pulttinumero Lujitusprofiilin jokaisen pultin yksilöivä tunnus double DRP_Alku_X

Suunnitellun lujituksen ja toteutuneen porauksen yhdistämistä toisiinsa käsitellään tar-kemmin kohdassa 5.7.2. Suunniteltuun pultin ja poratun reiän välistä yhteyttä kutsutaan tässä työssä lujituslinkiksi. Linkin tarkoitus on tallentaa sovituksen lopputuloksena syn-tynyt yhteys. Linkit on tallennettu tauluunlujituslinkit, joka on esitetty taulukossa 10.

Taulukko 10Lujituslinkit-taulun kentät sekä niiden tyypit ja selitteet

LUJITUSLINKIT

Tyyppi Nimi Selite

short text Reikätunnus Poratun reiän tunnus short text Pulttitunnus Suunnitellun pultin tunnus double Suuntapoikkeama

double Paikkapoikkeama bool Onko_holvipultti

Suunnitellun injektointitiedon tallentaminen tietokantaan mukailee lujitusten tallenta-mista. Injektoinnit voidaan tallentaa tietokantaan joko parametrisesti injektointialueiden ja -profiilien avulla tai yksittäisin injektointireikinä. Tallentamisen tarkkuus määräytyy projektin tarpeiden mukaan.

Kuva 8 Tietokannan UML-kaavio. Sinisellä pohjalla olevia tauluja ei toteutettu tämän työn aikana, mutta ovat mahdollisia tietokannan laajennuskohteita.

Tietokannan etuna on taulujen välisten relaatioiden hyödyntäminen. Taulujen välisiä re-laatioita voidaan mallintaa UML (Unified Modeling Language) -kaavioilla. Kaaviossa jokainen taulu on esitetty joka sisältää taulun kentät. Taulujen pääavain on

merkitty alleviivauksella ja PK-merkinnällä. Taulujen väliset relaatiot on kuvattu tauluja yhdistävillä riippuvuuksilla. Relaatioiden avulla tietokantaan voidaan suorittaa kyselyitä tiedon yhdistämiseksi toisiinsa. (Ullman & Widom, 2014.) Tässä työssä kehitetyn järjes-telmän rakenne on esitetty kuvassa 8. Kaaviossa on esitetty myös sinisellä taustalla tau-luja, joita ei vielä tässä työssä toteutettu. Tauluja voidaan kuitenkin hyödyntää tulevai-suudessa järjestelmän jatkokehityksessä.

5.7 Toteumatietojen laskeminen ja yhdistäminen suunniteltuun