Osana IoT-oppimisympäristö-hanketta kehitetään yleiskäyttöistä data-alustaa sensoreiden keräämien olosuhdetietojen tallentamiseksi ja analysoimiseksi. Tavoitteena on hyödyntää samaa ohjelmistoarkkitehtuuria projektin kaikissa oppimisympäristöissä, joten alustan mukautettavuuteen ja skaalautuvuuteen on kiinnitettävä erityistä huomiota.
IoT-järjestelmä koostuu tyypillisesti lukuisista, jopa sadoista yksittäisistä sensoreista ja laitteista. Nämä pienet laitteet ovat laskentateholtaan rajallisia, niitä saattaa olla usealta valmistajalta, ja niiden konfigurointi voi vaatia manuaalista työtä. Eri tarkoituksiin suunnatut laitteet saattavat myös käyttää erilaisia formaatteja tai protokollia tiedon esittämiseen ja välittämiseen. Olisi myös tärkeää, että järjestelmään pystytään lisäämään uusia laitteita sen käyttöönoton jälkeen, jos ilmenee tarvetta laajentaa sensoriverkkoa, esimerkiksi ottaa seurantaan uusia mitattavia kohteita. Vaikeissa olosuhteissa laitteet voivat vaurioitua, joten niiden huoltamisen ja uudelleenkonfiguroinnin tai vaihtamisen kokonaan uusiin tulisi olla mahdollista. Virheiden välttämiseksi uusien laitteiden lisäämisen tulisi olla mahdollisimman pitkälle automatisoitua - manuaalinen laitetunnisteiden ja konfiguraatiotietojen muokkaus on paitsi työlästä, myös alttiina inhimillisille virheille.
Jotta kerätystä mittausdatasta olisi käytännön hyötyä, on sitä tietysti pystyttävä analysoimaan ja visualisoimaan. Dataan on luotava erilaisia näkymiä eri käyttäjäryhmien tarpeisiin ja samalla on huolehdittava tietoturvallisesta pääsynhallinnasta dataan.
Pilvipohjaisten palveluiden hyödyntäminen nopeuttaa datan keräämiseen ja hyödyntämiseen suunnattujen sovellusten kehittämistä. Sensoriverkon laitteiden heterogeenisyydestä johtuen palveluita joudutaan useimmiten täydentämään erilaisin räätälöinnein, joiden niidenkin toteutuksessa on kiinnitettävä suurta huomiota skaalautuvuuteen ja tulevaisuuden laajennustarpeisiin. Kuvaamalla datan rakenne tarkasti mahdollistetaan luotettava tiedon välitys ja yhteistoiminta eri palveluiden välillä.
IoT-oppimisympäristö-projektissa on edetty data-alustan määrittely- ja suunnitteluvaiheeseen. Alusta tullaan toteuttamaan oheisen korkean tason arkkitehtuurin mukaisesti. Paikallisesti sensoridata kerätään Home Assistant -sovellukseen, josta se edelleen lähetetään pilvipalveluun MQTT-protokollan välityksellä. Pilvipalvelussa mittausdata tallennetaan aikasarjana tietokantaan, ja yhdessä sensoreihin liittyvien metatietojen kanssa siitä voidaan tehdä halutunlaisia visualisointeja. Datan rakenne on määritelty GraphQL-skeemana, mikä mahdollistaa käyttöliittymien rakentamisen siten, että ylläpidon kannalta hankalia kytköksiä järjestelmän osien välille syntyy mahdollisimman vähän.