Marko Oja
Data-arkkitehti, joka auttaa asiakasta ymmärtämään tekniikan mahdollisuudet ja muuntaa innovatiiviset ideat teknisiksi ratkaisuiksi. Ketterät kehitysmenetelmät ja kehitystyötä tukevat prosessit ovat lähellä Markon sydäntä.
Tiedon laadusta puhuttaessa on perinteisesti pääsääntöisesti keskitytty ihmisen tuottamien virheellisten arvojen havaitsemiseen. Virheitä voi syntyä puhtaan huolimattomuuden takia, kuten vaikkapa väärän arvon syöttämisestä. Tai ne voivat olla prosessipohjaisia, eli vaikkapa tilauksen sulkeminen ennen toimituksen tapahtumista. Tai teknisen järjestelmän kiertämistä, kuten vapaatekstikenttien määrämuotoinen käyttö, eli käyttötapaus, jossa selitekenttää käytetään tallentamaan tuotenumero.
Näitä ongelmia pyritään eliminoimaan kehittämällä lähdejärjestelmiä ohjaamaan käyttäjää tarkemmin, validoimaan tietoa syöttöhetkellä, mallintamalla toimintaprosesseja tai muokkaamalla prosesseja paremmin järjestelmän ehdoilla toimiviksi. Monet MDM-järjestelmät keskittyvät nimenomaan tämän tyyppisten ongelmien ratkaisemiseen. Data Platformien uudet lähdemuodot eivät kuitenkaan aina ole samalla tavalla suoraan ihmisen tuottaman datan järjestelmiä. Näitä lähteitä ovat esimerkiksi teollinen internet (IIoT) ja sosiaalinen media. Jätän tämän blogin ulkopuolelle vielä kuva- ja videopohjaiset lähteet, jotka ovat vielä aivan oma osa-alueensa.
Millaisia haasteita uudet lähdemuodot tiedon validoinnille sitten asettavat? IoT-dataa, sosiaalisen median lähteitä sekä sanomapohjaisia datalähteitä yhdistää se, että monissa tapauksissa niiden käyttäytymistä ei tunneta täsmällisesti ennakkoon, ja niiden sisältämien tietojoukkojen määrä voi vaihdella.
Ensimmäinen haaste eli arvaamaton käyttäytyminen tarkoittaa sitä, että tietojoukko saattaa sisältää tuhansia erillisiä itsenäisesti toimivia arvoja. Yksi helposti selitettävä esimerkki on teollisia prosesseja mittaavat laitteet ja niiden tuottama data. Eli IIoT-striimissä on toisistaan irrallisia fyysisiä laitteita, joiden tuottama tieto ei välttämättä ole suoraan liitoksissa toisiin mittareihin, ja jokainen yksittäinen laite voi käyttäytyä vain niille ominaisella tavalla. Tällöin yksittäisen laitteen tuottamalle datalle määriteltävät raja-arvot ovat valideja vain sille itselleen. Laitteen toimintaa ei siis välttämättä voi riittävän tarkasti ennustaa sen pohjalta, miten toinen tunnettu laite toimii.
Toinen haaste tulee tietojoukon mittauksien määrän vaihtelusta. Tästä esimerkkinä voisi toimia vaikkapa järjestelmä, joka mittaa nestepumpun toimintaa. Oletetaan, että jokaisen pumpun mukana toimitetaan sisäänrakennettu mittauslaitteisto, jonka tuottama informaatio lähetetään Data Platformille, ja jonka pohjalta ennustetaan pumpun toimintahäiriöitä ja huollon tarvetta. Käytössä olevien pumppujen tarkka lukumäärä vaihtelee päivittäin, ja lisäksi jokainen niistä toimii niille yksilöllisessä ympäristössä. Tietosisältö kokonaisuudessaan siis vaihtelee uusia laitteita lisättäessä ja vanhojen poistuessa käytöstä. Koska ympäristö jokaiselle laitteelle saattaa olla yksilöllinen ja ennalta tuntematon, tiukat raja-arvot eivät voi olla jokaiselle laitteelle olla enää täsmälleen samat.
Sellaisissa ympäristöissä, joissa esiintyy esitetyn kaltaisia haasteita tietojoukkojen heterogeenisuudessa, ei siis ole mahdollista määritellä laitteille toimivia rajoja manuaalisesti, analysoimatta jokaisen osan toimintaa erikseen. Vastaavia esimerkkejä on lukuisia, ja tällaisten uudentyyppisten tietolähteiden datan monimuotoisuus aiheuttaa manuaalisesti määriteltävien raja-arvoihin pohjautuvan validoinnin toimintakelpoisuuden kyseenalaiseksi.
“Näitä lähteitä ovat esimerkiksi teollinen internet (IIoT) ja sosiaalinen media.”
Yksi uudenlainen lähdetyyppi on vapaa tekstimuotoinen data, kuten sosiaalinen media. Ongelman tässä, kuten myös jollain asteella IoT-datassakin, on määritellä milloin lähteen tuottama data on virheetöntä. Kun mietitään esimerkiksi Twitter-viestejä, niin ne eivät teknisesti voi olla sisällöltään väärin. Mutta jos näistä viesteistä pyritään päättelemään ovatko ne positiivisia vai negatiivisia, on tuon päätelmän lopputulos kuitenkin mahdollisesti viallinen. Yleensä tällaisissa päätelmissä haetaan ainoastaan riittävän tarkkaa tulosta, kuten 80 % onnistumistarkkuutta. Tiedon laadun tarkastelu tällaisessa tapauksessa liittyy enemmänkin siihen, onko tieto merkityksellistä lopputulokselle, kuin siihen onko se teknisesti validia.
Yksi uudenlainen lähdetyyppi on vapaa tekstimuotoinen data, kuten sosiaalinen media. Ongelmana tässä, kuten myös jollain asteella IoT-datassakin, on määritellä milloin lähteen tuottama data on virheetöntä. Kun mietitään esimerkiksi Twitter-viestejä, niin ne eivät teknisesti voi olla sisällöltään väärin. Mutta kun näistä viesteistä pyritään päättelemään ovatko ne positiivisia vai negatiivisia, on tuon päätelmän lopputulos kuitenkin mahdollisesti viallinen. Yleensä tällaisissa päätelmissä haetaan ainoastaan riittävän tarkkaa tulosta, kuten 80% onnistumistarkkuutta. Tiedon laadun tarkastelu tällaisessa tapauksessa liittyy enemmänkin siihen, onko tieto merkityksellistä lopputulokselle, kuin siihen onko se teknisesti validia. Lisäksi lopputulosten yhtenäisyys historian kanssa muodostuu merkittäväksi tiedonlaadulliseksi mittariksi.
Tuleeko tiedon kulku sitten pysäyttää potentiaalisen virheen sattuessa? Tämä on perinteisissä järjestelmissä ollut usein toiminnallisena lähtökohtana. Ei välttämättä ole pysäytetty koko ympäristöä, mutta on rajoitettu esimerkiksi tietyn eräajon sisällön siirtyminen sitä hyödyntävään kerrokseen. Tässä lähestymisessä on kaksi ongelmaa. Ensimmäiseksi, jos käytössä on puhtaasti matemaattiseen arvioon perustuva validointi, niin ei voida olla varmoja siitä, onko kyseessä varmasti tekninen virhe vai harvinainen poikkeama itse mitattavassa prosessissa.
Toinen ongelma on virheen aiheuttaman epäkelpoisuuden laajuuden määrittely. Jos esimerkiksi 10 % mittalaitteista tuottaa virheellistä tietoa, ei se tarkoita sitä, että loput 90 % eivät toimisi oikein. Toki jos järjestelmästä merkittävä osa toimii virheellisesti, niin on perusteltua miettiä voiko muuhunkaan osaan tiedosta luottaa. Onkin tärkeää pyrkiä määrittelemään, tietomallin ja metatiedon pohjalta, tietopisteiden liittyminen toisiinsa. On esimerkiksi aivan eri tilanne, jos kaikki lämpötila-anturit reistailevat läpi prosessin, verrattuna siihen, että yhdenkään raakamateriaalin käsittelyyn liittyvän mittarin arvot eivät päivity. Eli mikäli tietoa hyödyntävä prosessi pyrkii ennustamaan vaikkapa valmistuotteen pakkauksessa käytettävän laitteen rikkoutumista, niin ei tuotantoprosessin alkupään virhetilanteella ole siihen välttämättä lainkaan vaikutusta.
On siis tärkeää ymmärtää miten ja missä käsiteltävä tieto muodostuu ja mihin sitä hyödynnetään. Virheen todennäköisyyden ja vaikutuksen määrittelyn vaikeudesta johtuen tiedon tallennusprosessin pysäyttäminen on harvoin perusteltua. Virheellisen tiedon käsittelyprosessissa tulisi ennemminkin keskittyä poikkeamien raportointiin ja analysointiin sekä lopulta virheellisen tiedon merkkaamiseen epäluotettavaksi eritasoisilla kategorioilla, jotka perustuvat käyttötapauksien tarpeisiin. Näin voidaan käyttötapauskohtaisesti määritellä, milloin lopputulos ei ole enää kelvollinen käyttäjille.
Tiedon korjaaminen ja virheiden minimointi ovat usein hitaita prosesseja. On ensiarvoisen tärkeää saada informoitua tietoa hyödyntävät tahot laatupoikkeamasta kauan ennen kuin nämä prosessit ehtivät korjata varsinaisen tiedon laadullisen virhetilanteen.
“Laitteen toimintaa ei siis välttämättä voi riittävän tarkasti ennustaa sen pohjalta, miten toinen tunnettu laite toimii.”
Data-arkkitehti, joka auttaa asiakasta ymmärtämään tekniikan mahdollisuudet ja muuntaa innovatiiviset ideat teknisiksi ratkaisuiksi. Ketterät kehitysmenetelmät ja kehitystyötä tukevat prosessit ovat lähellä Markon sydäntä.