24.08.2016

Mihinkäs se analysoitava data talletetaan?

Data-analytiikka, edistynyt analytiikka, data science ovat kuumia puheenaiheita. Yhä useampi organisaatio panostaa parempaan analytiikkaan kehittääkseen toimintaa ja kilpailukykyä. Näin Big Data –aikakaudella on mahdollista tallettaa suuria datamääriä aikaisempaa paljon edullisemmin. Pätevät data scientistit saavat isosta aineistosta enemmän irti. Silti ihan perusjärjestelmissäkin oleva perinteinen tieto on edelleen monasti pimennossa ja hankalasti saatavissa ”valoon” eli paikkaan, jossa sitä on helppo analysoida.

Analysoitavat datat voi tallettaa tiedostoon ja jalostaa sitten eri välineillä kohti analytiikkaa, koneoppimista ja muita uusia menetelmiä palvelevaa muotoa. Näin voidaan esimerkiksi tutkia kotisivuilla käyneitä tai lähetettyjä sähköposteja klikanneita. Pitemmän päälle syntyy kuitenkin tarve yhdistää näitä tietoja vaikkapa CRM-järjestelmän asiakastietoihin ja muihin eri järjestelmissä oleviin tietoihin. Tietojen muokkaus ja jalostaminen pitää automatisoida. Syntyy tarve järjestelmällisempään ja automatisoituun tietojen varastointiin, erillään tietojärjestelmistä.

Tietovarasto – tai ehkä modernilta nimeltään data platform – on nimenomaan sellainen paikka, jossa eri tietojärjestelmistä tulevat datat voidaan yhdistää, jatkojalostaa ja historioida. Tietojärjestelmien tietokannat ovat siis tietojen lähteitä, samoin kuin esimerkiksi sensoreista tuleva data. Tietovaraston tietoja raportoidaan BI – työkaluilla ja ne toimivat myös data-analytiikan lähteenä. Minkätyyppiseen rakenteisiin ja ohjelmistoon tiedot sitten talletetaan? Viime vuosien kiihtyneen tuotekehitysboomin ansiosta on datan talletukseen runsaasti vaihtoehtoja.

Perinteinen talletuspaikka rakenteisille, tietojärjestelmistä tuleville tiedoille on relaatiokanta, joka sopiikin tällaiseen käyttöön hyvin. Relaatiokannoissa aina mukana olevaa SQL-kieltä käytetään vaativiin kyselyihin ja se on myös mainio välityskieli monille BI- ja analytiikkavälineille. Suosituimmat relaatiokannat ovat Oracle, SQL Server, MySQL ja DB2. Lisäksi on nimenomaan tietovarastokäyttöön tarkoitettuja tuotteita, kuten Teradata, Pure Data Systems (Netezza) ja Vertica.

Omissa data-platform –arkkitehtuurikonsultoinneissani on nykyisin muitakin komponentteja kuin relaatiokanta. Jos dataa tulee todella paljon tai se on rakenteeltaan ei-strukturoitua, tulee Hadoop mukaan kuvioon. Se on oikeastaan hajautettu tiedostojärjestelmä, mutta Hadoop-ekosysteemistä löytyy monia oheistuotteita, kuten Hive, jonka avulla Hadoop saadaan toimimaan relaatiokannan omaisesti mukaanlukien SQL:n tuki. Hadoop on kustannustehokas ja sinne voi nopeasti talletella erilaisia tiedostoja ja luoda niille tietokantarakenteet eli skeemat myöhemmin. Tämä lisää joustavuutta.

Hadoop –ekosysteemi tarjoaa mielenkiintoisia uusia lataus- ja analysointiohjelmia, mukana myös tietojen reaaliaikaista käsittelyä tukevia osia. Hadoop-pohjaista data platformia kutsutaan usein nimellä Data Lake. Ideana on tallettaa nopeasti tiedot raakamuodossa. Tällaista dataa tarvitaan data-analyytikkojen tutkimus- ja protoilutyyppisissä kyselyissä. Vakiintuneeseen päivittäisraportointiin jalostettu data talletetaan Hadoopin rinnalla olevaan perinteisempään relaatiokantaan.

Pilviratkaisuiden suosio on kasvussa. Tietovarastomielessä sieltä löytyykin mielenkiintoisia vaihtoehtoja. Jo mainittu Hadoop toteutetaan useimmiten pilveen helpon käyttöönoton, skaalautuvuuden ja edullisuuden vuoksi. Tietokannan asentaminen, hoitaminen ja laajentaminen ovat erityistä asiantuntemusta vaativia askareita ja vievät aikaa. Näistä töistä voi päästä lähes kokonaan eroon käyttämällä tietokantaa palveluna, eli englanniksi DataBase-as-a-Service, lyhennettynä DBaas. Kaikkia yleisempiä, edellä mainittuja tietokantoja voi hankkia Dbaas-palveluna. Lisäksi on uusia vain pilvipalveluna saatavia tietokantatuotteita, kuten tietovarastokäyttöön tarkoitetut Amazonin Redshift ja Microsoftin Azure Data Warehouse. Näiden suosio on kasvanut mm. nopean liikkeellelähdön ja kustannusten ennustettavuuden vuoksi.

Olen tässä puhunut lähinnä relaatiokannoista. NoSQL-kantoja – jotka siis eivät ole relaatiokantoja – on myös tarjolla runsaasti, sekä omalle koneelle että pilvestä. Palaan niihen tuonnempana toisessa blogissa.

Saattaisit olla kiinnostunut myös näistä

Tiedolla johtaminen vaatii datanlukutaitoa

Lue lisää

Tekeekö teknologia yrityksistä datavetoisimpia (Datadriven)?

Lue lisää

Datojen ja ihmisten siiloutuminen

Lue lisää