OLAP, on-line analytical processing

Turinys 2Įvadas 3OLAP kilmė ir istorija 4Esminė technologinė schema 5Taikymo teorijoje ir praktikoje principai 7OLAP architekrūtų palyginimas 11ROLAP architektūra 11MOLAP architektūra 11OLAP architektūros trūkumai ir privalumai 13Interaktyvi duomenų analizė ir ataskaitų kūrimo galimybės 13Internetinės OLAP galimybės 13Skaičiavimo galimybės 13Duomenų atvaizdavimo galimybės 13Ataskaitų išskaidymo galimybės 14Rinkos vystymosi perspektyvos 15Išvados 17Literatūra 18ĮvadasŠiuolaikinis verslas naudoja didžiulį duomenų kiekį, tačiau įmonėje šie duomenys taip ir liks tik balastas, jeigu nesugebėsime jų išanalizuoti ir tinkamai interpretuoti. Tik duomenų analizė naudojant specialius programinius įrankius iš “žalios” informacijos leis atrinkti naudingus grūdelius ir perdirbti juos į vertingas žinias, kurios taps teisingų verslo sprendimų pagrindu.Informacinių technologijų srityje visada egzistavo dvi viena kitą papildančios sistemų grupės: Orientuotos į duomenų apdorojimą – duomenų apdorojimo sistemos; Orientuotos į duomenų analizę – sprendimų priėmimo sistemos.OLAP technologija priklauso antrajai informacinių technologijų grupei.Kas tai OLAP galima nusakyti šiais žodžiais: greita daugiamačių duomenų analizė (Fast Analysis of Shared Multidimensional Information).Greita (Fast) – reiškia, kad užklausos rezultatai grąžinami per keletą ar kelias dešimtis sekundžių.Daugiamačiai duomenys (Multidimensional Information) – duomenys turi būti pateikiami kaip daugiamatis vaizdas su pilnu hierarchijų palaikymu, nes tai kol kas geriausias būdas analizuoti verslą ir įmonių struktūrą.Analizė (Analysis) – reiškia, kad sistema turi būti suderinama su verslo (business) logika ir statistine analize.Šiame darbe bus analizuojamos OLAP savybės ir atskleista esminė OLAP esmė. Tam tikslui bus apžvelgti tokie punktai: OLAP kilmė; Technologinė schema; Bendrosios sąvokos; Taikymo principai; Daugiamatis duomenų kubas; OLAP architektūros, jų palyginimas; OLAP architektūrų privalumai ir trūkumai; Rinkos vystymosi perspektyvos.OLAP kilmė ir istorijaPirmasis produktas IRI‘o Express, kuris atliko OLAP užklausas buvo išleistas 1970m. Tačiau pats terminas OLAP atsirado tik 1993m. Šio termino autorius yra E.F. Kodas (E.F. „Ted“ Codd), kitaip žinomas kaip „reliacinių duomenų bazių tėvas“. Kodas apibrėžė 12 OLAP taisyklių, kurias turi tenkinti OLAP sistema. Šios 12 originalių OLAP taisyklių yra daugelio komercinių OLAP sistemų pagrindas, tačiau jos kritikuojamos, nes yra sudėtingos ir sunkiai suprantamos. Trumpas šių taisyklių variantas:

1. Daugiamatis modelis;2. Skaidrus ir aiškus serveris;3. Prieinamumas;4. Stabilus prieinamumas;5. Kliento serverio architektūra;6. Bendras matavimas;7. Duomenų išsklaidymo administravimas;8. Tinka daugeliui vartotojų;9. Dimensijos operavimas;10. Intuityvi duomenų manipuliacija;11. Lankstus taisymas ir paskelbimas;12. Kelių lygių palaikymas.Dabar OLAP technologija yra apibrėžiama nenaudojant sudėtingų taisyklių ir terminų. Dažniausiai sutinkamas OLAP apibrėžimas skamba taip:OLAP (On-line Analytical Processing) – tai technologija, leidžianti greitai, realiame laike ir įvairiais įmanomais pjūviais peržiūrėti informaciją, naudojant duomenų modelį, kuris atspindi realų organizacijos veiklos vaizdą, kaip jį supranta vartotojas, t. y. organizacijos duomenų atvaizdas yra daugiamatis.Esminė technologinė schemaOLAP – tai technologija, kuri priklauso sprendimų priėmimo informacinių technologijų grupei. Kad geriau suprasti šios technologijos veikimą, pateikiamos dvi technologinės schemos, kuriose bus matoma bendroji OLAP architektūra ir detalesnis OLAP veikimas (1, 2 pav.)

1pav. Bendra OLAP architektūra

OLAP produktai – tai programos, kurios analizei atlikti naudojasi OLAP serverio teikiamomis paslaugomis. Duomenys OLAP technologija paremtoms sistemoms dažniausiai saugomi duomenų sandėliuose (data warehouse), kuriems taip pat būdingas daugiamatiškumo principas. „OLAP ir duomenų sandėliai vienas kitą papildo. Duomenų sandėliuose saugomi duomenys, o OLAP transformuoja duomenų sandėlio duomenis į strateginę informaciją” [4]. 1pav. schemoje ir yra apibendrintai pavaizduota, kaip organizacijos veiklos duomenys gali būti apdoroti OLAP sistemoje.2pav. rodo detalesnį OLAP veikimą. Schemoje yra nurodomi atskiri lygiai, kuriuose vyksta konkretūs veiksmai – nuo duomenų išrinkimo, transformavimo ir užkrovimo, iki jų apdorojimo ir pateikimo vartotojui, dažniausiai grafiniu pavidalu.

2pav. Detalesnis OLAP veikimasBendriausiu atveju duomenų „sandėliai“ gali būti atvaizduoti kaip trijų lygmenų duomenų modelis. Kaip yra parodyta 2pav., informacija pirmiausiai yra išrenkama iš operacinių šaltinių, po to, duomenys yra išgryninami, transformuojami ir užkraunami į duomenų „sandėlį“. Nors šis pirmasis žingsnis yra už duomenų „sandėlio“ ribų, tačiau duomenų atrinkimas ir jų pradinis apdorojimas yra viena svarbiausių veiklų, į kurią OLP pardavėjų dėmesys kreipiamas kone labiausiai. Dažnai įvairūs duomenys turi būti labai gerai paruošiami, kol juos bus galima perkelti į naują, tuščią saugyklą.

Bet kuriuo atveju, kai duomenys jau yra atrinkti iš nutolusių šaltinių, jie patalpinami į duomenų „sandėlį“, kuris kiekvienu laiko momentu yra susietas su duomenų baze. Pats duomenų „sandėlis“ gali būti sukonstruotas kaip monolitinis plataus profilio objektas ir/arba eilė duomenų eilučių, kuri kiekviena yra sudaryta iš tam tikros dalies duomenų. Trečiame lygyje OLAP serverio darbas yra aprūpinti funkcionaliomis analitinėmis sistemomis, tai daroma DSS (Decision Support System) dėka. DSS – sistemos dalis, kuri analizuoja didelį kiekį duomenų ir atlieka įvairius skaičiavimus ir analizę. Praktikoje yra dviejų rūšių OLAP serveriai: ROLAP ir MOLAP, kurie gali būti naudojami šiam tikslui, nors bendru atveju, šių serverių tikslai yra labai panašūs. Galiausiai, aukščiausiame lygmenyje yra galutiniai įrankiai, kurie teikia vartotojui draugišką, dažniausiai grafinį, interfeisą [3].Taikymo teorijoje ir praktikoje principaiDaugiamatis duomenų pateikimas – svarbiausia OLAP sistemų savybė, leidžianti peržiūrėti informaciją pagal daugelį dimensijų. Daugiamatės duomenų lentelės padeda objektyviau pateikti verslo vartotojui reikalingą informaciją. Vartotojui pateikiamas realaus pasaulio vaizdas, kuris jam priimtinas ir suprantamas.OLAP technologijos taikymas pagrįstas keletu principu, norint juos apžvelgti, pirmiausiai svarbu yra susipažinti su sąvokomis, kurios geriausiai apibūdina OLAP veikimą. Sąvokos su paaiškinimais pateikimos toliau [3]: Detalizuoti (drill-down): informacija detalizuojama į žemesnius hierarchijos lygius, kuriuose pateikiama detalesnė informacija (drill down -. sumažinti abstrakcijų lygį, skaidant apibendrintą reikšmę į dedamąsias). Apžvelgti (roll-up): duomenys perkeliami į aukštesnius lygius, kuriuose pateikiami apibendrinti dimensijų duomenys (roll-up – susukti, padidinti abstrakcijų lygį).(drill down ir roll-up, galima sakyti yra priešingi vienas kitam veiksmai). Slice ir dice – žymėjimas ir projekcija; Dalinti (slice): pateikiamas bet kurių dviejų dimensijų pjūvis. Išpjauti (dice): kubas pasukamas, kad būtų galima atvaizduoti kitą skirtingos kitų dimensijų aibės duomenų pjūvį. Sukti (pivot): pakeičiamas dimensijų išsidėstymas, t. y. eilutės pakeičiamos stulpeliais arba atvirkščiai (Pivot – perorientuoti daugiaerdvinį vaizdą); .
 Drill – through – apibendrinti neišbaigtus duomenis.Bene svarbiausias OLAP technologijos ypatumas yra duomenų daugiamatis duomenų kubas. Daugiamatis duomenų kubas – tai grupė duomenų ląstelių, išdėstytų pagal matmenis – koordinačių ašis, vadinamas dimensijomis (dimension) (3pav.).

3pav. Duomenų kubas, jo veikimo principasAprašant OLAP duomenų struktūras (kubus) naudojama pjūvių sąvoka (dimensions). OLAP duomenų bazėje esantys įvykiai gali būti analizuojami pagal įvairius parametrus – įvairiais pjūviais (dimensijomis). Pagal pardavimų modelio pavyzdį, galime pamatyti duomenų kubo veikimo principą. Tarkim, užregistruotas prekių pardavimo įvykis apibūdinamas keliais parametrais (kada tai įvyko, koks produktas parduotas, kokioje parduotuvėje), todėl ir įmonės mastu pardavimus galima analizuoti įvairiais pjūviais:Pagal laiką. Galima sužinoti, kaip prekyba sekėsi šį mėnesį, palyginti su praėjusiu, su praėjusiais metais ir pan.Pagal produktą. Parduodamos įvairios produktų grupės, jų tipai ir pagaliau – konkretūs produktai. Galima sužinoti, kokią pajamų dalį sugeneravo ne tik konkretus produktas, bet ir viena ar kita produktų grupė, koks perkamiausias produktas ir pan. Pagal vietovę. Didelės organizacijos pardavimus vykdo didelėje teritorijoje, todėl konkrečios parduotuvės gali būti priskirtos prie apskričių, rajonų, rajonuose gali būti numatyti mažesni struktūriniai vienetai, pavyzdžiui, miestai ir pan. Tokiu būdu galima atsakyti, kaip sekėsi parduoti tą ar kitą prekę apskrityje, rajone ar mieste.Kaip matome iš pavyzdžio, pjūviai gali turėti tam tikrą hierarchinę struktūrą, pavyzdžiui, vietovės ir laiko pjūviai turi net po tris hierarchinius lygius (apskritis > rajonas > miestas ir metai > ketvirtis > mėnuo). Tokia hierarchinė struktūra gali būti ir labai sudėtinga.Šiuo atveju yra sukurtas trimatis duomenų kubas, kurio matmenis apibrėžia laiko, produkto ir vietovės dimensijos. Tačiau loginė duomenų kubo struktūra gali būti ne tik trimatė, bet ir daugiamatė. Tokio kubo pavyzdys yra pavaizduotas 3pav.

Kita pagrindinė OLAP duomenų bazių sąvoka yra skaičiuojamoji vertė. Galima pasirinkti, kokią su konkrečiu įvykiu susijusią skaitinę reikšmę analizuosime. Pateikiamame pavyzdyje galėtume analizuoti ne tik, pavyzdžiui, pajamas iš šiame mieste per mėnesį parduoto konkretaus produkto, bet ir jo pardavimo pelną ar parduotų prekių vienetų skaičių.Sukūrus duomenų kubą, OLAP duomenų bazės leis lengvai atlikti įvairius veiksmus:Perėjimą nuo bendresnių reikšmių iki individualių ir atvirkščiai, t. y. judėti hierarchine pjūvių (dimensijų) struktūra. Žinodami kurio nors …produkto pardavimų pokytį per mėnesį visoje apskrityje, esant reikalui galime pažiūrėti išsamiau – kaip produkto pardavimai kito skirtinguose šios apskrities rajonuose ar net atskirose parduotuvėse. Duomenų apibendrinimą pagal įvairius parametrus, t. y. analizę įvairiais pjūviais. Pavyzdžiui, ataskaitas apie pelną pardavus tam tikrą produktą galime analizuoti ne laike, bet pagal vietovę. Analizuojamojo matmens pakeitimą, t. y. analizę pagal skirtingas skaičiuojamąsias reikšmes. Vietoj pardavimų analizės pagal pajamas tuos pačius pardavimus toje pačioje vietovėje ir tuo pačiu metu galime analizuoti pagal jų sugeneruotą pelną.Turėdami kube saugomus duomenis, galėtume lengvai atsakyti į klausimą, kiek pajamų (skaičiuojamoji reikšmė) praėjusį pusmetį (laiko pjūvis) buvo gauta Vilniaus apskrities parduotuvėse (vietovės pjūvis) padažų produktų grupei (produktų pjūvis) iš visų pirkėjų [2].Duomenų kubas gali būti „pasuktas“ įvairiomis pusėmis, gali būti išrinktos konkrečios reikšmės ar reikšmių eilutė. 4pav. rodo įvairius duomenų kubo pasukimo ir išrinkimo būdus.

4pav. Duomenų kubo peržiūros būdai2002 metais “Survey.com” atliktų tyrimų duomenimis, pasaulyje apie 28 proc. įmonių naudojo OLAP technologijas. OLAP programinė įranga pritaikoma ir dažniausiai naudojama pardavimų ir rinkodaros analizei, vartotojų ir produktų pelningumui, finansinių ataskaitų konsolidacijai, paslaugų ir prekių poreikiui numatyti, finansiniam modeliavimui, vartotojų grupėms nustatyti ir segmentuoti.OLAP architekrūtų palyginimas

Aprašytas duomenų kubas yra loginis modelis. Šį modelį fiziškai skirtingai realizuojant, galima gauti du pagrindinius OLAP kubo fizinius modelius: ROLAP architektūrą (Relational OLAP); MOLAP architektūrą (Multidimensional OLAP). Sujungus ROLAP ir MOLAP architektūrų savybes gauta HOLAP (Hybrid OLAP) architektūra.ROLAP architektūraROLAP architektūra – tai daugiamatė reliacinių duomenų bazių lentelių sąsaja. Duomenys, kuriais yra manipuliuojama, yra saugomi reliacinėje duomenų bazėje. Reliacinės duomenų bazės naudojamos duomenų saugojimui, informacijos paieškai ir išrinkimui.Privalumai: ROLAP duomenų limitas yra tolygiai lygus duomenų bazės limitui. Kitais žodžiais tariant, pats ROLAP kaip technologija neturi jokio duomenų dydžio limito. ROLAP gali būti lengvai integruota į kitas egzistuojančias reliacines informacines sistemas. ROLAP technologija gali padidinti reliacinės bazės funkcionalumą. Trūkumai: ROLAP technologijos veikimas gali būti lėtas. Kadangi kiekviena ROLAP ataskaita yra SQL užklausa ar jų derinys, užklausos laikas gali būti ilgas, jei duomenų kiekis yra didelis. ROLAP technologija yra ribojama SQL funkcijų. Kadangi ROLAP technologija daugiausiai yra priklausoma nuo SQL užklausų duomenų bazei, jos netenkina visų poreikių. Pavyzdžiui, yra sunku atlikti kompleksinius skaičiavimus. ROLAP yra ribojamas tuo, ką SQL gali atlikti [5].MOLAP architektūraNaudojant MOLAP architektūrą, duomenys saugomi daugiamačiame masyve. Kiekvienas masyvo narys atitinka konkrečią OLAP kubo dimensiją. Fizinis vaizdas santykinai atitinka loginį OLAP kubo vaizdą, nes daugiamačiame masyve saugomos kintamųjų reikšmės. Naudojant MOLAP architektūrą, daugiamačiame masyve saugomi ne patys detaliausi duomenys, o iki tam tikro lygio apibendrinti duomenys.Privalumai: Puikus veikimas: MOLAP duomenų kubai yra sudaromi greitam informacijos išrinkimui ir yra optimaliai pritaikyti dalinimui ir išrinkimui (slice and dice). Gali atlikti kompleksinius skaičiavimus. Visi skaičiavimai yra sugeneruojami prieš sukuriant kubą. Kompleksiniai skaičiavimai vykdomi labai greitai.Trūkumai:
 Ribojamas duomenų kiekis. Kadangi visi skaičiavimai yra atliekami tada, kai duomenų kubas yra sugeneruojamas, neįmanoma įtraukti labai didelio duomenų kiekio į patį kubą. Žinoma, duomenys kubui gali būti išrinkti iš didelio kiekio. Tačiau šiuo atveju, tik maža jų dalis, apibendrinimas, bus įtrauktas į duomenų kubą. Keičiantis organizacijos duomenų struktūrai, turint MOLAP sistemą reikalingas visiškas struktūros reorganizavimas [5].OLAP architektūros trūkumai ir privalumaiInteraktyvi duomenų analizė ir ataskaitų kūrimo galimybės Milijonų eilučių apdorojimas, nereikalaujantis didelių laiko resursų; Dinamiškas duomenų filtravimas; Interaktyvus detalizavimas (drill down) į žemesnius hierarchijos lygius; Kiekvieno peržiūros lygio konkretūs peržiūros pasirinkimai; Interaktyvus duomenų filtravimas; Lengva paieškos sistema, patogi ir interaktyvi vartotojo sąsaja; Lentelių filtravimas pagal duomenis; Hierarchiškas filtravimas, padedantis apdoroti tūkstančius duomenų eilučių; Patogus perėjimas tarp rūšiavimo būdų; Automatinis stulpelių pločių nustatymas; Ataskaitų eksportavimas į HTML formatą, ataskaitų rodomas MS Word ir Excel programose; Kokybiškas ataskaitų generavimas, spalvų pasirinkimas nereikalaujantis jokių pastangų [8].Internetinės OLAP galimybės Įvairūs sprendimai internete; Vartotojai gali peržiūrėti, redaguoti bei saugoti ataskaitas internetiniuose tinklapiuose; Duomenų ir ataskaitų peržiūra per ftp bei http protokolus [8].Skaičiavimo galimybės Agregatinių funkcijų: Sum, Min, Max, Count ir daug kitų naudojimas; Skaičiavimai pagrįsti esamomis arba vartotojo sukurtomis funkcijomis; Galinga multidimensinė formulių kalba leidžia vartotojui operuoti rikiavimo, rūšiavimo ir kitomis funkcijomis; Skaičiavimo faktai gali būti pagrįsti jau kitais suskaičiuotais faktais; Galimybė vartotojui redaguoti bei peržiūrėti formulę bet kuriuo laiku; Unikalus „LAST“ funkcijos algoritmas leidžia analizuoti akcijas, jų kursus, balanso lapus, paskolų balansus ir kitus duomenis, kurie turi atilikti balansą; Datos laiko skaldymas (metai, ketvirčiai, mėnesiai, savaitės, valandos ir t.t.); Galybė statistinių funkcijų (vidurkis, pasiskirstymas, dispersija ir t.t) [8].Duomenų atvaizdavimo galimybės
 Bet kurių dizaino detalių keitimas bet kokiu momentu; Sąlyginio žymėjimo galimybė, leidžia vartotojui išskirti konkrečius duomenis; Puiki vartotojo sąsaja, palengvinanti vartotojo darbą [8].Ataskaitų išskaidymo galimybės Ypatingai kompaktiškų duomenų kubų kūrimas kruopščiam duomenų saugojimui; Duomenų kubo duomenys yra suspaudžiami nuo 1 iki 100 kartų, todėl yra patogu siųsti juos elektroniniu paštu, ar atsisiųsti juos internetu „offline“ naudojimui; Duomenų kubas leidžia plėsti informacijos pasikeitimo sistemas [8].Rinkos vystymosi perspektyvosPasaulinis OLAP rinkos pagyvėjimas ir plėtra ypač juntama pastaraisiais metais. Pats OLAP technologijos panaudojimas pradėtas 1994 metais. Tačiau tada OLAP rinka siekė vos 0,5 milijono dolerių.

OLAP pardavimų mastas 1994-2007 metais

“The OLAP Report” (www.olapreport.com) atliktas nepriklausomas tyrimas parodė, kad OLAP rinka pasaulyje auga maždaug 20-40 proc. per metus – nuo 1 bn. dolerių 1996 metais ji užaugo iki 3,3 bn. dolerių 2001-aisiais. Tolesniais metais, kilimas nebuvo toks ryškus, tačiau rinka nesumažėjo. 2006 – 2007 metams pateikiami prognozuojami duomenys. Kadangi 2005 metais, rinka buvo apie 5 bilijonus, yra tikimasi, kad 2007 metais, ji sieks 6 bilijonus [4].

OLAP rinkos pasidalinimas tarp didžiausių rinkos dalyvių

Didžiausi OLAP rinkos dalyviai yra išskiriami šie: Microsoft; Hyperion Solutions; Cognos and Adaytum, Frango; Business Objects; MicroStrategy; SAP; Oracle.Šiuo metu pagal rinkos dalį pirmauja Microsoft.Didžiausias pokytis šioje rinkoje įvyko 1998 metais su “MS SQL Server 7” į OLAP rinką įžengus bendrovei “Microsoft”. 2001 metais ji pasivijo didžiausią rinkos žaidėją “Hyperion Solutions” (www.hyperion.com) , siūlančią “Essbase” paketą [4].IšvadosOLAP nesena technologija, kuri šiuo vardu žinoma dar tik 13 metų. Tačiau jau dabar ši technologija užkariauja vis daugiau rinkos, sukelia vis daugiau verslininkų susidomėjimo. Analizuojant OLAP technologiją, kaip pagrindines jos funkcijas galima išskirti šias: Interaktyvi duomenų analizė ir ataskaitų kūrimo galimybės; Internetinės OLAP galimybės; Skaičiavimo galimybės;

 Duomenų atvaizdavimo galimybės; Ataskaitų išskaidymo galimybės.Viena iš svarbiausių OLAP galimybių, naudojama interaktyviai duomenų analizei yra daugiamatis duomenų kubas. Šio kubo dėka, vartotojui pateikiamas realaus pasaulio vaizdas. Svarbu pastebėti, kad šis kubas gali būti peržiūrėtas iš visų pusių, galima analizuoti tik dalį jo duomenų ar visą grupę. Turint OLAP duomenų kubą galima atlikti tokius veiksmus: Perėjimą nuo bendresnių reikšmių iki individualių ir atvirkščiai; Duomenų apibendrinimą pagal įvairius parametrus; Analizuojamojo matmens pakeitimą; Įvairių skaičiuojamų reikšmių gavimą (pelnas, pajamos ir pan.).OLAP rinkos vystymosi perspektyvos rodo, kad ši technologija turi didelę paklausą. Kiekvienais metais, OLAP pirkimas auga, prognozės rodo, kad ateinančiais, 2007 metais, pirkimai išaugs iki šešių bilijonų dolerių. Apibendrinant, būtų galima teigti, kad teisingas ir reikiama kryptimi panaudotas OLAP technologijos įdiegimas, gali sąlygoti sėkmingesnius verslo rezultatus bei išsamesnę organizacijos analizę bei efektyvesnį jos valdymą.Literatūra1. Neosymmetria, [Peržiūrėta 2006-04-10]http://www.neo.lt/nkm/index.phtml?lst=articles&ptid=2&tpid=30&arid=4602. IT ekspertas, OLAP duomenų bazės [Peržiūrėta 2006-04-15]http://itekspertas.projektas.lt/index.php?option=com_content&task=view&id=94&Itemid=513. Dalhousie University, Faculty of Computer Science [Peržiūrėta 2006-04-20]http://flame.cs.dal.ca/~panda/olap.html4. The OLAP Report [Peržiūrėta 2006-04-15]http://www.olapreport.com5. MOLAP, ROLAP and HOLAP [Peržiūrėta 2006-04-20]http://www.1keydata.com/datawarehousing/molap-rolap.html6. OLAP AND OLAP SERVER DEFINITIONS [Peržiūrėta 2006-04-20]http://www.moulton.com/olap/olap.glossary.html#CONSOLIDATE7. OLAP info [Peržiūrėta 2006-04-15]http://www.olapinfo.de/8. Contour Components [Peržiūrėta 2006-04-20]http://www.contourcomponents.com/