TM2: andmete agregeerija

Mustri tüüp: töötlemise muster
Peamine kasusaaja:
automatiseeritud süsteem
Eesmärk
: sõnumitöötlus
Allikas
: eksperthinnang
Teenuste arv
: NA

Abstract

TM2: Content aggregator is used to combine multiple datasets into a single dataset that can then be processed as a whole. The common case in the context of X-Road is pulling data via multiple services and from different systems. In this case it is useful to create a single software component to combine all the pulled small datasets into a single dataset for further processing.

Sissejuhatus

Muster kirjeldab üldist skeemi, mille abil koondatakse mitu väiksemat andmestiku üheks andmestikuks, mida on võimalik hiljem töödelda kui tervikut. Antud muster sobib paljude erinevate eesmärkide saavutamiseks (erinevate andmebaaside andmestiku koondamine, perioodi jooksul kogutud andmete korraga töötlemine jne).

Probleem

Infosüsteem vajab oma talitusprotsessi toetamiseks andmeid, mille pärimiseks tuleb tarbida mitut erinevat teenust. Tarbitavate teenuste väljundite vorming ja detailsuse aste on erinevad, millest tulenevalt on vastuste kombineerimine keerukas. Lisaks võib olla vajalik erinevatest süsteemidest pärit andmete normaliseerimine ja kasutatavate klassifikaatorite ühtlustamine.

Lahendus

Andmete koondamiseks luuakse andmete agregeerija (i.k. content aggregator). Andmete agregeerija ülesandeks on vajalike X-tee teenuste käivitamine ja nende vastuste agregeerimine üheks andmestikuks, mis on edasises talitusprotsessis kergemini töödeldav. Andmete agregeerija käivitab talitusprotsessi jaoks vajalikud teenused ja ootab iga teenuse vastuse. Kui vajalik vastuste komplekt on koos, siis kogub andmete agregeerija vajalikud andmeväljad, agregeerib neist ühtse andmestiku ja edastab selle järgmisele infosüsteemi komponendile töötlemiseks.

Lisakaalutlused

Andmete agregeerija loomisel tuleks arvestada teenuse järjest- ja paralleelkasutuse mustritega.

  • Kui ühe päringu tulemus on teiste päringute sisendiks, siis tuleb need päringud jooksutada peale vastava sisendi saamist (vt "KM1: teenuste järjestkasutus").
  • Kui kõigi päringute sisend on sisuagregaatori töö alguses teada ja päringute arv ei ole väga suur, siis on soovituslik päringud sooritada paralleelselt (vt "KM4: teenuste paralleelkasutus").

Agregeeritud andmestike peale töötlemist väiksemateks andmestikeks jagamiseks sobib muster "TM1: andmete jagaja".

Näide

Näitena on toodud omavahel seotud Kohtute Infosüsteem ja E-toimiku süsteem. Kohtute infosüsteemi teenust "kis.MKMLeiaDokumendid" kasutatakse üldjuhul paralleelselt teenusega "e-toimik.LeiaIsikuKohustised". Mõlema teenuse väljundiks olevad andmestikud on omavahel seotud ja nendest ühise andmestiku moodustamiseks kasutatakse andmete agregeerijat.


Joonis 5.9 Teenuste "kis.MKMLeiaDokumendid" ja "e-toimik.LeiaIsikuKohustised" kooskasutus.



Viimati muudetud: esmaspäev, 24. oktoober 2016, 13.35