Taulun profiloija

Mitä taulu on syönyt?

Taulun profiloija on hyödyllinen apuväline minkä tahansa tietokantataulun sisällön profilointiin. Työkalun avulla saadaan taulun ja sen sarakkeiden tunnusluvut esiin helposti ja joustavasti. Tiedon profiloinnilla tarkoitetaan yleensä prosessia, jossa tutkitaan olemassaolevan tietokannan sisältöä keräten tilastollista ym. tietoa tietokannan taulujen ja sarakkeiden arvoista.  Profilointityökalun avulla voidaan arvioida lähdejärjestelmien tiedon rakenne ja laatu kattavasti esimerkiksi tietovarasto- ja integraatiohankkeissa.

Mutta tarvitaanko tiedon todellisia arvoja? Eikö kannan dokumentointiin tutustuminen riitä? Tietokannan dokumenttien tavaaminen voi olla  hyvä keino taulun sisällön selvittämiseen, jos  ne ovat  ajantasalla ja jos ne ovat riittävän yksityiskohtaisia ja jos niissä on kerrottu myös tietosarakkeiden muutoshistoria aikojen saatossa, esim.  sarakkeen merkityksen muuttuminen. Liian monta jossia! Profilointi on  yleensä luotettavin tapa  selvittää, mitkä sarakkeet ovat todella käytössä, mitkä ovat niiden todelliset arvojoukot ja tietotyypit jne. Monesti se on  ainoa tapa. Profilointi paljastaa ajoissa tiedon saatavuus- ja laatuongelmat.  

Profiloija_kuva1

Esimerkki 1. HenkiloAsiakas-taulun profiili, mukana kaikki datarivit

Taulun profiloija on alunperin kehitetty TietoKairan omaan käyttöön. Ideana oli luoda työkalu, jolla säästää aikaa lähdetietokannan todellisen sisällön tutkimisessa, koska toistuvien SQL-kyselyjen tekeminen oli turhan työläs tapa selvittää taulujen tietosisältö.  Profiloijaa on käytetty mm. sen selvittämiseen, onko olemassaoleva tieto raportoitavassa muodossa, onko sovelluksen data suoraan integroitavissa muihin sovelluksiin, onko tietovaraston metatieto ajantasalla suhteessa todelliseen dataan.  Kaupallisia profilointityökalujakin oli jo saatavilla, mutta ne tuntuivat olevan suhteellisen kalliita.

Profiloijan käyttökohteet

- tiedon laadunvarmistus ja -valvonta
- tietovaraston sisällön ja laadun tutkiminen (ETL-prosessin lähdetaulut vs kohdetaulut) 
- sovellusten testaaminen
- järjestelmän version vaihto / konversiot (ennen vs jälkeen tilanne)
- tietokantojen yhdistäminen (esim. kuntaliitokset)
- virhetilanteiden selvittäminen (esim. kirjaus joka vääristää raportoinnin tunnusluvut)
- master-datan hallinta

Profiloija_kuva2

Esimerkki 2. HenkiloAsiakas-taulun profiili, mukana vain oululaiset asiakkaat

Profiloijalla voidaan analysoida taulujen lisäksi myös näkymien sisältöä (view). Valintalistalla ovat valittavissa kaikki tietokannan taulut ja näkymät.  Rivien lisärajaus -kentässä on mahdollista rajoittaa analysoitava data vain  taulun osaan. Jos esimerkiksi ison tapahtumataulun sisällöstä vain viimeisen   vuoden aineisto kiinnostaa, voidaan  profilointi kohdistaa ao. riveihin lisäämällä ehto tapahtumapäiväys-sarakkeseen. Kolmannen ajoparametrin avulla voidaan ohjata, kuinka monta yleisintä arvoa kustakin sarakkeesta haetaan raportille. Oletus on, että kolme yleisintä arvoa ja niiden esiintymien lukumäärät näytetään.    

Profiloija toimii SQL Server 2000, 2005, 2008 ja 2012 -alustoilla. Profiiliraportti on  SSRS-raportti (Reporting Services), jota voidaan  ajaa esimerkiksi  Report Manager -portaalista.  Raportin sisältämät tiedot ovat  talletettavissa monessa eri formaatissa, esim. excel ja .pdf.

Referenssit

Pohjois-Pohjanmaan sairaanhoitopiiri, 2012.