SAS Slovakia Newsletter / Biznis analytika

Ako pOLAPiť OLAP

Najčastejšie využívaným konceptom pre analytický prístup k bohatstvu dátového skladu je OLAP. Voľne do slovenčiny preložené ako analytické spracovanie on-line, avšak široko prijímané ako označenie pre rýchlu analýzu zdieľaných multidimenzionálnych informácií (FASMI), čo je aj s touto skratkou považované za štandard.

Ako už bolo naznačené, základom tohto poňatia je kocka, inak mnohorozmerná matica, ktorá pre všetky kombinácie prvkov dimenzií, navyše v rôznych hierarchiách, obsahuje hodnoty zodpovedajúcich ukazovateľov, čiže metrík, čiže faktov…

Krásne je na nej to, že akýkoľvek ukazovateľ v akomkoľvek kontexte nájdeme v matici na presnej adrese, danej kombináciou hodnôt konkrétnych prvkov v dimenziách na jednotlivých úrovniach hierarchií. Vhodnými rezmi v kocke ľahko získame dvojrozmerné zobrazenie pre prehľadnú prezentáciu. Môžeme prechádzať medzi jednotlivými úrovňami hierarchií (hovorí sa tomu „prevrtávanie“ nahor, či nadol – drill-up/drill-down), preskakovať medzi vetvami jednej hierarchie (drill-across) alebo sa dostať až „na skalu“ – teda najnižšiu úroveň, reprezentujúcu spravidla detailné dáta (drill-through, čiže vrt skrz). Môžeme kocku porcovať (slice and dice) a rôzne s ňou vyvádzať.

Pokiaľ sa pohybujeme v teoretickej rovine, je táto predstava aj so všetkými jej nuansami a rôznymi špecialitami ako tak uchopiteľná. Neúprosná prax však vyžaduje naplniť tento koncept skutočnými dátami, a potom s nimi pracovať. A to už je veľká výzva – pretože všetky hodnoty metrík je potrebné vypočítať, ukladať, sprístupňovať a prezentovať pre všetky kombinácie všetkých prvkov všetkých dimenzií vo všetkých hierarchiách. Tu zábava končí, pretože dát máme veľa a typickou vlastnosťou multidimenzionálnych kociek je, že sú v porovnaní so zdrojovými dátami veľmi veľké. Takže otázka znie: aký kompromis zvoliť medzi náročnosťou na priestor, rýchlosťou a komfortom. Tým, ako na ne odpovedajú, sa potom líšia jednotlivé nástroje a technológie, ktoré sa do kategórie OLAP zaraďujú.

Nie je OLAP ako OLAP

Čím sa teda jednotlivé typy nástrojov OLAP od seba odlišujú? Spôsobom uloženia dát, s ktorými pracujú, schopnosťou pracovať s detailnými informáciami, flexibilitou multidimenzionálneho modelu, rýchlosťou odozvy, prezentačnými možnosťami… Vo  všetkých prípadoch je však podstatná jedna vec: v akom okamžiku sa uskutočňuje výpočet metrík.

MOLAP

MOLAP znamená Multidimenzionálny OLAP. Nie je to trocha zvláštne, keď už OLAP sám o sebe zahŕňa „multidimenzionálnosť“? Zmierime sa s tým, keď prijmeme zvyk, že prvé písmeno rozšírenej skratky naznačuje spôsob ukladania dát prezentovaných v kocke. V tomto  prípade nám „M“ hovorí, že sa na médiá fyzicky ukladá celá multidimenzionálna matica. Hodnoty všetkých metrík sa teda dopredu vypočítajú, uložia, a potom sa už len elegantne prezentujú. Samotná analýza je naozaj rýchla, pretože výpočtovo najnáročnejšie operácie sú uskutočnené vopred. Medzi ostatnými typmi OLAPov predstavuje MOLAP akúsi klasiku. Umožňuje takmer okamžitú a flexibilnú analýzu všetkých informácií, ktoré obsahuje. Prečo teda vôbec uvažovať o iných konceptoch?
Problémy sú dva:  jednak je výzvou ukladať matice, ktoré obsahujú naozaj všetky dáta, pretože sú veľmi veľké a pre ich spracovanie sú potrebné obrovské výpočtové kapacity; veľkosť multidimenzionálnej databázy môže ľahko rásť nezvládnuteľným spôsobom. Tento problém sa ešte zvýrazňuje s rastúcim počtom dimenzií. Okrem toho prestáva byť tento model flexibilný v okamžiku, keď potrebujeme analyzovať dáta v inej štruktúre – s inými dimenziami, hierarchiami a metrikami, než s tými, ktoré boli vopred vypočítané; vznikajú a množia sa potom ďalšie a ďalšie kocky, uchovávajúce tie isté dáta mnohokrát len v mierne odlišnej štruktúre.

ROLAP

Takže, čo s tým? Nuž, na to máme relačné databázy, ktoré sú dnes schopné poňať obrovské dáta a predstavujú faktický štandard pre správu a spracovanie dát v podnikových informačných systémoch. Relačný OLAP ukladá dáta do (samozrejme dvojrozmerných) databázových tabuliek, usporiadaných do špeciálnych štruktúr, prispôsobených konceptu dimenzií a faktov. Tento model je úspornejší, ba aj flexibilnejší ,než v prípade MOLAPu. Je to hlavne preto, že multidimenzionálne pohľady (v podstate časti kocky), sa vytvárajú až pri načítaní dát z databázy, teda v dobe, keď sa uskutočňuje analýza. Takto je možné, aby bol systém schopný odpovedať „na akúkoľvek otázku“ položenú i nad veľmi rozsiahlymi dátami. Táto univerzálnosť je však vykúpená väčšími nárokmi na výkon databázového stroja a hlavne – väčšina komerčne využívaných databázových technológii je určená a optimalizovaná na spracovanie transakcií v operatívnom prostredí. Čítanie rozsiahlych dát s agregáciami a zložitými výpočtami teda nebýva „ich šálkou kávy“. Tento koncept je teda vhodný pre dátový sklad v pravom zmysle slova – v ktorom všetko nájdeme, keď to potrebujeme, ale „samoobsluha“ to ani zďaleka nie je.

HOLAP

Iste nás napadne, že by bolo vhodné oba predchádzajúce prístupy kombinovať. Pre dáta, ktoré potrebujeme analyzovať menej často a ktorých v praxi býva väčšina, využiť ROLAP a na MOLAPe ponechať intenzívnu analytickú činnosť. Niektoré technologické nástroje priamo podporujú kombináciu oboch a tomuto konceptu sa hovorí Hybridný OLAP. V praxi neexistuje jednoznačný štandard, definujúci, aké dáta majú byť spracovávané, ktorým spôsobom. Hranice sa u čiastkových produktov líšia. V zásade však majú jedno spoločné: pre oblasti opakujúcich sa analýz, ktoré spravidla pracujú s agregovanými dátami, majú snahu využívať rýchlosť skutočnej fyzickej (teda MOLAPovej) kocky a pre dotazy nad atomickými detailnými dátami a náhodné ad hoc analýzy, ťažiť z univerzálnosti a výkonu relačnej databázy.

To ešte nie je všetko

Uvedené modely predstavujú iba základné architektonické typy. Pre Business Intelligence je podstatné a typické, že poskytuje informačnú obsluhu najrôznejším typom užívateľov pre najrozličnejšiu agendu, v rôznych prostrediach prostredníctvom rôznych technológií, s využitím rôznych štandardov, atď. Dá sa povedať, že akýkoľvek spôsob, ktorý umožní doručiť užitočné (ale konzistentné) informácie patričnému klientovi, dáva zmysel, pokiaľ mu vyhovuje. Svoje miesto na slnku majú aj ďalšie typy a podtypy ako DOLAP (Desktop OLAP), Dynamický OLAP, WOLAP (Web based OLAP), RTOLAP (Real-time OLAP). V nadšení pre multidimenzionálnu analýzu by sme nemali zabúdať ani na ďalšie možnosti „nahliadnutia do hlbín dát“, medzi ktoré patrí napríklad „obyčajný“ reporting, hĺbková analýza údajov, štatistická analýza, atď.

Vladimír Kyjonka
BI Business Advisor, SAS
Článok je prevzatý z Computerworldu