Erän ja suoratoiston käsittelyn ymmärtäminen

Valmis

Tietojenkäsittely on vain raakadatan muuntamista mielekkääksi tiedoksi prosessin kautta. Tietoja voi käsitellä kahdella yleisellä tavalla:

  • Erän käsittely, jossa kerätään ja tallennetaan useita tietotietueita ennen käsittelemistä yhdessä toiminnossa.
  • Streamin käsittely, jossa tietolähdettä seurataan ja käsitellään jatkuvasti reaaliaikaisesti uusien tietotapahtumien ilmetessä.

Eräkäsittelyn ymmärtäminen

Erän käsittelyssä äskettäin saapuvat tietoelementit kerätään ja tallennetaan, ja koko ryhmä käsitellään yhdessä eränä. Juuri silloin, kun kutakin ryhmää käsitellään, voidaan määrittää useilla tavoilla. Voit esimerkiksi käsitellä tietoja ajoitetun aikavälin perusteella (esimerkiksi kerran tunnissa), tai ne voidaan käynnistää, kun tietty määrä tietoja on saapunut, tai jonkin muun tapahtuman tuloksena.

Oletetaan esimerkiksi, että haluat analysoida tieliikennettä laskemalla tieosuuden autojen määrän. Eräkäsittelyn lähestymistapa siihen edellyttäisi, että keräät autot parkkipaikalta ja lasket ne sitten yhdessä toiminnossa, kun ne ovat levossa.

Kuva autoista, jotka lasketaan parkkipaikalla.

Jos tie on ruuhkainen, koska useita autoja ajaa usein, tämä lähestymistapa voi olla haitaksi; ja huomaa, että et saa tuloksia, ennen kuin olet pysäköinyt erän autoja ja laskenut ne.

Todellinen esimerkki erän käsittelystä on tapa, jolla luottokorttiyhtiöt käsittelevät laskutusta. Asiakas ei saa laskua jokaisesta erillisestä luottokorttiostosta vaan yhden kuukausittaisen laskun kaikista kyseisen kuukauden ostoista.

Eräkäsittelyn etuja ovat seuraavat:

  • Suuria tietomääriä voidaan käsitellä kätevään aikaan.
  • Se voidaan ajoittaa suoritettavaksi aikana, jolloin tietokoneet tai järjestelmät saattavat muuten olla käyttämättömänä, kuten yhdessä yössä, tai huippuaikojen ulkopuolella.

Erän käsittelyn haittoja ovat muun muassa seuraavat:

  • Tietojen käytön ja tulosten saamisen välinen viive.
  • Kaikkien erätyön syötetietojen on oltava valmiita, ennen kuin erä voidaan käsitellä. Tämä tarkoittaa sitä, että tiedot on tarkistettava huolellisesti. Erätöiden aikana ilmenevät tietojen, virheiden ja ohjelman kaatumisen ongelmat pysäyttävät koko prosessin. Syötetiedot on tarkistettava huolellisesti, ennen kuin työ voidaan suorittaa uudelleen. Pienetkin tietovirheet voivat estää erätyön suorittamisen.

Tutustu streamin käsittelyyn

Streamin käsittelyssä jokainen uusi tietoyksikkö käsitellään, kun se saapuu. Toisin kuin eräkäsittelyssä, seuraavaan erän käsittelyjaksoon ei kulu aikaa – tiedot käsitellään yksittäisinä yksikköinä reaaliaikaisesti sen sijaan, että niitä käsiteltäisi erän kerrallaan. Stream-tietojen käsittely on hyödyllistä tilanteissa, joissa uusia, dynaamisia tietoja luodaan jatkuvasti.

Hypoteesiseen autonlaskentaongelmaan voidaan esimerkiksi soveltaa virtautusmenetelmää laskemalla autot reaaliaikaisesti niiden ohittaessa:

Kuva autoista, jotka lasketaan ohitetessa.

Tässä lähestymistavassa sinun ei tarvitse odottaa, kunnes kaikki autot on pysäköity, jotta voit aloittaa niiden käsittelyn, ja voit koostaa tiedot aikavälien kuluessa. Laskemalla esimerkiksi kunkin minuutin aikana ohittavien autojen määrä.

Reaalimaailman esimerkkejä tietojen suoratoistosta ovat seuraavat:

  • Rahoituslaitos seuraa osakemarkkinoiden muutoksia reaaliaikaisesti, laskee riskiarvon ja tasapainottaa salkkuja automaattisesti osakekurssimuutosten perusteella.
  • Online-peliyritys kerää reaaliaikaisia tietoja pelien ja pelien vuorovaikutuksesta ja syöttää tiedot peliympäristöönsä. Sen jälkeen se analysoi tietoja reaaliajassa, tarjoaa kannustimia ja dynaamisia kokemuksia pitääkseen yhteyttä pelaajiinsa.
  • Kiinteistösivusto, joka seuraa tietojen alijoukkoa mobiililaitteista ja antaa reaaliaikaisia ominaisuussuosituksia kiinteistöille niiden maantieteellisen sijainnin perusteella.

Streamin käsittely sopii erinomaisesti aikakriittisille toiminnoille, jotka edellyttävät välitöntä reaaliaikaista vastausta. Esimerkiksi savun ja lämmön takia rakennusta valvovan järjestelmän täytyy laukaista hälytyksiä ja avata ovia, jotta asukkaat voivat paeta välittömästi tulipalon sattuessa.

Erä- ja virtautettavien tietojen erojen ymmärtäminen

Eräkäsittelyn ja suoratoistettavan käsittelyn tietojen käsittelyyn liittyy muitakin eroja:

  • Tietojen laajuus: Erän käsittely voi käsitellä kaikki tietojoukon tiedot. Streamin käsittelyllä on yleensä pääsy vain uusimpiin saatuihin tietoihin tai vieritysaikaikkunassa (esimerkiksi viimeiset 30 sekuntia).

  • Tietojen koko: Erän käsittely sopii suurten tietojoukkojen tehokkaaseen käsittelyyn. Streamin käsittely on tarkoitettu yksittäisille tietueille tai muutamasta tietueesta koostuville mikroerille .

  • Suorituskyky: Tietojen vastaanottamiseen ja käsittelyyn kuluva aika. Eräkäsittelyn viive on yleensä muutama tunti. Suoratoiston käsittely tapahtuu yleensä heti, kun viive on sekuntien tai millisekunnin järjestyksessä.

  • Analyysi: Käytät yleensä erän käsittelyä monimutkaisen analytiikan suorittamiseen. Streamin käsittelyä käytetään yksinkertaisissa vastausfunktioissa, koosteissa tai laskutoimituksissa, kuten liukuvat keskiarvot.

Erä- ja virtakäsittelyn yhdistäminen

Monet suuren mittakaavan analyysiratkaisut sisältävät erän ja suoratoiston käsittelyn yhdistelmän, joka mahdollistaa sekä historiallisen että reaaliaikaisen tietoanalyysin. On yleistä, että stream-käsittelyratkaisut tallentavat reaaliaikaisia tietoja, käsittelevät niitä suodattamalla tai koostamalla niitä ja esittävät ne reaaliaikaisten koontinäyttöjen ja visualisointien kautta (esimerkiksi näyttämällä tien varrella kulkeneiden autojen juoksevan kokonaismäärän kuluvan tunnin aikana) säilyttäen samalla käsiteltävät tulokset historiaanalyysin tietosäilössä eräkäsittelytietojen rinnalla (esimerkiksi haluat mahdollistaa liikennemäärien analysoinnin kuluneen vuoden aikana).

Silloinkin, kun tietojen reaaliaikaista analysointia tai visualisointia ei tarvita, suoratoistotekniikoita käytetään usein reaaliaikaisten tietojen tallentamiseen ja tallentamiseen tietosäilöön myöhempää erän käsittelyä varten (tämä vastaa kaikkien maantiellä parkkipaikalle kulkevien autojen ohjaamista uudelleen ennen niiden laskemista).

Seuraava kaavio näyttää joitakin tapoja, joilla erän ja suoratoiston käsittely voidaan yhdistää suuren mittakaavan tietoanalytiikka-arkkitehtuuriin.

Kaavio tietoanalytiikka-arkkitehtuurista, joka sisältää erän ja suoratoiston käsittelyn.

  1. Suoratoistettavan tietolähteen tietotapahtumat tallennetaan reaaliaikaisesti.
  2. Muista lähteistä peräisin olevat tiedot käsitellään tietosäilössä (usein Data Lake -tallennustilassa) erän käsittelyä varten.
  3. Jos reaaliaikaista analysointia ei tarvita, talletetut virtautetut tiedot kirjoitetaan tietosäilöön myöhempää erän käsittelyä varten.
  4. Kun reaaliaikaista analysointia vaaditaan, tietovirtojen käsittelytekniikkaa käytetään tietojen suoratoiston valmistelemiseen reaaliaikaista analyysia tai visualisointia varten. usein suodattamalla tai koostamalla tietoja ajallisissa ikkunoissa.
  5. Ei-suoratoistettavat tiedot käsitellään säännöllisin väliajoin niiden valmistelemiseksi analysointia varten, ja tulokset pysyvät analyysitietosäilössä (jota kutsutaan usein tietovarastoksi) historiallista analysointia varten.
  6. Streamin käsittelyn tulokset voidaan myös säilyttää analyyttisessa tietosäilössä historiallisen analyysin tukemiseksi.
  7. Analyysi- ja visualisointityökaluja käytetään reaaliaikaisten ja historiallisten tietojen esittämiseen ja tutkimiseen.

Huomautus

Yleisesti käytettyjä ratkaisuarkkitehtuureja yhdistettyjen erän ja streamin tietojenkäsittelyyn ovat lambda - ja delta-arkkitehtuurit . Näiden arkkitehtuurien tiedot eivät kuulu tämän kurssin piiriin, mutta ne sisältävät tekniikoita sekä suuren mittakaavan erätietojen käsittelyyn että reaaliaikaiseen stream-käsittelyyn päästä päähän -analyysiratkaisun luomiseksi.