OLTP ja OLAP tehnoloogiad. OLTP – online-tehingute töötlemise süsteemid

OLTP ja OLAP süsteemid. Andmete kaevandamine

Võimalik on tuvastada teatud infosüsteemide klassid, mille jaoks on tugevalt või nõrgalt normaliseeritud andmemudelid sobivamad.

Kõrgelt normaliseeritud andmemudelid sobivad hästi nn OLTP süsteemid (On-line tehingute töötlemine - tehingu kiire töötlemine).

Tüüpilised OLTP süsteemide näited on laoarvestussüsteemid, piletitellimissüsteemid, pangasüsteemid, mis teostavad rahaülekande toiminguid jne. Selliste süsteemide põhiülesanne on sooritada suur hulk lühikesi tehingud. Toimimispõhimõtete mõistmiseks käsitletakse tehingumehhanismi üksikasjalikult 16. loengus OLTP süsteemid Piisab, kui mõelda tehingust kui tuumatoimingust, mis muudab andmebaasi olekut.

Tehingud OLTP-s - süsteem on suhteliselt lihtne, näiteks "võta kontolt A raha välja ja lisage see summa kontole B." Probleem on selles, et esiteks on tehinguid palju, teiseks teostatakse neid üheaegselt (süsteemiga saab ühendada mitu tuhat samaaegset kasutajat), kolmandaks tuleb vea ilmnemisel tehing täielikult tagasi pöörata ja tagastada süsteemi olekusse, mis oli enne tehingu algust (ei tohiks tekkida olukorda, kus raha kontolt A välja võeti, kuid kontole B ei jõudnud).

Peaaegu kõik OLTP-rakenduste andmebaasipäringud koosnevad sisestamise, värskendamise ja kustutamise käskudest. Valikupäringud on mõeldud peamiselt selleks, et võimaldada kasutajatel valida erinevatest kataloogidest. Enamik taotlusi on süsteemi projekteerimisetapis ette teada. Seetõttu on OLTP-rakenduste jaoks kriitilise tähtsusega lühikeste andmete värskendamise toimingute kiirus ja usaldusväärsus.

Andmebaasi, millega OLTP-rakendused töötavad, uuendatakse pidevalt, sellega seoses nimetatakse seda tavaliselt operatiivne andmebaas. Mida kõrgem on operatiivse andmebaasi normaliseerimise tase, seda kiiremini ja usaldusväärsemalt töötavad OLTP-rakendused. Kõrvalekalded sellest reeglist võivad ilmneda siis, kui juba arendusjärgus on teada mõned sageli esinevad päringud, mis nõuavad seoseid ja mille täitmise kiirus mõjutab oluliselt rakenduste tööd. Sel juhul saate selliste päringute täitmise kiirendamiseks andmebaasi teadlikult lisada mõningast liiasust.

Teist tüüpi infosüsteemid on nn OLAP süsteemid (On-line analüütiline töötlemine - operatiivne analüütiline andmetöötlus). OLAP-i kasutatakse juhtimisotsuste tegemiseks, seetõttu kutsutakse välja OLAP-tehnoloogiat kasutavad süsteemid otsuseid toetavad süsteemid (Otsuste tugisüsteem - DSS).

OLAP-i kontseptsiooni kirjeldas 1993. aastal relatsiooniandmete mudeli autor Edgar Codd.

1995. aastal, lähtudes Coddi poolt sätestatud nõuetest, nn FASMI (Fast Analysis of Shared Multidimensional Information) test- jagatud mitmemõõtmelise teabe kiire analüüs), sealhulgas järgmised nõuded mitmemõõtmelise analüüsi rakendustele:

· kasutajale analüüsitulemuste esitamine vastuvõetava aja jooksul (tavaliselt mitte rohkem kui 5 s) isegi vähem detailse analüüsi hinnaga;

· võimalus teostada mis tahes antud rakendusele omast loogilist ja statistilist analüüsi ning salvestada see lõppkasutajale kättesaadaval kujul;

· mitme kasutaja juurdepääs andmetele koos sobivate lukustusmehhanismide ja volitatud juurdepääsuvahendite toega;

· andmete mitmemõõtmeline kontseptuaalne esitus, sealhulgas hierarhiate ja mitmete hierarhiate täielik tugi (see on OLAP-i põhinõue);

· võimalus pääseda juurde igasugusele vajalikule teabele, olenemata selle mahust ja salvestuskohast.

OLAP-rakendused töötavad suure hulga andmetega, mis on juba kogutud OLTP-süsteemide tööandmebaasides, mis on võetud arvutustabelitest või muudest andmeallikatest. Selliseid süsteeme iseloomustavad järgmised omadused:

· Uusi andmeid lisatakse süsteemi suhteliselt harva suurte plokkidena (näiteks kord kvartalis laetakse OLTP süsteemist alla kvartalimüügi tulemuste põhjal andmeid).

· Süsteemi lisatud andmeid tavaliselt ei kustutata ega muudeta.

· Andmed läbivad enne laadimist erinevaid “puhastusprotseduure”, kuna üks süsteem võib saada andmeid mitmest allikast erineva esitusvorminguga, andmed võivad olla valed või vigased.

· Päringud süsteemile on reguleerimata ja reeglina üsna keerulised. Väga sageli koostab analüütik uue päringu, et selgitada eelmisest päringust saadud tulemust.

· Päringu täitmise kiirus on oluline, kuid mitte kriitiline.

OLAP-süsteemide loetletud omaduste põhjal võime järeldada, et sellise süsteemi andmebaasi saab suures osas denormaliseerida. Kuna andmebaasipäringute põhitüüp on valikpäringud, siis normaliseerimise positiivseid külgi kasutada ei saa ning liitumistoimingute vähendamine päringutes on väga kasulik.

Viimasel ajal on aktiivselt arenenud veel üks analüütilise andmetöötluse valdkond, nn Andmekaeve (andmete mõistmine, mida mõnikord nimetatakse andmekaeveks). See suund on suunatud andmetes peidetud mustrite leidmisele ja prognoosimisprobleemide lahendamisele. DataMining rakendused ei muuda ka andmeid, millega nad töötavad, seega eelistavad nad denormaliseeritud andmebaasi.

Rõhutamaks andmete korraldamise erilist viisi, mida OLAP ja Data Mining rakendused saavad analüüsimiseks tõhusalt kasutada, kasutatakse sellele spetsiaalset terminit. Andmeladu). Oluline on märkida, et andmelaod, erinevalt operatiivsetest andmebaasidest, salvestavad ajaloolisi andmeid, s.o. kajastavad neid fakte ettevõtte tegevusest, mis on juba toimunud, mistõttu neid saab säilitada muutumatul kujul (“ajalugu ei kirjutata ümber”) ja aastate jooksul koguneda ning seetõttu võib nende suurus muutuda väga muljetavaldavaks. Pärast andmete salvestusruumi ülekandmist eemaldatakse need tavaliselt tööandmebaasist, mis võimaldab hoida nende suurust kindlaksmääratud piirides.

 OLTP ja OLAP süsteemid Eelmises alapeatükis märgiti, et ainevaldkonna adekvaatse esindatuse, andmebaasi arendamise ja hooldamise lihtsuse huvides tuleb seosed taandada kolmandale normaalvormile (on kõrgemate järkude normaliseerimise vorme, kuid praktikas kasutatakse neid üsna harva), siis tuleb neid väga normaliseerida. Nõrgalt normaliseeritud seostel on aga ka omad eelised, millest peamine on see, et kui andmebaasi pääseb põhiliselt ainult päringutega ning andmete muutmisi ja lisamisi tehakse väga harva, siis on nende valimi võtmine palju kiirem. Seda seletatakse asjaoluga, et nõrgalt normaliseeritud suhetes on nende ühendus juba loodud ja protsessori aega sellele ei raisata. On kaks süsteemide klassi, mille jaoks sobivad paremini tugevalt ja nõrgalt normaliseeritud suhted. Väga normaliseeritud andmemudelid sobivad hästi OLTP rakenduste jaoks – On-Line Transaction Processing (OLTP) – veebitehingute töötlemise rakendused. OLTP rakenduste tüüpilised näited on laoarvestussüsteemid, piletite tellimissüsteemid, operatiivsed pangandussüsteemid ja teised. Selliste süsteemide põhiülesanne on sooritada suur hulk lühikesi tehinguid. Tehingud ise on üsna lihtsad, kuid probleemid on selles, et selliseid tehinguid on palju, need sooritatakse üheaegselt ja vigade ilmnemisel tuleb tehing tagasi keerata ja tagastada süsteem olekusse, milles see oli enne tehingu algust. . Peaaegu kõik OLTP-rakenduste andmebaasipäringud koosnevad sisestamise, värskendamise ja kustutamise käskudest. Valikupäringute eesmärk on peamiselt pakkuda kasutajatele valikut andmeid erinevat tüüpi kataloogidest. Seega on enamik taotlustest süsteemi projekteerimisetapis ette teada. OLTP-rakenduste jaoks on kriitilise tähtsusega lühikeste andmete värskendamise toimingute kiirus ja usaldusväärsus. Mida kõrgem on andmete normaliseerimise tase OLTP-rakendustes, seda kiirem ja usaldusväärsem see on. Kõrvalekalded sellest reeglist võivad ilmneda siis, kui juba arendusjärgus on teada mõned sageli esinevad päringud, mis nõuavad seoseid ja mille täitmise kiirus mõjutab oluliselt rakenduste tööd. Teine rakendustüüp on OLAP-rakendused – On-Line Analytical Processing (OLAP) – rakendused operatiivanalüütiliseks andmetöötluseks. See on üldistatud termin, mis iseloomustab otsuste tugisüsteemide ehitamise põhimõtteid – Otsuste tugisüsteem (DSS), andmelaod – Data Warehouse, andmekaevesüsteemid – Data Mining. Sellised süsteemid on loodud andmete vahel sõltuvuste leidmiseks, dünaamilise analüüsi läbiviimiseks põhimõttel “mis siis, kui...” jms ülesanded. OLAP-rakendused töötavad suure hulga ettevõttes kogutud või muudest allikatest võetud andmetega. Selliseid süsteeme iseloomustavad järgmised omadused: * uute andmete lisamine süsteemi toimub suhteliselt harva suurte plokkidena, näiteks kord kuus või kvartalis; * süsteemi lisatud andmeid reeglina kunagi ei kustutata; * enne laadimist läbivad andmed erinevad ettevalmistavad protseduurid, mis on seotud nende viimisega teatud vormingutesse jms; * päringud süsteemile on reguleerimata ja üsna keerulised; * päringu täitmise kiirus on oluline, kuid mitte kriitiline. OLAP-i rakenduste andmebaasid on tavaliselt esindatud ühe või mitme hüperkuubikuna, mille mõõtmed esindavad võrdlusandmeid ja hüperkuubi enda lahtrid salvestavad nende andmete väärtused. Füüsiliselt saab hüperkuubi ehitada spetsiaalse mitmemõõtmelise andmemudeli - Multidimensional OLAP (MOLAP) põhjal või esitada relatsioonilise andmemudeli - Relational OLAP (ROLAP) abil. Relatsiooniandmemudelit kasutavates OLAP-süsteemides on kasulik salvestada andmeid nõrgalt normaliseeritud seoste kujul, mis sisaldavad eelarvutatud põhisummasid. Andmete liiasus ja sellega seotud probleemid pole siin probleemiks, kuna neid uuendatakse üsna harva ja koos andmete uuendamisega arvutatakse ka tulemused ümber. Iga tehnoloogiaga tõhusalt lahendatavate ülesannete omadusi ja ulatust illustreerib järgmine võrdlev tabel: IseloomulikOLTPOL.Süsteemi eesmärkRegistreerimine, tehingute operatiivne otsing ja töötlemine, reguleeritud analüüs Töö ajalooliste andmetega, analüütiline töötlemine, prognoosimine, modelleerimine Salvestatud andmedKasutuslik, üksikasjalikKatab suurt perioodi ajast, koondatudAndmete tüüpStruktuurneErinevat tüüpi andmete "vanus"Praegune (mitu kuud) Ajalooline (aastate lõikes) ja prognoositud Andmete uuendamise sagedus Kõrge, väikestes "osades" Väike, suurtes "osades" Andmete koondamise tase Üksikasjalikud andmed Peamiselt koondatud andmed Domineerivad toimingud Andmete sisestamine, otsing, uuendamine Andmeanalüüs Andmete kasutamise meetod Ettenähtav Ettearvamatu kasutaja interaktsioon Tehingu tasemel Kogu andmebaasi andmete tasemel Tegevuse tüüp Operatiivne, taktikaline Analüütiline, strateegiline Prioriteedid Kõrge jõudlus Kõrge kättesaadavus Paindlikkus Kasutaja autonoomia Kategooria kasutajad Suur arv juhtivtöötajaid Suhteliselt väike arv juhtivtöötajaid OLTP ja OLAP-i võrdlus OLTP OLAP-i omadused Päringute olemus Paljud lihtsad tehingud Keerulised tehingud Salvestatud andmed Operatiivne, detailne Hõlmab suurt ajaperioodi, koondatud tegevuse ID Operatiivne, taktikaline Analüütiline , stratum - gical Andmetüüp Struktureeritud Mitut tüüpi Süsteemi tunnus Arvestussüsteem (OLTP) OLAP Suhtlemine kasutajaga Tehingu tasemel Kogu andmebaasi tasemel Andmed, mida kasutatakse kasutaja süsteemile juurdepääsul Üksikud kirjed Kirjete rühmad Reageerimisaeg Sekundid Alates mitu sekundit kuni mitu minutit Riistvararessursside kasutamine Stabiilne Dünaamiline Andmete olemus Peamiselt esmane (madalaim detailsusaste) Peamiselt tuletis (kokkuvõtvad väärtused) Andmebaasi juurdepääsu olemus Eelmääratletud või staatilised juurdepääsuteed ja andmesuhted Määratlemata või dünaamilised juurdepääsuteed ja andmesuhted Andmete varieeruvus Kõrge (andmeid värskendatakse iga tehinguga) Madal (andmeid värskendatakse päringu ajal harva) Prioriteedid Kõrge jõudlus Kõrge kättesaadavus Paindlikkus Kasutaja autonoomia

Riigieksami küsimused

    SRÜ elutsükkel. SRÜ elutsükli etapid

    SRÜ elutsükli mudelid (ärirakendused)

    SRÜ loomise tehnoloogilised protsessid

    CASE tööriistad SRÜ elutsükli toetamiseks

    Struktuurisüsteemide analüüsi ja projekteerimise meetodid ja vahendid

    Ettevõtte süsteemi arhitektuuri põhielemendid: äriarhitektuur, infoarhitektuur, rakendusarhitektuur, tehnoloogiaarhitektuur

    Ettevõtte infosüsteemid. Nende struktuur. SRÜ näited

    SRÜ infoarhitektuur. Eesmärk ja koostis. Andmearhitektuuri kirjeldamise meetodid ja vahendid

    Tööriistakomplekt ettevõtte teabearhitektuuri kavandamiseks, arendamiseks ja hooldamiseks

    Arhitektuurimustrid (OLTP, OLAP süsteemid) ettevõtte infoarhitektuuris

OLAP süsteemid

OLAP (ing. online analüütiline töötlemine, analüütiline töötlemine reaalajas) on andmetöötlustehnoloogia, mis seisneb kokkuvõtliku (agregeeritud) teabe koostamises, mis põhineb suurel mitmemõõtmelisel põhimõttel struktureeritud andmehulgal. OLAP-tehnoloogia juurutused on Business Intelligence klassi tarkvaralahenduste komponendid.

Mõiste OLAP asutaja Edgar Codd pakkus 1993. aastal välja "reaalajas analüütilise töötlemise 12 seadust".

Ettevõtetel on sageli mitu infosüsteemi – laoarvestussüsteemid, raamatupidamissüsteemid, ERP süsteemid üksikute tootmisprotsesside automatiseerimiseks, süsteemid ettevõtte osakondade aruannete kogumiseks, aga ka palju faile, mis on töötajate arvutites laiali.

Nii paljude erinevate teabeallikate tõttu võib sageli olla väga raske saada vastuseid peamistele äriküsimustele ja näha üldist pilti. Ja kui vajalik teave asub ikka mõnes kasutatavas süsteemis või kohalikus failis, siis sageli osutub see aegunud või on vastuolus teisest süsteemist saadud teabega.

Seda probleemi lahendab tõhusalt OLAP-tehnoloogiate baasil üles ehitatud info- ja analüütilised süsteemid (muud nimetused: OLAP süsteem, äriteabe süsteem, äriteabe süsteem). OLAP-süsteemid integreerivad olemasolevaid raamatupidamissüsteeme, pakkudes kasutajale tööriistu suurte andmemahtude reaalajas analüüsimiseks, dünaamiliseks aruannete genereerimiseks, äritegevuse põhinäitajate jälgimiseks ja prognoosimiseks.

OLAP-süsteemide eelised

Info mängib ettevõtte juhtimises võtmerolli. Reeglina kasutavad ka väikesed ettevõtted erinevate tegevusvaldkondade automatiseerimiseks mitut infosüsteemi. Traditsioonilistel andmebaasidel põhinevates infosüsteemides analüütilise aruandluse saamine on seotud mitmete piirangutega:

Iga aruande väljatöötamine nõuab programmeerija tööd.

Aruanded genereeritakse väga aeglaselt (sageli mitu tundi), aeglustades seeläbi kogu infosüsteemi tööd.

Ettevõtte erinevatelt struktuurielementidelt saadud andmed ei ole ühtsed ja on sageli vastuolulised.

OLAP-süsteemid on oma disaini ideoloogia järgi loodud suure teabemahu analüüsimiseks ja võimaldama ületada traditsiooniliste infosüsteemide piiranguid.

OLAP-süsteemi loomine ettevõttes võimaldab:

    Integreerida andmeid erinevatest infosüsteemidest, luues tõest ühtse versiooni

    Looge uusi aruandeid mõne hiireklõpsuga ilma programmeerijate sekkumiseta.

    Analüüsige andmeid reaalajas mis tahes kategooriate ja ärinäitajate kohta mis tahes üksikasjalikkuse tasemel.

Jälgige ja prognoosige peamisi ärinäitajaid

OLAP-süsteemiga töötades leiate alati kiiresti vastused esilekerkivatele küsimustele, näete suurt pilti ja saate pidevalt oma ettevõtte seisu jälgida. Samal ajal võite olla kindel, et kasutate ainult asjakohast teavet.

OLAP süsteemi juurutamise tulemused

Juhtkond saab olukorrast täieliku selge nägemuse ning ühtse arvestuse, kontrolli ja analüüsi mehhanismi.

Sisemiste äriprotsesside automatiseerimise ja töötajate tootlikkuse tõstmisega väheneb vajadus inimressursi järele.

OLAP-i toiming

OLAP-i kasutamise põhjus päringu töötlemiseks on kiirus. Relatsiooniandmebaasid salvestavad olemid eraldi tabelites, mis on tavaliselt hästi normaliseeritud. See struktuur on operatiivsete andmebaaside (OLTP-süsteemide) jaoks mugav, kuid keerukate mitme tabeliga päringute täitmine on suhteliselt aeglane.

Operatsiooniandmetest loodud OLAP-struktuuri nimetatakse OLAP-kuubiks. Kuubik luuakse tabelite ühendamisel täheskeemi või lumehelveskeemi abil. Tärniskeemi keskel on faktitabel, mis sisaldab peamisi fakte, mille kohta päringuid tehakse. Mitme mõõtmega tabelid on ühendatud faktitabeliga. Need tabelid näitavad, kuidas saab koondatud relatsiooniandmeid analüüsida. Võimalike koondamiste arvu määrab algandmete hierarhilise kuvamise viiside arv.

Näiteks saab kõik kliendid rühmitada linna või riigi piirkonna järgi (lääs, ida, põhja jne), nii et 50 linna, 8 piirkonda ja 2 riiki moodustavad 3 hierarhia taset 60 liikmega. Samuti võivad kliendid olla ühtsed toodete suhtes; kui 2 kategoorias, 3 tooterühmas ja 3 tootmisdivisjonis on 250 toodet, siis on ühikute arv 16560. Diagrammile mõõtmete lisamisel ulatub võimalike valikute arv kiiresti kümnetesse miljonitesse või enamgi.

OLAP-kuubik sisaldab põhiandmeid ja teavet dimensioonide (agregaatide) kohta. Kuubik sisaldab potentsiaalselt kogu teavet, mida võib vaja minna mis tahes päringutele vastamiseks. Ühikute tohutu arvu tõttu toimub sageli täielik arvutus ainult mõne mõõtmise puhul, ülejäänud osas tehakse see "nõudmisel".

Lisaks põhikontseptsioonile on OLAP-i kolme tüüpi:

OLAP paljude mõõtmetega (Multidimensional OLAP - MOLAP);

relatsiooniline OLAP (relatsiooniline OLAP - ROLAP);

hübriid OLAP (Hybrid OLAP - HOLAP).

MOLAP on OLAP-i klassikaline vorm, seetõttu nimetatakse seda sageli lihtsalt OLAP-iks. See kasutab kokkuvõtvat andmebaasi, ruumiandmebaasi protsessori erivarianti ning loob vajaliku ruumiandmete skeemi, säilitades nii põhiandmed kui ka agregaadid.

ROLAP töötab otse relatsioonisalvestusega, faktid ja dimensioonitabelid salvestatakse relatsioonitabelitesse ning agregaatide salvestamiseks luuakse täiendavaid relatsioonitabeleid.

HOLAP kasutab baasandmete salvestamiseks relatsioonitabeleid ja agregaatide salvestamiseks mitmemõõtmelisi tabeleid.

ROLAPi erijuhtum on reaalajas ROLAP (R-ROLAP). Erinevalt ROLAP-ist ei looda R-ROLAPis koondandmete salvestamiseks täiendavaid relatsioonitabeleid ja koondtulemused arvutatakse päringu ajal. Sel juhul teisendatakse OLAP-süsteemi mitmemõõtmeline päring automaatselt relatsiooniandmete SQL-päringuks.

Igal ladustamistüübil on teatud eelised, kuigi erinevate tootjate hinnangul on lahkarvamusi. MOLAP sobib kõige paremini väikeste andmekogumite jaoks, see arvutab kiiresti kokkuvõtted ja tagastab vastused, kuid see genereerib tohutul hulgal andmeid. ROLAP on hinnatud skaleeritavamaks lahenduseks, mis kasutab ka võimalikult vähe ruumi. Samal ajal väheneb oluliselt töötlemiskiirus. HOLAP on nende kahe lähenemise keskel, see mastaabib üsna hästi ja on kiiresti töödeldav. R-ROLAP-i arhitektuur võimaldab OLTP-andmete mitmemõõtmelist analüüsi reaalajas.

OLAP-i kasutamise väljakutseks on päringute loomine, aluseks olevate andmete valimine ja skeemi kujundamine ning selle tulemusena on enamikul kaasaegsetel OLAP-i toodetel tohutul hulgal eelkonfigureeritud päringuid. Teine probleem on alusandmetes. Need peavad olema terviklikud ja järjepidevad

OLAP-i juurutused

Ajalooliselt on esimene mitmemõõtmeline andmebaasihaldussüsteem, mis on sisuliselt OLAP-i juurutus, Express-süsteem, mille töötas välja 1970. aastal IRI (toote õigused omandas hiljem Oracle Corporation ja muudeti Oracle Database'i OLAP-i valikuks). Mõistet OLAP võttis Edgar Codd kasutusele ajakirjas Computerworld 1993. aastal avaldatud publikatsioonis, milles ta pakkus välja 12 analüütilise töötlemise põhimõtet, mis sarnanevad tema poolt kümme aastat varem sõnastatud relatsiooniandmebaaside 12 reegliga, et olla võrdlustoode, mis vastab pakutud nõuetele. põhimõtetele viitas Codd Essbase'i süsteemile Arborilt (selle ostis 1997. aastal Hyperion, mille omakorda ostis Oracle 2007. aastal). Nimelt eemaldati väljaanne hiljem Computerworldi arhiivist võimaliku huvide konflikti tõttu, kuna Codd osutas hiljem Arborile nõustamisteenuseid.

Teised tuntud OLAP-tooted: Microsoft Analysis Services (endise nimega OLAP Services, osa SQL Serverist), SAS OLAP Server, TM1, PowerPlay, SAP BW, MicroStrategy Ingelligence Server, Mondrian, Analüütiline kompleks PROGNOZ.

Rakendamise seisukohalt jagunevad need “füüsiliseks OLAPiks” ja “virtuaalseks” (relational, inglise Relational OLAP, ROLAP). “Füüsiline” jaguneb omakorda olenevalt juurutusest mitmemõõtmeliseks (Multidimensional OLAP, MOLAP) ja hübriidseks (Hybrid OLAP, HOLAP).

Esimesel juhul on olemas programm, mis allikatest OLAP-i andmete esialgse laadimise etapis teostab koondnäitajate eelarvutuse (arvutused, mis põhinevad mitmel algväärtusel, näiteks “Kuu kokku”), mis Seejärel salvestatakse need spetsiaalsesse mitmemõõtmelisse andmebaasi, mis tagab kiire otsimise ja säästliku salvestamise. Selliste toodete näideteks on Microsoft Analysis Services, Oracle OLAP Option, Essbase, SAS OLAP Server, TM1, PowerPlay.

Hübriidne OLAP on kombinatsioon. Andmed ise salvestatakse relatsiooniandmebaasis ja agregaadid mitmemõõtmelises andmebaasis.

ROLAP-i rakendustes salvestatakse ja töödeldakse kõiki andmeid relatsioonilistes andmebaasihaldussüsteemides ning agregaate ei pruugi üldse eksisteerida või need võidakse luua DBMS-i või analüütilise tarkvara vahemälus esimesel päringul. Sellised tooted on näiteks SAP BW, Microstrategy Intelligence Server, Mondrian.

Kasutaja seisukohast näevad kõik valikud võimalustelt sarnased välja. OLAP-i kasutatakse kõige laialdasemalt finantsplaneerimistoodetes, andmeladudes ja ärianalüüsi lahendustes.

OLTP-süsteemid (Online-tehingute töötlemise süsteemid)

OLTP (Online Transaction Processing), tehingusüsteem – tehingute töötlemine reaalajas. Andmebaasi korraldamise meetod, milles süsteem töötab väikesemahuliste tehingutega, kuid suure vooga ning samal ajal nõuab klient süsteemilt minimaalset reageerimisaega.

Mõistet OLTP kasutatakse ka süsteemide (rakenduste) kohta. OLTP süsteemid on mõeldud teabe (tehingute, dokumentide) sisestamiseks, struktureeritud salvestamiseks ja töötlemiseks reaalajas.

Terviklikkuse probleem seisneb selles, et andmebaasi andmed on igal ajahetkel õiged. Seda saab rikkuda järgmistel juhtudel: 1. sisestamisel ja uuendamisel, ebaõigete andmete esitamisel. 2. kui andmeid kasutavad samaaegselt mitu kasutajat. 3. APS-i rikete korral.

Terviklikkuse probleemide lahendamist tuleb käsitleda programmilisest ja organisatsioonilisest aspektist. PObl 1. jaoks on vajalikud mitmed organisatsioonilised meetmed (sisendi jälgimiseks), kasutaja peab teadma sisestusreegleid ja piiranguid. Probleemide 2-3 korral - standardsed DBMS-i tööriistad või spetsiaalsed tarkvaramoodulid. DBMS – 2 peamist terviklikkuse piirangut: 1. struktuursed piirangud (määratud funktsionaalsete ühendustega ja kontrollitud DB väärtuste võrdsuse kontrollimisega) 2. reaalväärtuste piirangud. Need nõuavad, et välja väärtused kuuluksid teatud vahemikku või mõne välja väärtuste vahel on sõltuvus. (andmetüübid ja sisestusmaskid). Piirangud saab DBA igal ajal määrata, kuid DBMS ei pruugi piirangut aktsepteerida (kui paljud kirjed seda enam ei rahulda), kui on sobivus, kirjutatakse see sõnastikku ja kasutatakse. Piirangud on erineva raskusastmega:

2. piirangud stringi atribuutide komplektile. (positsioon – järgumäärad, piirkond – linnad).

3. piirangud mitmel liinil korraga.

Kõik need piirangud on statistilised, kuid andmebaasi üleminekul ühest olekust teise on vaja terviklikkuse piiranguid täita enne kõigi muudatuste algust ja pärast kõigi lõppu, mitte iga. Selliseid piiranguid nimetatakse edasilükatud ja nendega seoses tutvustatakse tehingute mõistet. Tehing on andmebaasis kasutaja vaatevinklist tehtud toiming. Samal ajal on see süsteemi toimimise loogiline üksus. Tehing rakendab mõnda rakendusfunktsiooni, näiteks raha kandmine pangasüsteemis ühelt kontolt teisele.

Peab olema 4 omadust: 1. Aatomilisus (jagamatus): sooritatakse ühe andmebaasi juurdepääsuoperatsioonina, tuleb sooritada täielikult või üldse tegemata. 2. Järjepidevus – tagab andmete vastastikuse terviklikkuse pärast tehingute töötlemise lõpetamist. 3. Isolatsioon (iga tehing võib muuta andmeid, mis on ajutiselt vastuolus). Samal ajal keelatakse teistele tehingutele juurdepääs nendele andmetele kuni tehingu lõpuleviimiseni. 4. vastupidavus – tehingu õnnestumise korral ei lähe muudatused kaotsi. Tehingu sooritamise tulemuseks võib olla selle sidumine (andmebaasi muudatuste tegemise toiming) või tagasipööramine (tehingu tühistamine ja andmebaasi naasmine selle alguseelsesse olekusse). Kinnitamise ja tagasipööramise mehhanism põhineb tehingulogi kasutamisel, kus salvestatakse olek ENNE (mitmes iteratsioonis) ja PÄRAST. Mõned SQL-i dialektid sisaldavad vahepealseid täitmislauseid (punkt-punkti tagasipööramine).

Tehingute töötlemise monitorid (TPM) on tarkvarasüsteemid (klassifitseeritud vahevaraks või vahevaraks), mis lahendavad hajutatud süsteemis teabe ja arvutusressursside tõhusa haldamise probleemi. Need pakuvad paindlikku avatud keskkonda mobiilirakenduste arendamiseks ja haldamiseks, mis on keskendunud hajutatud tehingute kiirele töötlemisele. TPM-i kõige olulisemate omaduste hulgas on skaleeritavus, rakenduste funktsionaalse täielikkuse ja terviklikkuse tugi, maksimaalse jõudluse saavutamine madala hinnaga andmete töötlemisel ja andmete terviklikkuse säilitamine heterogeenses keskkonnas. TPM-id tuginevad kolmetasandilisele klient-serveri mudelile

Kaasaegsel tehingujälgijate turul on peamised "tegijad" sellised süsteemid nagu ACMS (DEC), CICS (IBM), TOP END (NCR), TUXEDO Sytem (Novell).

Andmete jagamine

Tehingute realiseerimisel tekib probleem: uuenduste kadu (andmebaasi salvestatakse ainult ühe kasutaja muudatused, ülejäänud lähevad kaotsi). Ja probleem 2 on sidumata andmete lugemine. Selle lahendamiseks kasutage spetsiaalseid tehingute töötlemise mehhanisme. Põhimõtted: 1. tehingul puudub juurdepääs sidumata andmetele. 2. tehingute ühise teostamise tulemus on samaväärne nende viimase täitmisega. Seda mehhanismi rakendatakse lukustussüsteemi kaudu: DBMS lukustab selle andmebaasi osa, millele tehinguga ligi pääseb, kuni selle sidumiseni, s.t. 2. tehing tuleb panna ootejärjekorda. Mida suurem on blokeeritav element, seda aeglasemalt tehingut töödeldakse. OLTP-süsteemides on rida tavaliselt lukustatud ja tehingud võivad sattuda ummikseisu. Selle vältimiseks küsitleb DBMS perioodiliselt lukke ja kui need on olemas, katkestatakse üks tehingutest. Mugavamaks tööks on lubatud andmete jagamise lukud: paralleelkasutajatel on keelatud andmeid muuta, kuid neil on lubatud need kätte saada. See lähenemisviis pole ainuke, näiteks saate kasutada andmete replikatsiooni hajutatud juurdepääsuga süsteemides. See tehnoloogia hõlmab andmete levitamisest loobumist ja igal sõlmel on oma andmebaasi koopia. Seda tagavad tööriistad peaksid muudatusi kopeerides säilitama andmebaasi ühtse oleku. Lähteandmebaasist üksikute sõlmede andmebaasidesse muudatuste ülekandmise protsessi nimetatakse andmete replikatsiooniks. Neid funktsioone täidab konkreetne moodul (ringlusserver/replikaator). Selle toimimise skeem on andmebaasi sisu täielik värskendamine kaugserverites (täieliku värskendusega skeem) või ainult muutuvate andmete värskendamine (kiire värskendusega skeem). muudab ja kopeerib neid õigel ajal.

OLTP – online-tehingute töötlemise süsteeme iseloomustab suur hulk muudatusi, paljude kasutajate samaaegne juurdepääs samadele andmetele erinevate toimingute tegemiseks – andmete lugemine, kirjutamine, kustutamine või muutmine. Mitme kasutaja normaalse töö tagamiseks kasutatakse lukke ja tehinguid. Tõhus tehingute töötlemise ja lukustamise tugi on ühed kõige olulisemad nõuded võrgutehingute töötlemise süsteemide jaoks.

Kaasaegsed andmebaasitehnoloogiad seavad teatud arhitektuurinõuded. Kuni viimase ajani eristati kolme probleemide klassi:

    operatiivtehingute töötlemise ülesanded;

    paketttöötluse ülesanded;

    otsuste tegemise probleemid.

OLTP-süsteemid on võrgutehingute töötlemise süsteemid. Selliste süsteemide põhiülesanne on üheaegselt sooritada suur hulk lühikesi tehinguid paljudelt kasutajatelt. Tehingud ise näevad välja suhteliselt lihtsad, näiteks “võta kontolt A raha välja, lisa see summa kontole B”. Ajalooliselt tekkisid sellised süsteemid eelkõige seetõttu, et need täitsid raamatupidamise, teeninduse kiiruse, andmete kogumise jms vajadusi.

OLTP-süsteeme iseloomustavad:

    suure hulga kasutajate tugi;

    lühike reageerimisaeg päringutele;

    suhteliselt lühikesed päringud;

    lühikesed tehingud;

    osalemine väikese arvu tabelite päringutes.

Peaaegu kõik OLTP-süsteemide andmebaasipäringud koosnevad sisestamise, värskendamise ja kustutamise käskudest. Valikupäringud on mõeldud peamiselt selleks, et võimaldada kasutajatel valida erinevatest kataloogidest. Seega on suurem osa taotlustest süsteemi projekteerimisetapis ette teada. Seetõttu on OLTP-rakenduste jaoks kriitilise tähtsusega lühikeste andmete värskendamise toimingute kiirus ja usaldusväärsus.

Online-tehingute töötlemise server on üles ehitatud eeldusel:

    OLTP toimingud toetavad suurt hulka kasutajaid;

    kõige sagedamini kasutatakse lühikesi lihtsaid tehinguid;

    tehingutes ei kasutata tavaliselt samu andmeid;

    avaldused mõjutavad tavaliselt väikest arvu ridu;

    reaktsiooniaeg - sekundi murdosa;

    vaid mõned lauad on suured või nende suurust saab muuta.

Sellise serveri rakendamine põhineb:

    füüsilised tehnikad kettatoimingute vähendamiseks;

    väikeste andmemahtude töötlemine mälus;

    primitiivne päringu optimeerija;

Taotluste nõue on kõrvaldada konkurents päringute vahel ressursside ja andmete kasutamisel.

    Andmeladu ja andmekaevandamine

Andmekaeve on tõlgitud kui "kaevandamine" või "andmete kaevamine". Sõnad "teadmiste avastamine andmebaasides" ja "andmekaeve" on sageli andmete kaevandamise kõrval. Neid võib pidada andmekaevanduse sünonüümiks. Kõigi nende terminite esilekerkimine on seotud uue vooruga andmetöötlusvahendite ja -meetodite väljatöötamisel.

Kuni 1990. aastate alguseni tundus, et selle valdkonna olukorra ümbermõtestamise vajadust ei olnud vaja. Rakendusstatistika nimelise suuna raames läks kõik nagu ikka (vt nt.). Teoreetikud pidasid konverentse ja seminare, kirjutasid muljetavaldavaid artikleid ja monograafiaid, mis olid täis analüütilisi arvutusi.

Samas on praktikud alati teadnud, et katsed teoreetilisi harjutusi tegelike probleemide lahendamiseks rakendada osutuvad enamasti viljatuks. Kuid esialgu ei saanud praktikute muredele erilist tähelepanu pöörata - nad lahendasid peamiselt oma isiklikke probleeme väikeste kohalike andmebaaside töötlemisega.

Ja siis helises kell. Andmete salvestamise ja salvestamise tehnoloogiate täiustamise tõttu on inimesi pommitatud kolossaalsete teabevoogudega erinevates valdkondades. Iga ettevõtte (äri-, tootmis-, meditsiini-, teadus- jne) tegevusega kaasneb nüüd tema tegevuse kõigi üksikasjade registreerimine ja registreerimine. Mida selle teabega peale hakata? Sai selgeks, et ilma produktiivse töötlemiseta moodustavad algandmete vood kasutu prügila.

Sellise töötlemise kaasaegsete nõuete eripära on järgmine:

    Andmemaht on piiramatu

    Andmed on heterogeensed (kvantitatiivsed, kvalitatiivsed, tekstilised)

    Tulemused peavad olema konkreetsed ja arusaadavad

    Toorandmete töötlemise tööriistu peaks olema lihtne kasutada

Traditsiooniline matemaatiline statistika, mis pikka aega pretendeeris andmeanalüüsi peamiseks tööriistaks, loobus tekkinud probleemide ees avalikult. Peamine põhjus on valimi keskmistamise kontseptsioon, mille tulemusel tehakse operatsioone fiktiivsete väärtuste põhjal (nagu patsientide keskmine temperatuur haiglas, maja keskmine kõrgus tänaval, mis koosneb paleedest ja majakestest jne. ). Matemaatilise statistika meetodid on osutunud kasulikuks peamiselt eelnevalt formuleeritud hüpoteeside testimisel (kontrollipõhine andmekaeve) ja nn ligikaudseks uurimuslikuks analüüsiks, mis on veebipõhise analüütilise töötlemise (OLAP) aluseks.

Kaasaegse andmekaevetehnoloogia (avastuspõhise andmekaeve) aluseks on mallide (mustrite) kontseptsioon, mis peegeldab andmetes mitmemõõtmeliste suhete fragmente. Need mustrid esindavad andmete alamvalimitele omaseid mustreid, mida saab kompaktselt väljendada inimloetaval kujul. Mustrite otsimine toimub meetodite abil, mida ei piira a priori eeldused valimi struktuuri ja analüüsitud näitajate väärtuste jaotuse tüübi kohta. Tabelis on toodud näited sellistest ülesannetest andmekaeve kasutamisel. 1.

Andmekaevanduse oluline punkt on otsitavate mustrite mittetriviaalsus. See tähendab, et leitud mustrid peavad peegeldama ebaselgeid, ootamatuid seaduspärasusi andmetes, mis moodustavad nn varjatud teadmise. Ühiskond on jõudnud arusaamisele, et algandmed sisaldavad sügavat teadmistekihti, mille õigel väljakaevamisel võib avaneda tõelised tükid (joonis 1).

Joonis 1. Andmetest eraldatud teadmiste tasemed

Üldiselt on andmekaevandamise tehnoloogia üsna täpselt määratlenud Grigory Piatetsky-Shapiro, üks selle suuna asutajatest:

Andmekaevandamine on protsess, mille käigus otsitakse algandmetest varem tundmatuid, mittetriviaalseid, praktiliselt kasulikke ja tõlgendatavaid teadmisi, mis on vajalikud otsuste tegemiseks erinevates inimtegevuse valdkondades.

2. Kellele seda vaja on?

Andmekaeve ulatus ei ole mingil moel piiratud – see on kõikjal, kus andmeid leidub. Kuid esiteks on andmekaevandamise meetodid tänapäeval pehmelt öeldes intrigeerinud äriettevõtteid, kes juurutavad andmeladudel (Data Warehousing) põhinevaid projekte. Paljude selliste ettevõtete kogemus näitab, et andmekaevandamise tasuvus võib ulatuda 1000% -ni. Näiteks on teateid majanduslikust efektist, mis on 10–70 korda suurem kui esialgsed kulud 350–750 tuhat dollarit. . On teavet 20 miljoni dollari suuruse projekti kohta, mis tasus end ära vaid 4 kuuga. Teine näide on iga-aastane kokkuhoid 700 tuhat dollarit. andmekaevanduse rakendamise kaudu Ühendkuningriigi supermarketite ketis.

Andmekaevandamine on juhtide ja analüütikute jaoks nende igapäevatoimingutes väga väärtuslik. Ärimehed on mõistnud, et andmekaeve meetodite abil on neil võimalik saavutada käegakatsutavaid konkurentsieelisi. Kirjeldame lühidalt mõningaid andmekaevandamise võimalikke ärirakendusi.

VÕI

Mis on juhtunudAndmedKaevandamine

Iga kaasaegse ettevõtte ettevõtte andmebaas sisaldab tavaliselt tabelite komplekti, mis salvestab kirjeid teatud faktide või objektide kohta (näiteks kaupade, nende müügi, klientide, kontode kohta). Reeglina kirjeldab iga sellise tabeli kirje konkreetset objekti või fakti. Näiteks kajastab kanne müügitabelis seda, et sellisele ja sellisele kliendile müüs sel ajal selline ja selline toode sellise ja sellise juhi poolt ning suures plaanis ei sisalda see midagi peale selle teabe. Siiski võib paljude selliste kirjete kogumine, mis on kogunenud mitme aasta jooksul, saada täiendava, palju väärtuslikuma teabe allikaks, mida ei ole võimalik saada ühe konkreetse kirje põhjal, nimelt teabe mustrite, suundumuste või vastastikuste sõltuvuste kohta. mingeid andmeid. Sellise teabe näiteks on teave selle kohta, kuidas konkreetse toote müük sõltub nädalapäevast, kellaajast või aastaajast, millised klientide kategooriad ostavad seda või teist toodet kõige sagedamini, kui suur osa ühe konkreetse toote ostjatest ostab. veel üks konkreetne toode, millise kategooria kliendid ei maksa kõige sagedamini antud laenu õigel ajal tagasi.

Sellist teavet kasutatakse tavaliselt prognoosimisel, strateegilisel planeerimisel, riskianalüüsis ning selle väärtus ettevõtte jaoks on väga kõrge. Ilmselt seetõttu nimetati selle otsimise protsessi andmekaeveks (kaevandamine tähendab inglise keeles "kaevandamist" ja mustrite otsimine tohutul hulgal faktiandmetest on sellega tõesti sarnane). Mõiste andmekaeve tähistab mitte niivõrd konkreetset tehnoloogiat, kuivõrd korrelatsioonide, trendide, seoste ja mustrite otsimise protsessi erinevate matemaatiliste ja statistiliste algoritmide abil: rühmitamine, alamvalimite loomine, regressioon- ja korrelatsioonianalüüs. Selle otsingu eesmärk on esitada andmed kujul, mis kajastab selgelt äriprotsesse, ning samuti luua mudel, mille abil saab ennustada äriplaneerimise seisukohalt kriitilisi protsesse (nt nõudluse dünaamikat teatud kaupade või teenuste järele või nende omandamise sõltuvus teatud tarbijaomadustest).

Pangem tähele, et traditsiooniline matemaatiline statistika, mis jäi pikka aega andmeanalüüsi peamiseks tööriistaks, aga ka veebipõhise analüütilise töötlemise tööriistad (OLAP), millest oleme juba korduvalt kirjutanud (vt selleteemalisi materjale meie CD-l ), ei saa alati selliste probleemide lahendamiseks edukalt kasutada. Tavaliselt kasutatakse eelnevalt formuleeritud hüpoteeside testimiseks statistilisi meetodeid ja OLAP-i. Tihti osutub aga hüpoteesi püstitamine ärianalüüsi rakendamisel hilisemate otsuste tegemisel kõige keerulisemaks ülesandeks, kuna kõik andmete mustrid ei paista esmapilgul silma.


OLTP-süsteemi omadused Suur infomaht Sageli erinevad andmebaasid erinevatele osakondadele Normaliseeritud skeem, info dubleerimist pole Intensiivsed andmemuutused Tehingu töörežiim Tehingud mõjutavad väikest andmehulka Praeguste andmete töötlemine – hetktõmmis Paljud kliendid Lühike reageerimisaeg – paar sekundit OLAP-süsteemi omadused Suur hulk teavet Sünkroonitud teave erinevatest andmebaasidest tavaliste klassifikaatorite abil Normaliseerimata andmebaasi skeem koos duplikaatidega Andmed muutuvad harva, Muutused toimuvad partii laadimise teel Suurtele andmemahtudele tehakse keerulisi ad-hoc päringuid, kasutades laialdaselt rühmitusi ja koondfunktsioonid. Aja sõltuvuse analüüs Väike arv töötavaid kasutajaid – analüütikud ja juhid Pikem reageerimisaeg (kuid siiski vastuvõetav) – mitu minutit






Coddi reeglid relatsiooniandmebaaside jaoks 1. Inforeegel. 2. Garanteeritud juurdepääsu reegel. 3. Kehtetute väärtuste toetamise reegel. 4. Relatsioonimudelil põhinev dünaamilise kataloogi reegel. 5. Andmete ammendava allkeele reegel. 6. Vaadake värskendusreeglit. 7. Lisamise, uuendamise ja kustutamise reegel. 8. Füüsiliste andmete sõltumatuse reegel. 9. Loogiliste andmete sõltumatuse reegel. 10. Terviklikkuse tingimuste sõltumatuse reegel. 11. Levitamise sõltumatuse reegel. 12. Unikaalsuse reegel.


Coddi reeglid OLAP-i jaoks 1. Kontseptuaalne mitmemõõtmeline esitus. 2. Läbipaistvus. 3. Kättesaadavus. 4. Järjepidev jõudlus aruannete väljatöötamisel. 5. Klient-server arhitektuur. 6. Üldine mitmemõõtmelisus. 7. Hõredate maatriksite dünaamiline juhtimine. 8. Mitme kasutaja tugi. 9. Piiramatu ristoperatsioonide arv. 10. Intuitiivne andmete manipuleerimine. 11. Paindlikud võimalused aruannete vastuvõtmiseks. 12. Piiramatu koondtasemete suurus ja arv.


OLAP-i juurutamine OLAP-i tüübid - MOLAP (Multidimensional OLAP) serverid - nii üksikasjalikud andmed kui ka agregaadid salvestatakse mitmemõõtmelisse andmebaasi. ROLAP (Relational OLAP) - üksikasjalikud andmed salvestatakse relatsiooniandmebaasi; agregaadid salvestatakse samasse andmebaasi spetsiaalselt loodud teenindustabelites. HOLAP (Hybrid OLAP) - üksikasjalikud andmed salvestatakse relatsiooniandmebaasi ja agregaadid mitmedimensionaalses andmebaasis.








ROLAP-i tunnused - tähtskeem 1. Üks faktitabel, mis on väga denormaliseeritud 2. Mitu dimensioonitabelit, mis on samuti denormaliseeritud 3. Faktitabeli primaarvõti on liitvõti ja iga dimensiooni jaoks on üks veerg. 4. Koondandmed salvestatakse koos esialgsega Puudused Kui agregaadid salvestatakse koos lähteandmetega, siis dimensioonides on vaja kasutada lisaparameetrit - hierarhia tase











Salvestusstruktuur ORACLE DBMS SQL kliendisMOLAP klient Java API JDBC OCI ODBC OLE DB CWM või CWM2 OLAP-salvestus (BLOB relatsioonitabelis) Tärniskeem Metaandmete registreerimine Mitmemõõtmeline tuum (protsess ORACLE'i tuumas) OLAP DML SQL-i liides OLAP-iga (DBMS_AWTABLE, , ... ) Mitmemõõtmelised metaandmed

Andmeanalüüsi probleemide lahendamiseks ja lahenduste otsimiseks on vaja koguda ja salvestada piisavalt suuri andmemahtusid. Andmebaasid (DB-d) teenivad neid eesmärke.

Andmete salvestamiseks vastavalt mis tahes domeenimudelile peab andmebaasi struktuur sellele mudelile võimalikult palju vastama. Esimene selline DBMS-is kasutatud struktuur oli hierarhiline struktuur, mis ilmus eelmise sajandi 60ndate alguses.

Hierarhiline struktuur hõlmas andmete salvestamist puustruktuuri kujul.

Hierarhilise struktuuri parandamise katse oli andmebaasi võrgustruktuur, mis hõlmab andmestruktuuri esitamist võrguna.

Relatsiooniandmebaasid on tänapäeval kõige levinumad. Seda tüüpi teabe salvestamiseks tehakse ettepanek kasutada postrelatsioonilisi mudeleid objektorienteeritud andmesalvestusstruktuuride kujul. Üldine lähenemine on mis tahes teabe salvestamine objektidena. Sel juhul saab objekte ise korraldada hierarhilise mudeli raames. Kahjuks pole see lähenemine erinevalt relatsioonialgebral põhinevast relatsioonistruktuurist piisavalt formaliseeritud, mis ei võimalda seda praktikas laialdaselt kasutada.

Vastavalt Coddi reeglitele peab DBMS tagama toimingute teostamise andmebaasis, pakkudes samal ajal võimaluse mitme kasutaja (mitmest arvutist) samaaegseks tööks ning garanteerides andmete terviklikkuse. Nende reeglite rakendamiseks kasutab DBMS tehinguhaldusmehhanismi.

Tehing on toimingute jada andmebaasis, mida DBMS käsitleb ühtse tervikuna. Tehing liigutab andmebaasi ühest terviklikust olekust teise.

Tehing koosneb reeglina toimingutest, mis manipuleerivad erinevatesse tabelitesse kuuluvate ja üksteisega loogiliselt seotud andmetega. Kui tehingu sooritamisel tehakse toiminguid, mis muudavad ainult osa andmetest ja ülejäänud andmeid ei muudeta, siis rikutakse terviklikkust. Seetõttu tuleb kas kõik tehingus sisalduvad toimingud lõpule viia või mitte ükski neist. Tehingu tagasivõtmise protsessi nimetatakse tehingu tagasipööramiseks. Tehingutoimingute tulemusena tehtud muudatuste salvestamist nimetatakse tehingu sooritamiseks.

Tehingu omadus andmebaasi ühest terviklikust olekust teise ülekandmiseks võimaldab meil kasutada tehingu mõistet kasutaja tegevuse ühikuna. Samaaegsete kasutajate andmebaasi sisenemise korral ei teostata erinevate kasutajate algatatud tehinguid paralleelselt (mis ühe andmebaasi puhul pole võimalik), vaid seatakse mingi plaani kohaselt järjekorda ja täidetakse järjestikku. Seega on kasutaja jaoks, kelle algatusel tehing loodi, nähtamatu teiste kasutajate tehingute olemasolu, välja arvatud töö mõningane aeglustumine võrreldes ühe kasutaja režiimiga.


Tehingute ajastamiseks on mitu põhialgoritmi. Tsentraliseeritud DBMS-ides on kõige levinumad algoritmid need, mis põhinevad andmebaasiobjektide hõivamise sünkroonimisel.

Mis tahes algoritmi kasutamisel on võimalikud konfliktid kahe või enama tehingu vahel andmebaasiobjektidele juurdepääsuks. Sel juhul tuleb plaani säilitamiseks üks või mitu tehingut tagasi pöörata. See on üks juhtumeid, kui mitme kasutajaga DBMS-i kasutaja saab reaalselt tunda teiste kasutajate tehingute olemasolu süsteemis.

DBMS-i arendamise ajalugu on tihedalt seotud andmete salvestamise ja tehingute haldamise probleemide lahendamise lähenemisviiside täiustamisega. Kaasaegsetes DBMS-ides väljatöötatud tehinguhaldusmehhanism on muutnud need peamiseks vahendiks OLTP süsteemide ehitamisel, mille põhiülesanne on tagada andmebaasi toimingute täitmine.

3.1.3. OLTP tehnoloogia kasutamine
otsuste tugisüsteemides

OLTP veebipõhiseid tehingute töötlemise süsteeme iseloomustab suur hulk muudatusi, paljude kasutajate samaaegne juurdepääs samadele andmetele erinevate toimingute tegemiseks – andmete lugemine, kirjutamine, kustutamine või muutmine. Mitme kasutaja normaalse töö tagamiseks kasutatakse lukke ja tehinguid. Tõhus tehingute töötlemise ja lukustamise tugi on ühed kõige olulisemad nõuded võrgutehingute töötlemise süsteemide jaoks.

Muide, sellesse süsteemide klassi kuuluvad ka esimesed DSS – juhtimisinfosüsteemid. Sellised süsteemid on reeglina üles ehitatud relatsiooniliste DBMS-ide baasil, sisaldavad alamsüsteeme teabe kogumiseks, salvestamiseks ja teabe otsimiseks ning sisaldavad ka etteantud päringute komplekti igapäevaseks tööks. Iga uus päring, mida taolise süsteemi projekteerimisel ette ei näinud, tuleb esmalt formaalselt kirjeldada, programmeerija poolt kodeerida ja alles siis täita. Ooteaeg võib sel juhul olla tunde ja päevi, mis on kiire otsustamise jaoks vastuvõetamatu.

OLTP-süsteemide kasutamise praktika on näidanud nende kasutamise ebaefektiivsust põhjalikuks teabeanalüüsiks. Sellised süsteemid lahendavad üsna edukalt teabe kogumise, salvestamise ja otsimise probleeme, kuid need ei vasta tänapäevase DSS-i nõuetele. OLTP-süsteemide funktsionaalsuse suurendamisega seotud lähenemisviisid ei ole andnud rahuldavaid tulemusi. Peamine rikke põhjus on vastuolulised nõuded OLTP- ja DSS-süsteemidele.

Peamised nõuded OLTP- ja DSS-süsteemidele on järgmised:

1. Salvestatud andmete detailsuse aste. Tüüpiline päring OLTP-süsteemis kipub valikuliselt mõjutama üksikuid tabelite kirjeid, mida indeksite abil tõhusalt välja otsitakse.

2. Andmete kvaliteet. OLTP-süsteemid salvestavad reeglina otse süsteemi kasutajate (arvutioperaatorite) sisestatud teavet. "Inimfaktori" olemasolu sisestuse ajal suurendab vigaste andmete tõenäosust ja võib tekitada süsteemis lokaalseid probleeme.

3. Andmete salvestamise formaat. Erinevaid töövaldkondi teenindavad OLTP-süsteemid ei ole omavahel ühendatud. Neid rakendatakse sageli erinevatel tarkvara- ja riistvaraplatvormidel. Samad andmed erinevates andmebaasides võivad olla esitatud erineval kujul ega pruugi kattuda (näiteks ettevõtte erinevate osakondadega suhelnud kliendi andmed ei pruugi nende osakondade andmebaasides kokku langeda).

4. Üleliigsete andmete lubamine. OLTP-süsteemi teenindava andmebaasi struktuur on tavaliselt üsna keeruline. See võib sisaldada kümneid või isegi sadu üksteisele viitavaid tabeleid. Sellises andmebaasis olevad andmed on selleks kuluvate ressursside optimeerimiseks kõrgelt normaliseeritud. Andmebaasi analüütilisi päringuid on väga raske formuleerida ja neid on äärmiselt ebaefektiivne täita, kuna need sisaldavad vaateid, mis ühendavad suure hulga tabeleid.

5. Andmehaldus. OLTP-süsteemide põhinõue on tagada, et andmebaasis tehakse muutmistoimingud. Eeldatakse, et neid tuleb sooritada reaalses režiimis ja sageli väga intensiivselt.

6. Salvestatud andmete hulk. Reeglina on analüüsisüsteemid ette nähtud ajasõltuvuste analüüsimiseks, samas kui OLTP-süsteemid tegelevad tavaliselt mõne parameetri hetkeväärtustega.

7. Andmepäringute olemus. OLTP-süsteemides on andmebaaside normaliseerimise tõttu päringute koostamine üsna keeruline töö ja nõuab vajalikku kvalifikatsiooni.

8. Andmepäringute töötlemise aeg. OLTP-süsteemid töötavad tavaliselt reaalajas, seega on neil ranged andmetöötlusnõuded.

9. Süsteemi arvutuskoormuse olemus. Nagu varem märgitud, tehakse OLTP-süsteemidega töötamist tavaliselt reaalajas.

10. Süsteemi omaduste prioriteetsus. OLTP-süsteemide puhul on prioriteet kõrge jõudlus ja andmete kättesaadavus, kuna need töötavad nendega reaalajas. Analüüsisüsteemide puhul on prioriteetsemad ülesanded süsteemi paindlikkuse ja kasutaja sõltumatuse tagamine, st see, mida analüütikud vajavad andmete analüüsimiseks.

Tuleb märkida, et vastuolulised nõuded OLTP-süsteemidele ja teabe süvaanalüüsile keskendunud süsteemidele raskendavad nende integreerimist ühe DSS-i alamsüsteemidena. Praegu on selle probleemi kõige populaarsem lahendus andmehoidla lähenemisviis.

Andmeladude üldine idee on eraldada süsteemide andmebaasid ja analüüsimiseks andmebaasid ning seejärel kujundada need vastavalt nõuetele.

DSS lahendab kolm peamist ülesannet: salvestatud teabe kogumine, säilitamine ja analüüsimine. Analüüsiülesanne võib üldiselt hõlmata: teabeotsingu analüüsi, operatiivanalüütilist analüüsi ja ennustavat analüüsi.

DBMS-i kasutavate teabeotsingu analüüsisüsteemide raames rakendatakse praegu edukalt info kogumise, salvestamise ja teabeotsingu analüüsi probleemide lahendamise alamsüsteeme. Operatiivanalüütilist analüüsi teostavate alamsüsteemide realiseerimiseks kasutatakse mitmemõõtmelise andmeesituse kontseptsiooni. Andmekaeve alamsüsteem rakendab meetodeid.

Andmebaase kasutavate rakendusprogrammide arendamise lihtsustamiseks luuakse andmebaasihaldussüsteeme (DBMS) - tarkvara andmehalduseks, andmete salvestamiseks ja andmeturbeks.

DBMS-idel on välja töötatud tehinguhaldusmehhanism, mis on muutnud need peamiseks vahendiks online-tehingute töötlemise süsteemide (OLTP-süsteemide) loomisel. Selliste süsteemide hulka kuulub esimene DSS, mis lahendab infootsingu analüüsi probleeme – ISR.

OLTP-süsteeme ei saa tõhusalt kasutada operatiivanalüütilise ja intellektuaalse teabe analüüsi probleemide lahendamiseks. Peamine põhjus on vastuolulised nõuded OLTP-süsteemile ja DSS-ile.

Praegu kasutatakse operatiivanalüütilise ja intellektuaalse analüüsi efektiivsuse tõstmiseks andmeladude kontseptsiooni OLTP alamsüsteemide ja analüüsi alamsüsteemide ühendamiseks ühe süsteemi sees. Üldine idee on eraldada andmebaas OLTP alamsüsteemide jaoks ja andmebaas analüüsi tegemiseks. See tagab optimaalse lähenemise andmetöötlusele otsuste tugisüsteemides.

Küsimused enesekontrolliks

1. Loetlege peamised ülesanded, mida otsustamist toetavad süsteemid lahendavad.

2. Tooge välja kontseptuaalsed suunad andmeladude ehitamiseks otsustustoetussüsteemides.

3. Määrake DSS-is andmeladude korraldamise struktuuride tüübid. Millised on igat tüüpi struktuuride eelised ja puudused?

4. Põhjendage DSS-is teabe kogumiseks ja töötlemiseks alamsüsteemi suhtejärgse mudeli kasutamise otstarbekust.

5. Kuidas tõlgendatakse andmetöötlussüsteemides tehingu mõistet?

6. Mis on tehingu peamine omadus andmetöötlussüsteemides?

7. Kirjeldage lühidalt tehingute haldamise mehhanismi OLTP-süsteemides.

8. Määrake OLTP-süsteemide roll ja koht võrgutehingute töötlemiseks. Miks on OLTP-süsteemid operatiivanalüüsi ja ennustava analüüsi probleemide lahendamisel ebaefektiivsed?

9. Millised on põhinõuded OLTP süsteemidele. Millised on vastuolulised nõuded OLTP-süsteemidele?

10. Nimetage võimalusi operatiivanalüütilise ja intellektuaalse analüüsi efektiivsuse tõstmiseks DSS-is.