Johdanto integraatioihin ja iPaaS:iin
Tietojärjestelmien ja sovellusten välinen tiedonsiirto ja kommunikointi ovat jo pitkään olleet olennaisen tärkeä osa minkä tahansa organisaation toimintaa. Integraatio erillisenä tietoteknisenä konseptina nousi esiin 1990-luvulla ja 2000-luvun alussa, mutta mistään uudesta asiasta ei ollut silloinkaan kyse – suoria integraatioita eri järjestelmien välille oli tehty osana järjestelmiä jo ennen ensimmäisiä integraatioalustoja.
Integraatio tietoteknisenä käsitteenä kattaa laajan alan. Kaikkein yksinkertaisimmillaan se tarkoittaa sitä, että yhden järjestelmän sanoma välitetään toiselle järjestelmälle ja muunnetaan muotoon, jonka vastaanottaja hyväksyy. Monimutkaisimmillaan integraatiot tarjoavat kehittyneitä liittymiä järjestelmiin, toteuttavat vaativia järjestelmienvälisiä bisnesprosesseja ja mahdollistavat monipuolisia viestintäväyliä järjestelmien välillä.
Microsoftin BizTalkin ensimmäinen versio, BizTalk Server 2000, julkaistiin vuoden 2000 viimeisinä päivinä, mikä kertoo siitä, että tässä vaiheessa integraatio käsitteenä oli nosteessa. Juuri näihin aikoihin suuri osa organisaatioista oli läpikäynyt digitalisaation ensimmäisen vaiheen ja ottanut monipuolisesti käyttöön IT-järjestelmiä osana olennaisia prosessejaan. Siitä lähtien, teknologian kehittyessä ja IT:n noustessa alati keskeisempään asemaan, on integraation merkitys kasvanut.
Spagetista pilveen
Vielä tänäkin päivänä integraatiot voidaan jakaa kolmeen pääkategoriaan: point-to-point -integraatioihin, on-prem integraatioihin ja pilvi-integraatioihin. Näistä kaksi jälkimmäistä edellyttävät integraatioalustaa, ts. nimenomaan integraatiosovellusten toteuttamiseen tarkoitettua tuotetta.
Point-to-point -integraatiot, joita näkee myös spagetti-integraatioiksi kutsuttavan, ovat yleensä suoraan eri järjestelmiin kooditasolla toteutettuja ratkaisuja, joissa ei käytetä integraatioalustaa. Spagettia nämä ovat siksi, että ne ovat vaikeasti ylläpidettäviä ja valvottavia, eikä niiden muodostama arkkitehtuuri ole oikeastaan ikinä muuta kuin kaoottinen – kuin kasa spagettia. Toisin sanoen kaikki alusta-ajatusmaailman hyödyt loistavat poissaolollaan.
On-prem eli on-premises -termillä viitataan organisaation sisäverkkoon lokaalisti, esim. virtuaalipalvelimelle, asennettuun alustasovellukseen. Puhdas on-prem -alusta tarjoaa kyllä monia keskitetyn integraatiopalvelun eduista, esim. valvonnan, mutta ei tarjoa modernin pilviteknologian hyötyjä.
Pilvi-integraatioalustat ovat viime vuosina yleistyneet nopeasti vanhojen on-prem -teknologioiden kustannuksella. Pilvi-integraatioiden saralla on laajaa skaala erilaisia lähestymistapoja, aina perinteisestä virtuaalipalvelinlähtöisestä mallista puhtaaseen palvelupohjaiseen serverless-malliin. Yhteistä pilvialustoille on kuitenkin se, että ne hyödyntävät monipuolisesti pilven tarjoamia hyötyjä, mm. mutkatonta skaalautuvuutta ja replikointia sekä helppoa liittymistä muihin pilvipalveluihin.
Point-to-point- eli spagetti-integraatio vs. integraatioalusta
iPaaS- ja hybridimallit
Pilvipalveluiden yleistyessä on syntynyt täysin uusia toimitusmalleja sovelluksille, joiden ansiosta ”perinteinen” kalliiden lisenssien ostaminen ja päivittäminen on pitkälti historiaa. Puhutaan ns. SaaS-mallista (software as a service) ja PaaS-mallista (platform as a service). Eroja perinteiseen tapaan hankkia sovellus on useita. Lisenssien ostamisen sijaan sovellus ikään kuin ”vuokrataan” kuukausimaksulla tarvitulla volyymillä. Pilvestä tarjotuista palvelusta ei myöskään koidu organisaatiolle ylläpito- ja laiteinfrakustannuksia, eikä palvelinraudan päivityksistä tarvitse huolehtia.
Integraatioiden kohdalla puhutaan ns. iPaaS-mallista eli integration platform as a service, joka ei periaatetasolla eroa suuresti yllä kuvaillusta PaaS-mallista. Tässäkin ideana on nimenomaan se, että integraatioalusta ”vuokrataan” pilvestä. Pilviteknologian hyödyntämistavoissa on eroja pilvi-integraatioalustojen välillä, mikä näkyy eroina esim. skaalautuvuudessa. Osa alustoista perustuu perinteiseen palvelinmalliin, jossa suorituskyky ja replikointi aikaansaadaan aavistuksen jäykästi lisäämällä suoritusyksiköitä. Toiset perustuvat palvelimettomaan malliin (serverless), jossa skaalautuvuus ja replikointi perustuu allokoidun suoritustehon muuttamiseen; käytännössä siis vaativille integraatioille annetaan enemmän suoritustehoa ja -aikaa kuin kevyemmille. Serverless-mallissa, toisin kuin server-mallissa, on helppoa skaalata suorituskykyä myös alaspäin!
Erona perinteiseen SaaS-malliin, jonka alle mahtuu kaikki yksinkertaisista kotisivumoottoreista enterprise-tason ERP-järjestelmiin, on ns. hybridimalli olennainen käsite iPaaS-järjestelmissä. Hybridimallilla tarkoitetaan sitä, että osa organisaation järjestelmistä, tietovarastoista ja prosesseista sijaitsee pilvessä ja osa yrityksen sisäverkossa, sen omassa palvelinympäristössä. Yksittäinen järjestelmä on muissa kuin aivan poikkeustapauksissa jommassakummassa; integraatioalustan on tarjottava kyky kommunikoida pilven ja sisäverkon välillä.
iPaaS:in hybridimalli
Massa-ajoista reaaliaikaisuuteen
IT-alan konkarit muistavat massa-ajot eli batchit, nämä usein yöaikaan suoritetut massiiviset tiedonsiirrot, joissa järjestelmien tiedoissa tapahtuneet muutokset synkronoitiin muihin järjestelmiin isokokoisten tiedostojen ja raskaiden sekä aikaa vievien prosessien avulla. Integraatiota tämäkin, mutta ei kovin modernia. Nyt painotetaan reaaliaikaisuutta.
iPaaS-alustat tarjoavat monia työkaluja reaaliaikaisuuden saavuttamiseen. Käytännössä ne voidaan karkeasti jakaa sanoma-, tapahtuma- ja pyyntöperustaiseen liikenteeseen, joita voidaan toki yhdistellä jopa yhdessä integraatiototeutuksessa. Myös massa-ajojen kaltaiset ajastetusti käynnistyvät prosessit voidaan toteuttaa moderneillakin alustoilla, sillä niillekin on aikansa ja paikkansa.
Sanomaperustaisessa liikenteessä tiedot lähettävä järjestelmä käynnistää prosessin lähettämällä tiedot muutoksista kaikille vastaanottaville järjestelmille, joiden odotetaan reagoivan niihin käytännössä välittömästi. Myös tapahtumapohjaisessa liikenteessä prosessin käynnistää järjestelmä, jossa muutokset tapahtuvat, mutta sen sijaan että se lähettäisi sanoman kaikkiin integroituihin järjestelmiin, ilmoittaa se muutoksesta ns. tapahtumakeskukseen. Muut järjestelmät lukevat omassa tahdissaan tapahtumakeskuksesta niitä koskevia tapahtumia. Etu sanomapohjaiseen liikenteeseen on paitsi pienempi määrä “integraatioputkia” järjestelmästä toiseen myös se, että järjestelmät voivat käsitellä muutoksia paremmin omassa tahdissaan.
Pyyntöperustaisessa liikenteessä suunta on eri: tiedot vastaanottava järjestelmä pyytää niitä lähettävältä päältä osana omaa prosessiaan. Tyypillinen tapaus voisi olla esim. saatavuustietojen lisääminen varastopalvelusta verkkokaupan tilaukseen käsittelyä varten.
Sanoma- ja tapahtumaperustainen liikenne
Integraatioalustan rooli
Modernissa IT-ympäristössä integraatioalustan rooli on suurempi kuin ikinä ennen; useimmilla organisaatioilla on enemmän erilaisia järjestelmiä kuin koskaan aikaisemmin, ja niiden keskinäinen kommunikointi on olennaisen tärkeää. Samalla tarve liittyä yhteistyökumppaneiden ja julkisen sektorin tarjoamiin palveluihin on korostunut. Lisähaasteita tuovat asteittainen siirtymä omista palvelinympäristöistä pilveen, sekä tarve reaaliaikaiselle tiedon saatavuudelle läpi organisaation.
Integraatioalustan ei tule ainoastaan tukea nykyaikaisten järjestelmien ja sovellusten keskinäistä kommunikaatiota, vaan sen on kyettävä tarjoamaan moderneja rajapintoja ja kommunikaatioväyliä vanhentuneille ns. legacy-järjestelmille, jotka ovat tippuneet teknologisen kehityksen kelkasta mutta jotka ovat silti välttämätön osa organisaation prosesseja, sekä organisaation sisäverkon ja pilven välillä.
Organisaatioiden järjestelmäkirjon kasvaessa tapahtuu melkeinpä väistämättä niin, että suoria korrelaatioita bisnesprosessien ja tietoteknisten järjestelmien työkulkujen välillä ei löydy, vaan olennaisia osia bisnesprosesseista jää työkulkujen ”väliin” tai kokonaan niiden ulkopuolelle. Integraatioalustojen tarjoaman automatiikan ja orkestrointityökalujen avulla nämä prosessit voidaan automatisoida.
Modernin iPaaS-järjestelmän on pystyttävä vastaamaan jokaiseen näistä haasteista, ja lukemattomiin muihin. Tässä blogisarjassa tulemme esittelemään Microsoftin Azure Integration Services -alustan tarjoamia mahdollisuuksia, ja miten me Devisioonassa ratkaisemme integraatiohaasteita alustan avulla.
Sarjan seuraavassa osassa keskitymme pilvi-integraatioihin ja ns. cloud first -lähestymistapaan. Voit lukea sen täältä.
Kuvat: Devisioonan iPaaS-porukka
Jesse tuntee integraatiot, sovelluskehityksen ja hyvän musiikin. Täällä Jesse kirjoittaa lähinnä kahdesta ensiksimainitusta.