Mikä on DataOps ja mihin sitä tarvitaan?

Ennen data engineer -roolin muodostumista analyytikot ja data scientistit tekivät varsinkin pienemmissä organisaatioissa kaiken datan integroinnista ja muokkauksesta matemaattisten mallien hyödyntämiseen. Työnkuva oli hyvin laaja: esimerkiksi data scientistin oletettiin osaavan oman alansa koneoppimismallien muodostamisen lisäksi MapReduce-ajojen rakentaminen Hadoopilla. Dataputkien rakentaminen on ollut monessa tapauksessa ”välttämätön” paha, joka on tarvittu datan jatkokäyttöä varten. Historian vuoksi datakehityksen mallit ja menetelmät ovat muodostuneet hitaasti.

Termi DataOps tulee sanoista Data Operations. DataOps-käsitettä on tiettävästi käytetty ensimmäisen kerran vuoden 2014 paikkeilla. Kyseessä on siis kohtuu tuore ja monelle tuntematonkin ilmiö. Tässä tekstissä syvennytään siihen, mitä DataOps tarkalleen ottaen tarkoittaa, ja mihin sitä ylipäätään tarvitaan.

DevOps (Development Operations) on monille tuttu ohjelmointipuolen käsite, josta DataOps on osin saanut innoituksensa. Kehittäminen ei ole ollut data-alalla yhtä strukturoitua kuin ohjelmistopuolella, mihin DataOps on tuonut ratkaisuja. Kun DevOps pyrkii nopeuttamaan sovellusten kehittämistä, pyrkii DataOps ketteryyteen datatuotteissa. Molemmissa käsitteissä on pohjimmiltaan kyse prosessien tehostamisesta, nopeuttamisesta ja virtaviivaistamisesta. Automaation ja yhteistyön merkitys on keskiössä.

DataOpsille ei ole olemassa yhtä vakiintunutta määritelmää. DataOps ei ole mikään yksi asia, vaan joukko erilaisia toimintatapoja ja työkaluja, joilla päästään mahdollisimman tehokkaasti ja laadukkaasti haluttuun lopputulokseen. Kyse on toimintatavasta, joka painottaa yhteistyön ja kommunikaation merkitystä. DataOpsin avulla pystytään kehittämään datatuotteita nopealla syklillä, virheettömästi ja siten, että tekeminen on testattua. DataOpsin käyttöönotto vaatii organisaatiolta panostusta, mutta on pitkällä tähtäimellä kannattava investointi.

Miksi DataOpsista sitten täytyy puhua? Monet asiakkaat ovat yhä alkutekijöissään omissa dataprojekteissaan, kun puhutaan ketterästä (ja jatkuvasta) kehittämisestä, testauksesta, datan laadun varmistamisesta, data-alustojen infrastruktuurien optimoinnista ja arkkitehtuureista sekä monitoroinneista. Nämä käytänteet tulisi ottaa käyttöön edellä olevassa tärkeysjärjestyksessä osaamisen lisääntyessä. Seuraavaksi avataan lyhyesti kunkin käsitteen merkitystä.

1. Jatkuvaan kehitykseen liittyy olennaisena osana CI/CD (continuous integration) / (continuous development) -työkalujen käyttö. Nopeassa syklissä toteutettavat muutokset vaativat CI/CD-työkalun käyttöä, jonka avulla muutokset tehdään ensin kehitysympäristöön, testataan testiympäristössä ja siirretään hallitusti hyväksytyn testauksen jälkeen ns. ”tuotantoon”. CI/CD-työkalut mahdollistavat nopeat muutokset ”nappia painamalla” ja hallitun siirron eri ympäristöjen välillä, sekä vähentävät virheitä. Näin jatkuva toimitus on mahdollista.

2. Testaamista käsiteltiin jo aiemmassa kohdassa, ja se liittyy olennaisesti DataOps-viitekehykseen, jossa dataputkia kehitetään jatkuvasti pienissä kokonaisuuksissa, ja varmistetaan, että tuotantoon siirrettävät osat ovat toimivia ja hyvälaatuisia. Yksinkertaistettuna testaamisella tarkoitetaan sitä, että kun esimerkiksi dataputkeen tehdään muutos, sitä käytetään kuten oikeassakin käyttötarkoituksessa ja yritetään havainnoida, ilmeneekö virheitä tai muita puutteita verrattuna vaatimuksiin.

3. Datan laadun varmistuksella tarkoitetaan muun muassa sitä, että tietystä lähteestä tulevalle datalle tehdään tarkastus siltä varalta, että esimerkiksi päivämäärä-kentissä ei ole tekstimuotoista sisältöä.

4. Data-alustojen infrastruktuureilla viitataan datan integraatioihin ja muokkaukseen (data pipeline). Dataputket sisältävät useita eri komponentteja, kuten mm. väliaikaisia tietojoukkoja, datan muokkaamiseen tarkoitettuja skriptejä sekä tallennuspaikkoja. Suorituskykyyn ja kustannustehokkuuteen pystyy vaikuttamaan arkkitehtuurisuunnittelulla, joka puolestaan perustuu huolellisesti tehtyyn vaatimusmäärittelyyn.

5. Monitoroinnilla tarkoitetaan datan seurantaa ja valvontaa sen siirtyessä eri komponenttien välillä. Tällöin monitoroidaan erityisesti datan kulkua, sen käyttöä ja mahdollisia tietoturva- ja tietosuojaan liittyviä riskejä.

DataOpsin merkitys ja käyttöönotto on kasvanut viime vuosina, koska yhä useammat organisaatiot ovat tunnistaneet datan merkityksen liiketoiminnalleen. Organisaatiot keräävät valtavia määriä dataa joka päivä eri lähteistä, kuten asiakkailta, toimittajilta ja sisäisistä järjestelmistä. Tämän datan analysointi ja hyödyntäminen päätöksenteossa on kuitenkin usein haasteellista, sillä datan laatu ja luotettavuus voivat olla heikkoja. DataOpsia noudattamalla päästään parhaaseen mahdolliseen lopputulokseen, jossa on minimoitu virheiden määrä. DataOpsin avulla organisaatiot voivat tehostaa datan analysointia ja hyödyntämistä päätöksenteossa sekä parantaa datan laatua ja luotettavuutta. Kaiken kaikkiaan DataOps on tärkeä strategia organisaatioiden menestykselle nykypäivänä, jossa data on yhä tärkeämpi voimavara liiketoiminnassa.

Edellinen
Edellinen

Tuleeko tekoäly korvaamaan ihmisen data-alalla?

Seuraava
Seuraava

Data citizen ja datan demokratisoituminen