Viacrozmerná reprezentácia údajov. Všeobecná schéma organizácie dátového skladu. Charakteristika, typy a hlavné rozdiely medzi technológiami OLAP a OLTP. Schémy hviezda a snehová vločka. Agregácia. OLAP systémy olap nástroje sú navrhnuté tak, aby

Podmienky vysokej konkurencie a rastúca dynamika vonkajšieho prostredia diktujú zvýšené požiadavky na systémy riadenia podnikov. Rozvoj teórie a praxe manažmentu bol sprevádzaný vznikom nových metód, technológií a modelov zameraných na zlepšenie efektívnosti činností. Metódy a modely zase prispeli k vzniku analytických systémov. Dopyt po analytických systémoch v Rusku je vysoký. Z hľadiska aplikácie sú tieto systémy najzaujímavejšie vo finančnom sektore: banky, poisťovníctvo, investičné spoločnosti. Výsledky práce analytických systémov sú potrebné predovšetkým pre ľudí, od ktorých rozhodnutia závisí rozvoj spoločnosti: manažérov, expertov, analytikov. Analytické systémy umožňujú riešiť problémy konsolidácie, reportingu, optimalizácie a prognózovania. Doposiaľ neexistuje konečná klasifikácia analytických systémov, rovnako ako neexistuje všeobecný systém definícií pojmov používaných v tomto smere. Informačnú štruktúru podniku môže predstavovať postupnosť úrovní, z ktorých každá sa vyznačuje vlastným spôsobom spracovania a riadenia informácií a má svoju funkciu v procese riadenia. Analytické systémy budú teda usporiadané hierarchicky rôzne úrovne túto infraštruktúru.

Úroveň transakčných systémov

Vrstva na ukladanie údajov

Vrstva Data Mart

Úroveň systému OLAP

Analytická aplikačná vrstva

OLAP - systémy - (OnLine Analytical Processing, analytické spracovanie v reálnom čase) - sú technológiou pre komplexnú multidimenzionálnu analýzu dát. OLAP - systémy sú použiteľné tam, kde je úlohou analyzovať multifaktoriálne dáta. Sú efektívnym nástrojom na analýzu a generovanie reportov. Dátové sklady, dátové obchody a systémy OLAP diskutované vyššie súvisia so systémami business intelligence (Business Intelligence, BI).

Informačné a analytické systémy vytvorené s očakávaním priameho použitia osobami s rozhodovacou právomocou sa veľmi často ukážu ako extrémne jednoduché na používanie, ale s výrazne obmedzenou funkčnosťou. Takéto statické systémy sa v literatúre nazývajú Executive Information Systems (ISR) alebo Executive Information Systems (EIS). Obsahujú preddefinované sady dotazov a hoci postačujú na každodenný prehľad, nedokážu odpovedať na všetky otázky o dostupných údajoch, ktoré môžu vzniknúť pri rozhodovaní. Výsledkom takéhoto systému sú spravidla viacstranové správy, po dôkladnom preštudovaní ktorých má analytik novú sériu otázok. Každá nová požiadavka, s ktorou sa pri navrhovaní takéhoto systému neráta, však musí byť najprv formálne opísaná, zakódovaná programátorom a až potom vykonaná. Čakacia doba v tomto prípade môže byť hodiny a dni, čo nie je vždy prijateľné. Externá jednoduchosť statických DSS, za ktorú väčšina zákazníkov informačných a analytických systémov aktívne bojuje, sa tak mení na katastrofálnu stratu flexibility.



Dynamické DSS sú na druhej strane zamerané na spracovanie neregulovaných (ad hoc) dátových požiadaviek analytikov. Najhlbšie požiadavky na takéto systémy zvážil E. F. Codd v článku, ktorý položil základ koncepcie OLAP. Práca analytikov s týmito systémami spočíva v interaktívnom slede generovania požiadaviek a študovaní ich výsledkov.

Dynamické DSS však môžu pôsobiť nielen v oblasti online analytického spracovania (OLAP); Podporu pri prijímaní manažérskych rozhodnutí na základe nahromadených dát možno vykonávať v troch základných oblastiach.

Podrobná dátová sféra. Toto je rozsah väčšiny systémov na vyhľadávanie informácií. Vo väčšine prípadov relačné DBMS odvádzajú skvelú prácu pri riešení problémov, ktoré tu vznikajú. Všeobecne uznávaným štandardom pre jazyk na manipuláciu s relačnými údajmi je SQL. Systémy na vyhľadávanie informácií, ktoré poskytujú koncovému používateľovi rozhranie v úlohách vyhľadávania detailných informácií, môžu byť použité ako doplnky ako na samostatných databázach transakčných systémov, tak aj na spoločnom dátovom sklade.

Oblasť agregovaných ukazovateľov. Komplexný pohľad na informácie zozbierané v dátovom sklade, ich zovšeobecnenie a agregácia, hyperkubická reprezentácia a viacrozmerná analýza sú úlohou online systémov na analytické spracovanie dát (OLAP). Tu sa môžete zamerať buď na špeciálne multidimenzionálne DBMS, alebo zostať v rámci relačných technológií. V druhom prípade môžu byť vopred agregované údaje zhromaždené v databáze v tvare hviezdy alebo informácie môžu byť agregované za behu v procese skenovania podrobných tabuliek relačnej databázy.

Oblasť zákonov. Inteligentné spracovanie sa vykonáva metódami intelektuálna analýza dáta (IAD, Data Mining), ktorých hlavnými úlohami je hľadanie funkčných a logických vzorcov v nahromadených informáciách, zostavovanie modelov a pravidiel, ktoré vysvetľujú nájdené anomálie a/alebo predpovedajú vývoj niektorých procesov.

Online analytické spracovanie dát

Koncept OLAP je založený na princípe viacrozmernej reprezentácie dát. E. F. Codd sa v článku z roku 1993 zaoberal nedostatkami relačného modelu, pričom predovšetkým poukázal na nemožnosť „kombinovať, prezerať a analyzovať dáta z hľadiska multidimenzionality, teda pre podnikových analytikov najzrozumiteľnejším spôsobom“, a definoval všeobecné požiadavky pre systémy OLAP, ktoré rozširujú funkčnosť relačnej DBMS a zahŕňajú multidimenzionálnu analýzu ako jednu z jej charakteristík.

Klasifikácia produktov OLAP podľa spôsobu prezentácie údajov.

V súčasnosti je na trhu veľké množstvo produktov, ktoré v tej či onej miere poskytujú funkcionalitu OLAP. Asi 30 najznámejších je uvedených v prehľadovom webovom serveri http://www.olapreport.com/. Všetky produkty OLAP, ktoré poskytujú viacrozmerný koncepčný pohľad z používateľského rozhrania na zdrojovú databázu, sú rozdelené do troch tried podľa typu zdrojovej databázy.

Najstaršie online analytické systémy spracovania (napríklad Essbase od Arbor Software, Oracle Express Server od Oracle) boli MOLAP, čo znamená, že mohli pracovať len s vlastnými multidimenzionálnymi databázami. Sú založené na proprietárnych technológiách pre multidimenzionálne DBMS a sú najdrahšie. Tieto systémy poskytujú celý cyklus spracovania OLAP. Buď obsahujú okrem serverového komponentu aj vlastné integrované klientske rozhranie, alebo sa používajú na komunikáciu s používateľom externé programy práca s tabuľkami. Na údržbu takýchto systémov je potrebný špeciálny personál na inštaláciu, údržbu systému a generovanie reprezentácií údajov pre koncových používateľov.

Systémy ROLAP (Online Relational Data Analytical Processing) vám umožňujú reprezentovať údaje uložené v relačnej databáze vo viacrozmernej forme a poskytujú transformáciu informácií do viacrozmerného modelu prostredníctvom medzivrstvy metadát. Systémy ROLAP sú dobre prispôsobené na prácu s veľkými úložiskami. Rovnako ako systémy MOLAP si vyžadujú značné náklady na údržbu zo strany IT špecialistov a poskytujú režim prevádzky pre viacerých používateľov.

Nakoniec, hybridné systémy (Hybrid OLAP, HOLAP) sú navrhnuté tak, aby kombinovali výhody a minimalizovali nevýhody predchádzajúcich tried. Speedware's Media/MR patrí do tejto triedy. Podľa vývojárov kombinuje analytickú flexibilitu a rýchlosť odozvy MOLAP s neustálym prístupom k skutočným údajom, ktoré sú pre ROLAP vlastné.

Multidimenzionálny OLAP (MOLAP)

V špecializovaných DBMS založených na viacrozmernej reprezentácii údajov nie sú údaje organizované vo forme relačných tabuliek, ale vo forme usporiadaných viacrozmerných polí:

1) hyperkocky (všetky bunky uložené v databáze musia mať rovnaký rozmer, to znamená byť v čo najúplnejšom základe meraní) alebo

2) polykocky (každá premenná je uložená s vlastným súborom meraní a všetky ťažkosti so spracovaním, ktoré sú s tým spojené, sa presúvajú do vnútorných mechanizmov systému).

Použitie viacrozmerných databáz v online analytických systémoch spracovania má nasledujúce výhody.

V prípade použitia multidimenzionálnej DBMS je vyhľadávanie a získavanie údajov oveľa rýchlejšie ako pri viacrozmernom koncepčnom pohľade na relačné databázy, keďže viacrozmerná databáza je denormalizovaná, obsahuje vopred agregované miery a poskytuje optimalizovaný prístup k požadovaným bunkám.

Multidimenzionálne DBMS sa ľahko vyrovnávajú s úlohami začlenenia do informačný model rôzne vstavané funkcie, pričom objektívne existujúce obmedzenia jazyka SQL značne sťažujú a niekedy znemožňujú implementáciu týchto úloh založených na relačných DBMS.

Na druhej strane však existujú značné obmedzenia.

Multidimenzionálne DBMS neumožňujú pracovať s veľkými databázami. Okrem toho v dôsledku denormalizácie a vopred vykonanej agregácie objem údajov v multidimenzionálnej databáze spravidla zodpovedá (podľa Codda) 2,5 až 100-krát menšiemu ako objem pôvodných podrobných údajov.

Viacrozmerné DBMS sú v porovnaní s relačnými DBMS veľmi neefektívne pri používaní externej pamäte. Informačná hyperkocka je v drvivej väčšine prípadov veľmi riedka a keďže sú dáta uložené v usporiadanej forme, nulové hodnoty je možné odstrániť len výberom optimálneho poradia triedenia, ktoré umožňuje organizovať dáta do čo najväčšieho súvislého skupiny. Ale aj v tomto prípade je problém vyriešený len čiastočne. Navyše, optimálne poradie zoradenia z hľadiska ukladania riedkych údajov pravdepodobne nebude poradie najčastejšie používané v dotazoch. Preto v reálnych systémoch treba nájsť kompromis medzi rýchlosťou a redundanciou miesta na disku, ktoré zaberá databáza.

Preto je použitie viacrozmernej DBMS opodstatnené len za nasledujúcich podmienok.

Množstvo počiatočných údajov na analýzu nie je príliš veľké (nie viac ako niekoľko gigabajtov), ​​to znamená, že úroveň agregácie údajov je dosť vysoká.

Súbor informačných dimenzií je stabilný (pretože akákoľvek zmena ich štruktúry si takmer vždy vyžaduje úplnú reštrukturalizáciu hyperkocky).

Čas odozvy systému na ad hoc požiadavky je najdôležitejším parametrom.

Vyžaduje rozsiahle používanie zložitých vstavaných funkcií na vykonávanie medzirozmerných výpočtov na bunkách hyperkocky, vrátane schopnosti písať vlastné funkcie.

Relačný OLAP (ROLAP)

Priame použitie relačných databáz v online analytických systémoch spracovania má nasledujúce výhody.

Vo väčšine prípadov sú podnikové dátové sklady implementované pomocou relačných DBMS a nástroje ROLAP vám umožňujú vykonávať analýzu priamo na nich. Zároveň veľkosť úložiska nie je takým kritickým parametrom ako v prípade MOLAP.

V prípade variabilnej dimenzie problému, kedy je potrebné pomerne často vykonávať zmeny v štruktúre dimenzií, sú optimálnym riešením ROLAP systémy s dynamickou reprezentáciou dimenzií, keďže takéto úpravy v nich nevyžadujú fyzickú reorganizáciu databázy.

Relačné DBMS poskytujú oveľa vyššiu úroveň ochrany údajov a dobré možnosti riadenia prístupu.

Hlavnou nevýhodou ROLAP v porovnaní s multidimenzionálnymi DBMS je nižší výkon. Na dosiahnutie výkonu porovnateľného s MOLAP vyžadujú relačné systémy starostlivý návrh databázovej schémy a vyladenie indexov, čo je zo strany DBA veľa úsilia. Iba pri použití hviezdicových schém sa môže výkon dobre vyladených relačných systémov priblížiť výkonu systémov založených na multidimenzionálnych databázach.

Hlavný rozdiel medzi faktami a informáciami je v tom, že údaje prijímame a berieme na vedomie, no vieme ich využiť vo svoj prospech. Zhruba povedané, informácie sú analyzované a systematizované údaje. Vďaka včasným informáciám sa mnohým firmám darí prežiť tak v podmienkach finančnej krízy, ako aj v tvrdej konkurencii. Nestačí zbierať fakty a mať všetky potrebné údaje. Stále ich musíte vedieť analyzovať. Na uľahčenie práce ľuďom povolaným robiť dôležité obchodné rozhodnutia boli vyvinuté rôzne podporné systémy. Na tento účel boli vyvinuté rôzne komplexné systémy, ktoré umožňujú analyzovať veľké polia heterogénnych údajov a premieňať ich na informácie užitočné pre podnikových používateľov. Novovznikajúca oblasť business intelligence má za cieľ zlepšiť procesnú kontrolu obchodných systémov prostredníctvom využitia dátových skladov a technológií.

Trh podnikových informačných systémov dnes ponúka pestrú škálu riešení, ktoré pomáhajú podniku organizovať manažérske účtovníctvo, zabezpečiť operatívne riadenie výroby a predaja a efektívne komunikovať so zákazníkmi a dodávateľmi.

Samostatnú niku na trhu podnikových systémov zaberajú analytické softvérové ​​produkty určené na podporu rozhodovania na strategickej úrovni riadenia podniku. Hlavným rozdielom medzi týmito nástrojmi a operačnými systémami riadenia je to, že tieto poskytujú riadenie podniku v „funkčnom režime“, to znamená implementáciu dobre definovaného výrobného programu, zatiaľ čo analytické systémy na strategickej úrovni pomáhajú podnikovému manažmentu rozvíjať rozhodnutia v „režime vývoja“.

Rozsah vykonaných zmien môže byť rôzny, od hlbokej reštrukturalizácie až po čiastočnú obnovu technológií na jednotlivých výrobných miestach, no v každom prípade osoby s rozhodovacou právomocou zvažujú rozvojové alternatívy, ktoré určujú osud podniku v dlhodobom horizonte.

Bez ohľadu na to, aký výkonný a rozvinutý je informačný systém podniku, nemôže pomôcť pri riešení týchto problémov, po prvé, pretože je naladený na stacionárne, zavedené podnikové procesy, a po druhé, nemá a nemôže mať informácie pre rozhodovanie o nových oblasti podnikania, nové technológie, nové organizačné rozhodnutia.

Vďaka technológii spracovania a analýzy údajov OLAP (On-Line Analytical Processing) môže každá organizácia takmer okamžite (do piatich sekúnd) získať údaje potrebné pre prácu. OLAP možno stručne definovať pomocou piatich kľúčových slov.

FAST (Fast) - to znamená, že čas vyhľadávania a vydania potrebných informácií netrvá dlhšie ako päť sekúnd. Najjednoduchšie požiadavky sú spracované za sekundu a len niekoľko zložitých požiadaviek má čas spracovania dlhší ako dvadsať sekúnd. Na dosiahnutie tohto výsledku sa používajú rôzne metódy, od špeciálnych foriem ukladania dát až po rozsiahle predbežné výpočty. Takto môžete získať správu za minútu, ktorej príprava predtým trvala niekoľko dní.

ANALÝZA (Analytical) hovorí, že systém dokáže vykonať akúkoľvek analýzu, štatistickú aj logickú, a potom ju uloží v dostupnej forme.

SHARED (Shared) znamená, že systém poskytuje požadované súkromie až na úrovni bunky

MULTIDIMENSIONAL (Multidimenzionální) - je hlavnou charakteristikou OLAP. Systém musí plne podporovať hierarchie a viacnásobné hierarchie, pretože je to najlogickejší spôsob analýzy podnikania aj aktivít organizácií.

INFORMÁCIE (Information). Potrebné informácie musí byť doručený tam, kde je to potrebné.

Práca organizácie vždy zhromažďuje údaje súvisiace s rozsahom jej činností, ktoré sú niekedy uložené na úplne odlišných miestach a ich spájanie je náročné a časovo náročné. Práve s cieľom urýchliť získavanie údajov na testovanie nových obchodných hypotéz bola vyvinutá technológia interaktívneho analytického spracovania údajov alebo OLAP. Hlavným účelom takýchto systémov OLAP je rýchlo reagovať na ľubovoľné požiadavky používateľov. Takáto potreba často vzniká pri vývoji nejakého dôležitého podnikateľského projektu, keď developer potrebuje pracovnú hypotézu, ktorá vznikla. Informácie, ktoré používateľ potrebuje, by mali byť najčastejšie prezentované vo forme určitej závislosti - napríklad ako závisí objem predaja od kategórie produktu, od regiónu predaja, od sezóny atď. Vďaka OLAP je schopný okamžite získať potrebné dáta v požadovanom rozložení za zvolené obdobie.

Interaktívna technológia OLAP vám umožňuje premeniť obrovské hromady správ a množstvo údajov na užitočné a presné informácie, ktoré pomôžu zamestnancovi urobiť informované obchodné alebo finančné rozhodnutie v správnom čase.

Navyše sa vďaka OLAP zvyšuje efektivita spracovania a užívateľ môže takmer okamžite prijímať veľké množstvo triedených (agregovaných) informácií. Vďaka OLAP môže používateľ jasne vidieť, ako efektívne jeho organizácia funguje, má schopnosť rýchlo a flexibilne reagovať na vonkajšie zmeny a má schopnosť minimalizovať finančné straty svojej organizácie. OLAP poskytuje presné informácie, ktoré zlepšujú rozhodovanie.

Jedinou nevýhodou systémov business intelligence je ich vysoká cena. Vytvorenie skladu osobných informácií si vyžaduje čas aj veľa peňazí.

Využitie technológie OLAP v podnikaní vám umožňuje rýchlo získať potrebné informácie, ktoré je možné na požiadanie používateľa prezentovať v bežnej forme – zostavy, grafy alebo tabuľky.

Postupy systémovej integrácie obchodných štruktúr sú založené na využití spoločných riešení ERP, CRM a SCM. V mnohých prípadoch systémy dodávajú rôzni výrobcovia a importované údaje musia prejsť procesom zosúlaďovania údajov a prezentácie ako heterogénne údaje. V podnikateľskom prostredí sa predpokladá jednoznačná požiadavka - kompletná analýza údajov, ktorá zahŕňa prezeranie konsolidovaných výkazov z rôznych uhlov pohľadu.

Rôzni výrobcovia majú rôzne mechanizmy reprezentácie údajov. Procedúra heterogénnej prezentácie zahŕňa extrakciu, transformáciu a načítanie (ETL). Napríklad v Microsofte SQL Server 2005 Analysis Services, problém konsolidácie dát je implementovaný pomocou Data Source Views - dátových zdrojov pohľadov, ktoré popisujú modely analytických pohľadov.

Obchodné aplikácie založené na technológiách OLAP, príklady produktov. Najbežnejšie aplikácie technológií OLAP sú:

Analýza dát.

Úloha, na ktorú sa pôvodne používali nástroje OLAP a stále zostávajú najpopulárnejšie. Multidimenzionálny dátový model, schopnosť analyzovať veľké množstvo dát a rýchla odozva na požiadavky robia takéto systémy nenahraditeľnými pre analýzu predaja, marketingových aktivít, distribúcie a iných úloh s veľkým množstvom počiatočných dát.

Príklady produktov: Microsoft Excel Kontingenčné tabuľky, Microsoft Analysis Services, SAP BW, Oracle Essbase, Oracle OLAP, Cognos PowerPlay, MicroStrategy, Business Objects.

Finančné plánovanie-rozpočtovanie.

Multidimenzionálny model vám umožňuje súčasne zadávať údaje a jednoducho ich analyzovať (napríklad analýza plánov). Preto séria moderné produkty Triedy CPM (Corporate Performance Management) využívajú modely OLAP %. Dôležitou úlohou je multidimenzionálny spätný výpočet (backsolve, breakback, writeback), ktorý umožňuje vypočítať požadované zmeny v podrobných bunkách pri zmene agregovanej hodnoty. Je to nástroj na analýzu typu what-if (what-if), t.j. hrať rôzne varianty udalostí pri plánovaní.

Príklady produktov: Microsoft PerformancePint, Oracle EPB, Oracle OFA, Oracle Hyperion Planning, SAP SEM, Cognos Enterprise Planning, Geac.

finančnej konsolidácie.

Konsolidácia údajov v súlade s medzinárodnými účtovnými štandardmi so zohľadnením majetkových podielov, rôznych mien a interných obratov je naliehavou úlohou z dôvodu sprísňujúcich sa požiadaviek kontrolných orgánov (SOX, Basel II) a IPO spoločností. OLAP technológie umožňujú urýchliť výpočet konsolidovaných výkazov a zvýšiť transparentnosť celého procesu.

Príklady produktov: Oracle FCH, Oracle Hyperion FM, Cognos Controller.

Technológie skladovania údajov a on-line analytického spracovania (OLAP).
sú dôležitými prvkami podpory obchodných rozhodnutí, ktoré sa čoraz viac stávajú neoddeliteľnou súčasťou každého odvetvia. Použitie technológií OLAP ako nástroja pre business intelligence poskytuje väčšiu kontrolu a včasný prístup k stratégii
informácie, ktoré prispievajú k efektívnemu rozhodovaniu.
To poskytuje príležitosť na modelovanie realistických predpovedí a efektívnejšieho využívania zdrojov. OLAP umožňuje organizácii rýchlejšie reagovať na požiadavky trhu.

Bibliografia:

1. Erik Thomsen. Riešenia OLAP: Budovanie viacrozmerných informačných systémov Druhé vydanie. Wiley Computer Publishing John Wiley & Sons, Inc., 2002.

2. Biela kniha rady OLAP, http://www.olapcouncil.org/research/whtpaply.htm

3. Gerd Stumme a Bernhard Ganter. Formálna koncepčná analýza _ Matematické základy.

Odoslanie dobrej práce do databázy znalostí je jednoduché. Použite nižšie uvedený formulár

Študenti, postgraduálni študenti, mladí vedci, ktorí využívajú vedomostnú základňu pri štúdiu a práci, vám budú veľmi vďační.

Uverejnené dňa http://www.allbest.ru/

Práca na kurze

podľa disciplíny: databázy

téma: TechnológiaOLAP

Dokončené:

Čižikov Alexander Alexandrovič

Úvod

1. Klasifikácia produktov OLAP

2. OLAP klient - OLAP server: výhody a nevýhody

3. Jadro systému OLAP

3.1 Konštrukčné princípy

Záver

Zoznam použitých zdrojov

Aplikácie

ATdirigovanie

Ťažko nájsť v počítačový svetčlovek, ktorý aspoň na intuitívnej úrovni nechápal, čo sú databázy a prečo sú potrebné. Na rozdiel od tradičných relačných DBMS nie je pojem OLAP taký známy, aj keď záhadný termín „kocky OLAP“ už asi počul takmer každý. Čo je to on-line analytické spracovanie?

OLAP nie je jediný softvérový produkt, ani programovací jazyk a dokonca ani špecifická technológia. Ak sa pokúsite pokryť OLAP vo všetkých jeho prejavoch, potom ide o súbor konceptov, princípov a požiadaviek, ktoré sú základom softvérových produktov, ktoré uľahčujú analytikom prístup k údajom. Hoci s takouto definíciou bude len málokto nesúhlasiť, je nepravdepodobné, že by laikov priblížila o kúsok bližšie k pochopeniu témy. Preto v túžbe po poznaní OLAP je lepšie ísť inou cestou. Najprv musíte zistiť, prečo musia analytici nejako konkrétne uľahčiť prístup k údajom.

Faktom je, že analytici sú špeciálnymi spotrebiteľmi podnikových informácií. Úlohou analytika je nájsť vzory vo veľkých súboroch údajov. Preto analytik nebude venovať pozornosť jedinej skutočnosti, potrebuje informácie o stovkách a tisíckach udalostí. Mimochodom, jedným zo základných bodov, ktoré viedli k vzniku OLAP, je produktivita a efektívnosť. Predstavme si, čo sa stane, keď analytik potrebuje získať informácie a nástroje OLAP nie sú v podniku dostupné. Analytik nezávisle (čo je nepravdepodobné) alebo s pomocou programátora vytvorí vhodný SQL dotaz a dostane údaje, ktoré ho zaujímajú, vo forme správy alebo ich exportuje do tabuľky. S tým je veľa problémov. Po prvé, analytik je nútený robiť niečo iné ako svoju prácu (programovanie SQL) alebo čakať na programátorov, ktorí to urobia za neho - to všetko negatívne ovplyvňuje produktivitu práce, zvyšuje frekvenciu infarktov a mozgových príhod atď. Po druhé, jediná správa alebo tabuľka spravidla nezachráni myšlienkových gigantov a otcov ruskej analýzy - a celý postup sa bude musieť znova a znova opakovať. Po tretie, ako sme už zistili, analytici sa nepýtajú na maličkosti - potrebujú všetko naraz. To znamená (hoci technológia napreduje míľovými krokmi), že podnikový relačný databázový server, ku ktorému pristupuje analytik, môže myslieť hlboko a na dlhú dobu a blokovať zvyšok transakcií.

Koncept OLAP sa objavil práve kvôli rozlíšeniu podobné problémy. Kocky OLAP sú v podstate meta-správy. Rozrezaním metaspráv (čiže kociek) podľa dimenzií analytik v skutočnosti dostáva „bežné“ dvojrozmerné správy, ktoré ho zaujímajú (nie sú to nevyhnutne správy v bežnom zmysle slova – hovoríme o dátových štruktúrach). s rovnakými funkciami). Výhody kociek sú zrejmé - údaje je potrebné vyžiadať z relačného DBMS iba raz - pri zostavovaní kocky. Keďže analytici spravidla nepracujú s informáciami, ktoré sa dopĺňajú a menia za chodu, vygenerovaná kocka je relevantná pomerne dlho. Vďaka tomu sú nielen eliminované prerušenia prevádzky relačného DBMS servera (odpadajú dopyty s tisíckami a miliónmi riadkov odpovedí), ale dramaticky sa zvyšuje aj rýchlosť prístupu k dátam pre samotného analytika. Okrem toho, ako už bolo uvedené, výkon sa tiež zlepšuje výpočtom čiastkových súčtov hierarchií a iných agregovaných hodnôt v čase zostavenia kocky.

Za zvýšenie produktivity týmto spôsobom musíte samozrejme platiť. Niekedy sa hovorí, že dátová štruktúra jednoducho „vybuchne“ – kocka OLAP môže zaberať desiatky, ba dokonca stokrát viac miesta ako pôvodné dáta.

Teraz, keď sme trochu prišli na to, ako OLAP funguje a na čo slúži, stojí za to trochu formalizovať naše znalosti a poskytnúť kritériá OLAP bez simultánneho prekladu do bežného ľudského jazyka. Tieto kritériá (celkovo 12) sformuloval v roku 1993 E.F. Codd - tvorca konceptu relačnej DBMS a súčasne OLAP. Nebudeme sa nimi priamo zaoberať, keďže boli neskôr prepracované do takzvaného FASMI testu, ktorý definuje požiadavky na OLAP produkty. FASMI je skratka pre názov každej testovanej položky:

Rýchly (rýchly). Táto vlastnosť znamená, že systém by mal odpovedať na požiadavku používateľa v priemere do piatich sekúnd; väčšina požiadaviek je však spracovaná do jednej sekundy a najzložitejšie požiadavky by mali byť spracované do dvadsiatich sekúnd. Nedávne štúdie ukázali, že používateľ začína pochybovať o úspechu žiadosti, ak trvá viac ako tridsať sekúnd.

Analýza (analytická). Systém musí byť schopný zvládnuť akúkoľvek logickú a štatistickú analýzu, ktorá je špecifická pre obchodné aplikácie, a zabezpečiť, aby boli výsledky uložené vo forme dostupnej pre koncového používateľa. Analytické nástroje môžu zahŕňať postupy pre analýzu časových radov, alokáciu nákladov, konverziu meny, modelovanie zmien v organizačných štruktúrach a niektoré ďalšie.

Zdieľané (zdieľané). Systém by mal poskytovať dostatok príležitostí na obmedzenie prístupu k údajom a súčasnej práce mnohých používateľov.

Multidimenzionálny (multidimenzionálny). Systém by mal poskytovať koncepčne viacrozmernú reprezentáciu údajov vrátane plná podpora viaceré hierarchie.

Informácie (informácie). Sila rôznych softvérových produktov je charakterizovaná množstvom spracovávaných vstupných dát. Rôzne systémy OLAP majú rôzne kapacity: pokročilé riešenia OLAP dokážu spracovať najmenej tisíckrát viac údajov ako tie najmenšie. Pri výbere nástroja OLAP je potrebné zvážiť množstvo faktorov vrátane duplikácie údajov, požadovanej pamäte RAM, využitia miesta na disku, výkonu, integrácie s úložiskami informácií atď.

1. Klasifikácia produktov OLAP

Podstata OLAP teda spočíva v tom, že počiatočné informácie na analýzu sú prezentované vo forme viacrozmernej kocky a je možné s nimi ľubovoľne manipulovať a získať potrebné informačné sekcie - správy. Koncový používateľ zároveň vidí kocku ako viacrozmernú dynamickú tabuľku, ktorá automaticky sumarizuje údaje (fakty) v rôznych sekciách (dimenziách) a umožňuje interaktívne spravovať výpočty a formu zostavy. Tieto operácie zabezpečuje OLAP engine (alebo OLAP computing engine).

K dnešnému dňu bolo vo svete vyvinutých veľa produktov, ktoré implementujú technológie OLAP. Na uľahčenie navigácie medzi nimi sa používajú klasifikácie produktov OLAP: podľa spôsobu ukladania údajov na analýzu a podľa umiestnenia stroja OLAP. Poďme sa bližšie pozrieť na jednotlivé kategórie produktov OLAP.

Začnem klasifikáciou podľa spôsobu ukladania údajov. Dovoľte mi pripomenúť, že viacrozmerné kocky sú zostavené na základe zdrojových a súhrnných údajov. Zdrojové aj agregované údaje pre kocky môžu byť uložené v relačných aj viacrozmerných databázach. Preto sa v súčasnosti používajú tri spôsoby ukladania údajov: MOLAP (Multidimenzionálny OLAP), ROLAP (Relačný OLAP) a HOLAP (Hybridný OLAP). Podľa toho sú produkty OLAP rozdelené do troch podobných kategórií podľa spôsobu ukladania údajov:

1.V prípade MOLAP sú zdrojové a súhrnné údaje uložené vo viacrozmernej databáze alebo vo viacrozmernej lokálnej kocke.

2. V produktoch ROLAP sú zdrojové údaje uložené v relačných databázach alebo v plochých lokálnych tabuľkách na súborovom serveri. Súhrnné údaje možno umiestniť do servisných tabuliek v rovnakej databáze. Transformácia údajov z relačnej databázy do viacrozmerných kociek nastáva na základe požiadavky nástroja OLAP.

3. V prípade použitia architektúry HOLAP zostávajú zdrojové dáta v relačnej databáze, pričom agregáty sú umiestnené v multidimenzionálnej. Kocka OLAP je zostavená na žiadosť nástroja OLAP na základe relačných a viacrozmerných údajov.

Ďalšia klasifikácia je založená na umiestnení stroja OLAP. Na tomto základe sú OLAP produkty rozdelené na OLAP servery a OLAP klientov:

V serverových nástrojoch OLAP sú výpočty a ukladanie súhrnných údajov vykonávané samostatným procesom - serverom. Klientska aplikácia prijíma iba výsledky dotazov na multidimenzionálne kocky, ktoré sú uložené na serveri. Niektoré servery OLAP podporujú iba relačné databázy, niektoré iba viacrozmerné databázy. Mnoho moderných serverov OLAP podporuje všetky tri spôsoby ukladania údajov: MOLAP, ROLAP a HOLAP.

Klient OLAP je navrhnutý inak. Stavba viacrozmernej kocky a výpočty OLAP sa vykonávajú v pamäti klientskeho počítača. OLAP klienti sa tiež delia na ROLAP a MOLAP. A niektoré môžu podporovať obe možnosti prístupu k údajom.

Každý z týchto prístupov má svoje pre a proti. Na rozdiel od všeobecného presvedčenia o výhodách serverových nástrojov oproti klientskym nástrojom môže byť v mnohých prípadoch používanie klienta OLAP pre používateľov efektívnejšie a ziskovejšie ako používanie servera OLAP.

2. OLAP klient - OLAP server: výhody a nevýhody

Pri budovaní informačného systému možno funkcionalitu OLAP implementovať serverovými aj klientskymi nástrojmi OLAP. V praxi je výber výsledkom kompromisu medzi výkonom a cenou softvéru.

Množstvo údajov je určené kombináciou nasledujúcich charakteristík: počet záznamov, počet dimenzií, počet prvkov dimenzie, dĺžka dimenzií a počet faktov. Je známe, že server OLAP dokáže spracovať väčšie množstvo údajov ako klient OLAP s rovnakým výkonom počítača. Je to preto, že server OLAP ukladá na pevné disky multidimenzionálnu databázu, ktorá obsahuje vopred vypočítané kocky.

Klientske programy v čase vykonávania operácií OLAP na ňom vykonávajú dotazy v jazyku podobnom SQL, pričom neprijímajú celú kocku, ale jej zobrazené fragmenty. OLAP klient v čase práce musí mať Náhodný vstup do pamäťe celú kocku. V prípade architektúry ROLAP sa musí celé dátové pole použité na výpočet kocky najprv načítať do pamäte. Rovnako ako sa zvyšuje počet dimenzií, faktov alebo členov dimenzie, počet agregácií rastie exponenciálne. Množstvo dát spracovávaných klientom OLAP je teda priamo závislé od veľkosti pamäte RAM v PC používateľa.

Všimnite si však, že väčšina klientov OLAP poskytuje distribuované výpočty. Počet spracovaných záznamov, ktorý limituje prácu klientskeho nástroja OLAP, sa preto chápe nie ako objem primárnych údajov podnikovej databázy, ale ako veľkosť agregovanej vzorky z nej. Klient OLAP generuje dotaz do DBMS, ktorý popisuje podmienky filtrovania a algoritmus na predbežné zoskupovanie primárnych údajov. Server nájde, zoskupí záznamy a vráti kompaktný výber pre ďalšie výpočty OLAP. Veľkosť tejto vzorky môže byť desiatky a stokrát menšia ako objem primárnych, neagregovaných záznamov. V dôsledku toho je potreba takéhoto OLAP klienta v PC zdrojoch výrazne znížená.

Navyše, počet dimenzií je obmedzený možnosťami ľudského vnímania. Je známe, že priemerný človek dokáže súčasne obsluhovať 3-4, maximálne 8 dimenzií. Pri väčšom počte dimenzií v dynamickej tabuľke je vnímanie informácií výrazne ťažšie. Tento faktor by sa mal brať do úvahy pri predbežnom výpočte pamäte RAM, ktorú môže klient OLAP potrebovať.

Dĺžka rozmerov ovplyvňuje aj veľkosť adresného priestoru nástroja OLAP použitého pri výpočte kocky OLAP. Čím dlhšie sú rozmery, tým viac zdrojov je potrebných na predtriedenie viacrozmerného poľa a naopak. Len krátke merania v zdrojových dátach sú ďalším argumentom v prospech OLAP klienta.

Túto charakteristiku určujú dva faktory diskutované vyššie: množstvo spracovávaných údajov a výkon počítačov. S nárastom počtu napríklad dimenzií klesá výkon všetkých nástrojov OLAP v dôsledku výrazného nárastu počtu agregátov, ale zároveň je miera poklesu rozdielna. Ukážme túto závislosť na grafe.

Diagram 1. Závislosť výkonu klientskych a serverových OLAP nástrojov na raste dát

Výkonnostné charakteristiky servera OLAP sú menej citlivé na rast údajov. Je to spôsobené rôznymi technológiami spracovania požiadaviek používateľov serverom OLAP a klientom OLAP. Napríklad počas operácie vŕtania OLAP server pristupuje k uloženým údajom a „sťahuje“ údaje z tejto „vetvy“. Klient OLAP na druhej strane vypočítava celú sadu agregátov v čase načítania. Do určitého množstva dát je však výkon serverových a klientskych nástrojov porovnateľný. Pre klientov OLAP, ktorí podporujú distribuované výpočty, sa oblasť porovnateľnosti výkonu môže rozšíriť na objemy údajov, ktoré pokrývajú potreby analýzy OLAP veľkého počtu používateľov. Potvrdzujú to výsledky interného testovania MS OLAP Server a OLAP klienta "Contour Standard". Test bol vykonaný na IBM PC Pentium Celeron 400 MHz, 256 Mb na vzorke 1 milióna jedinečných (tj agregovaných) záznamov so 7 rozmermi obsahujúcich od 10 do 70 členov. Čas načítania kocky v oboch prípadoch nepresiahne 1 sekundu a vykonávanie rôznych operácií OLAP (vŕtanie nahor, nadol, pohyb, filtrovanie atď.) sa vykonáva v stotinách sekundy.

Keď veľkosť vzorky prekročí množstvo pamäte RAM, začne sa výmena s diskom a výkon klienta OLAP prudko klesne. Až od tohto momentu môžeme hovoriť o výhodách servera OLAP.

Je potrebné pripomenúť, že „bod zlomu“ definuje hranicu prudkého nárastu nákladov na riešenie OLAP. Pre úlohy každého konkrétneho používateľa je tento bod ľahko určený výkonnostnými testami klienta OLAP. Takéto testy je možné získať od vývojárskej spoločnosti.

Okrem toho sa náklady na riešenie OLAP na strane servera zvyšujú so zvyšujúcim sa počtom používateľov. Faktom je, že server OLAP vykonáva výpočty pre všetkých používateľov na rovnakom počítači. Čím väčší je počet používateľov, tým viac pamäte RAM a výkonu procesora. Ak teda objemy spracovaných dát ležia v oblasti porovnateľného výkonu serverových a klientskych systémov, potom pri ostatných rovnakých veciach bude použitie OLAP klienta výhodnejšie.

Používanie OLAP servera v „klasickej“ ideológii zahŕňa nahrávanie údajov z relačných DBMS do multidimenzionálnej databázy. Nahrávanie sa vykonáva po určitú dobu, takže údaje servera OLAP neodrážajú aktuálny stav. Iba tie servery OLAP, ktoré podporujú režim prevádzky ROLAP, sú zbavené tohto nedostatku.

Podobne množstvo klientov OLAP umožňuje architektúry ROLAP a Desktop s priamym prístupom k databáze. To poskytuje on-line analýzu počiatočných údajov.

Server OLAP kladie minimálne požiadavky na kapacitu klientskych terminálov. Objektívne sú požiadavky klienta OLAP vyššie, pretože vykonáva výpočty v pamäti RAM počítača používateľa. Stav hardvérovej flotily konkrétnej organizácie je kritickým faktorom, ktorý treba zvážiť pri výbere nástroja OLAP. Ale má to aj svoje pre a proti. Server OLAP nevyužíva enormný výpočtový výkon dnešných osobných počítačov. Ak už má organizácia flotilu moderných počítačov, je neefektívne používať ich len ako zobrazovacie terminály a zároveň to znamená dodatočné náklady na centrálny server.

Ak výkon počítačov používateľov „nechá veľa byť požadovaných“, klient OLAP pobeží pomaly alebo nebude fungovať vôbec. Nákup jedného výkonného servera môže byť lacnejší ako upgrade všetkých počítačov.

Tu je užitočné vziať do úvahy trendy vo vývoji hardvéru. Keďže množstvo dát na analýzu je prakticky konštantné, neustály rast výkonu PC povedie k rozšíreniu možností OLAP klientov a presunu OLAP serverov do segmentu veľmi veľkých databáz.

Pri použití servera OLAP sa cez sieť do klientskeho počítača odošlú iba zobrazované údaje, zatiaľ čo klient OLAP prijíma všetky primárne vzorové údaje.

Preto tam, kde sa používa klient OLAP, sieťová prevádzka bude vyššia.

Pri použití servera OLAP sa však napríklad operácie používateľa rozširujú, generujú nové dopyty do multidimenzionálnej databázy, a tým aj nový prenos údajov. Vykonávanie operácií OLAP klientom OLAP sa vykonáva v pamäti RAM, a preto nespôsobuje nové toky údajov v sieti.

Treba tiež poznamenať, že moderná sieť Hardvér poskytuje vysokú priepustnosť.

Preto v drvivej väčšine prípadov analýza databázy „stredných“ veľkostí pomocou OLAP klienta nespomalí prácu používateľa.

Náklady na server OLAP sú pomerne vysoké. To by malo zahŕňať aj náklady na vyhradený počítač a fixné náklady na správu viacrozmernej databázy. Okrem toho si implementácia a údržba servera OLAP vyžaduje dostatočne vysokú kvalifikáciu personálu.

Náklady na klienta OLAP sú rádovo nižšie ako náklady na server OLAP. Administrácia a ďalšie technické vybavenie servera nie je potrebné. Pri implementácii OLAP klienta nie sú kladené vysoké požiadavky na kvalifikáciu personálu. Klient OLAP môže byť nasadený oveľa rýchlejšie ako server OLAP.

Vývoj analytických aplikácií pomocou klientskych nástrojov OLAP je rýchly proces, ktorý nevyžaduje špeciálne školenie vykonávateľa. Používateľ, ktorý pozná fyzickú implementáciu databázy, môže vyvinúť analytickú aplikáciu sám, bez zapojenia IT špecialistu. Pri používaní servera OLAP sa musíte naučiť 2 rôznych systémov, niekedy od rôznych dodávateľov, na vytváranie kociek na serveri a na vývoj klientskej aplikácie. Klient OLAP poskytuje jediné vizuálne rozhranie na popis kociek a prispôsobenie používateľských rozhraní pre ne.

Zvážte proces vytvárania aplikácie OLAP pomocou klientskeho nástroja.

Diagram 2: Vytvorte aplikáciu OLAP pomocou klientskeho nástroja ROLAP

Princípom fungovania klientov ROLAP je predbežný popis sémantickej vrstvy, za ktorou sa skrýva fyzická štruktúra zdrojových dát. V tomto prípade môžu byť zdrojmi údajov: lokálne tabuľky, RDBMS. Zoznam podporovaných zdrojov údajov je určený konkrétnym softvérovým produktom. Potom môže používateľ samostatne manipulovať s objektmi, ktorým rozumie z hľadiska predmetnej oblasti, a vytvárať kocky a analytické rozhrania.

Princíp fungovania klienta servera OLAP je odlišný. Na serveri OLAP pri vytváraní kociek používateľ manipuluje s fyzickými popismi databázy.

Tým sa vytvárajú vlastné popisy v samotnej kocke. Klient OLAP Server je nakonfigurovaný len pre kocku.

Vysvetlime si, ako funguje klient ROLAP na príklade vytvorenia dynamickej správy o predaji (pozri obrázok 2). Nechajte počiatočné údaje na analýzu uložiť do dvoch tabuliek: Predaj a Dohoda.

Pri vytváraní sémantickej vrstvy sa zdroje údajov - tabuľky Predaj a Dohoda - popíšu pojmami zrozumiteľnými pre koncového používateľa a zmenia sa na "Produkty" a "Ponuky". Pole „ID“ z tabuľky „Produkty“ sa premenuje na „Kód“ a „Názov“ na „Produkt“ atď.

Potom sa vytvorí obchodný objekt Predaj. Podnikateľský objekt je plochý stôl, na základe ktorého je vytvorená viacrozmerná kocka. Pri vytváraní obchodného objektu sú tabuľky „Produkty“ a „Ponuky“ spojené poľom „Kód“ produktu. Pretože zostava nemusí zobrazovať všetky polia v tabuľkách, obchodný objekt používa iba polia Položka, Dátum a Suma.

Ďalej sa vytvorí zostava OLAP na základe obchodného objektu. Používateľ vyberie obchodný objekt a pretiahne jeho atribúty do oblasti stĺpcov alebo riadkov tabuľky zostavy. V našom príklade sa na základe obchodného objektu „Predaj“ vytvoril prehľad o predaji tovaru podľa mesiacov.

Pri práci s interaktívnou zostavou môže používateľ nastaviť podmienky filtrovania a zoskupovania rovnakými jednoduchými pohybmi myši. V tomto bode klient ROLAP pristupuje k údajom vo vyrovnávacej pamäti. Klient OLAP servera vygeneruje nový dotaz do multidimenzionálnej databázy. Napríklad použitím produktového filtra v prehľade predaja môžete získať prehľad o predaji produktov, ktoré nás zaujímajú.

Všetky nastavenia pre aplikáciu OLAP môžu byť uložené vo vyhradenom úložisku metadát, v aplikácii alebo v úložisku multidimenzionálneho databázového systému. Implementácia závisí od konkrétneho softvérového produktu.

V akých prípadoch teda môže byť používanie klienta OLAP pre používateľov efektívnejšie a výhodnejšie ako používanie servera OLAP?

Ekonomická uskutočniteľnosť použitia OLAP servera vzniká vtedy, keď je množstvo dát veľmi veľké a neúnosné pre klienta OLAP, v opačnom prípade je použitie OLAP servera opodstatnenejšie. V tomto prípade klient OLAP kombinuje vysoký výkon a nízke náklady.

Počítače výkonných analytikov sú ďalším argumentom v prospech klientov OLAP. Pri použití servera OLAP sa tieto kapacity nevyužívajú. Medzi ďalšie výhody klientov OLAP patria:

Náklady na implementáciu a údržbu klienta OLAP sú výrazne nižšie ako náklady na server OLAP.

Pri použití klienta OLAP so vstavaným počítačom sa prenos údajov cez sieť uskutoční raz. Pri vykonávaní operácií OLAP sa negenerujú žiadne nové dátové toky.

Nastavenie klientov ROLAP je zjednodušené odstránením medzičlánku – vytvorením multidimenzionálnej databázy.

3. Jadro systému OLAP

3.1 Konštrukčné princípy

základné dáta klienta aplikácie

Z toho, čo už bolo povedané, je zrejmé, že mechanizmus OLAP je dnes jednou z najpopulárnejších metód analýzy údajov. Existujú dva hlavné prístupy k riešeniu tohto problému. Prvý z nich sa nazýva Multidimenzionálny OLAP (MOLAP) - implementácia mechanizmu pomocou multidimenzionálnej databázy na strane servera a druhý Relačný OLAP (ROLAP) - vytváranie kociek za behu na základe SQL dotazov do relačnej DBMS. Každý z týchto prístupov má svoje pre a proti. Ich komparatívna analýza presahuje rámec tejto práce. Tu bude popísaná iba základná implementácia desktopového modulu ROLAP.

Takáto úloha vznikla po použití systému ROLAP, postaveného na báze komponentov Decision Cube, ktoré sú súčasťou Borland Delphi. Bohužiaľ, použitie tejto sady komponentov ukázalo slabý výkon pri veľkom objeme údajov. Tento problém je možné znížiť tak, že sa pokúsite odrezať čo najviac údajov pred ich odoslaním do stavebných kociek. Nie vždy to však stačí.

Na internete a v tlači sa dá nájsť množstvo informácií o OLAP systémoch, no takmer nikde sa nehovorí o tom, ako to vo vnútri funguje.

Schéma práce:

Všeobecná schéma desktopového OLAP systému môže byť reprezentovaná nasledovne:

Schéma 3. Práca stolného OLAP systému

Algoritmus práce je nasledujúci:

1. Získanie údajov vo forme rovnej tabuľky alebo výsledku SQL vykonaniežiadosť.

2. Ukladanie údajov do vyrovnávacej pamäte a ich prevod na viacrozmernú kocku.

3. Zobrazenie zostrojenej kocky pomocou krížovej karty alebo grafu atď. Vo všeobecnosti môže byť k jednej kocke pripojený ľubovoľný počet zobrazení.

Zvážte, ako môže byť takýto systém usporiadaný interne. Začnime zo strany, ktorú môžete vidieť a cítiť, teda z máp. Displeje používané v systémoch OLAP sú najčastejšie dvoch typov – krížové tabuľky a grafy. Zvážte krížovú tabuľku, ktorá je primárnym a najbežnejším spôsobom zobrazenia kocky.

Na obrázku nižšie sú riadky a stĺpce obsahujúce agregované výsledky zobrazené žltou farbou, bunky obsahujúce fakty sú označené svetlosivou farbou a bunky obsahujúce údaje o dimenziách sú označené tmavosivou farbou.

Tabuľku teda možno rozdeliť na nasledujúce prvky, s ktorými budeme v budúcnosti pracovať:

Pri vypĺňaní matice faktami musíme postupovať takto:

Na základe nameraných údajov určte súradnice pridaného prvku v matici.

Určite súradnice stĺpcov a riadkov súčtov ovplyvnených pridávaným prvkom.

Pridajte prvok do matice a zodpovedajúce stĺpce a riadky súčtov.

Zároveň je potrebné poznamenať, že výsledná matica bude veľmi riedka, prečo jej usporiadanie vo forme dvojrozmerné pole(variant ležiaci na povrchu) je nielen iracionálny, ale s najväčšou pravdepodobnosťou aj nemožný z dôvodu veľkého rozmeru tejto matice, na uloženie ktorej nestačí žiadne množstvo RAM. Napríklad, ak naša kocka obsahuje informácie o predaji za jeden rok a ak má iba 3 dimenzie – Zákazníci (250), Produkty (500) a Dátum (365), potom dostaneme maticu faktov nasledujúcich dimenzií: počet prvkov = 250 x 500 x 365 = 45 625 000. A to aj napriek tomu, že v matici môže byť len niekoľko tisíc vyplnených prvkov. Navyše, čím väčší je počet rozmerov, tým redšia bude matica.

Preto na prácu s touto maticou musíte použiť špeciálne mechanizmy na prácu s riedkymi maticami. Na usporiadanie riedkej matice sú možné rôzne možnosti. Sú pomerne dobre zdokumentované v literatúre o programovaní, ako je napríklad prvý diel klasiky Donalda Knutha The Art of Programming.

Uvažujme teraz, ako môžeme určiť súradnice skutočnosti, ak poznáme jej zodpovedajúce rozmery. Aby sme to dosiahli, pozrime sa bližšie na štruktúru hlavičky:

V tomto prípade môžete ľahko nájsť spôsob, ako určiť čísla zodpovedajúcej bunky a súčty, do ktorých spadá. Tu možno navrhnúť niekoľko prístupov. Jedným z nich je použiť strom na nájdenie zodpovedajúcich buniek. Tento strom možno postaviť prechodom cez vzorku. Okrem toho je možné jednoducho definovať analytický rekurzívny vzorec na výpočet požadovaných súradníc.

Údaje uložené v tabuľke je potrebné previesť, aby sa dali použiť. Aby sa zlepšil výkon pri zostavovaní hyperkocky, je žiaduce nájsť jedinečné prvky uložené v stĺpcoch, ktoré sú rozmermi kocky. Okrem toho môžete vopred agregovať fakty pre záznamy, ktoré majú rovnaké hodnoty dimenzie. Ako je uvedené vyššie, jedinečné hodnoty dostupné v poliach dimenzií sú pre nás dôležité. Potom je možné navrhnúť nasledujúcu štruktúru na ich uloženie:

Schéma 4. Štruktúra na ukladanie jedinečných hodnôt

Použitím tejto štruktúry výrazne znižujeme potrebu pamäte. Čo je celkom relevantné, pretože. Na zvýšenie rýchlosti práce je žiaduce ukladať údaje do pamäte RAM. Okrem toho môžete uložiť iba pole prvkov a nahrať ich hodnoty na disk, pretože ich budeme potrebovať iba pri zobrazení krížovej tabuľky.

Vyššie popísané myšlienky boli základom pre vytvorenie knižnice komponentov CubeBase.

Schéma 5. Štruktúra knižnice komponentov CubeBase

TСubeSource vykonáva ukladanie do vyrovnávacej pamäte a konverziu údajov do interného formátu, ako aj predbežnú agregáciu údajov. Komponent TСubeEngine vypočítava hyperkocku a vykonáva s ňou operácie. V skutočnosti je to stroj OLAP, ktorý prevádza plochú tabuľku na viacrozmernú množinu údajov. Komponent TCubeGrid zobrazuje krížovú tabuľku a riadi zobrazenie hyperkocky. TСubeChart vám umožňuje vidieť hyperkocku vo forme grafov a komponent TСubePivote riadi činnosť jadra kocky.

Zvážil som teda architektúru a interakciu komponentov, ktoré možno použiť na zostavenie stroja OLAP. Teraz sa pozrime bližšie na vnútornú štruktúru komponentov.

Prvou fázou systému bude načítanie údajov a ich konverzia do interného formátu. Otázka bude logická - prečo je to potrebné, pretože môžete jednoducho použiť údaje z plochej tabuľky a zobraziť ich pri zostavovaní rezu kocky. Aby sme na túto otázku odpovedali, uvažujme o štruktúre tabuľky z pohľadu stroja OLAP. Pre systém OLAP môžu byť stĺpce tabuľky buď fakty, alebo dimenzie. V tomto prípade bude logika práce s týmito stĺpcami iná. V hyperkocke sú rozmery vlastne osi a hodnoty rozmerov sú súradnice na týchto osiach. V tomto prípade bude kocka vyplnená veľmi nerovnomerne - budú existovať kombinácie súradníc, ktoré nebudú zodpovedať žiadnym záznamom a budú kombinácie, ktoré zodpovedajú viacerým záznamom v zdrojovej tabuľke, pričom prvá situácia je bežnejšia, tj. , kocka bude vyzerať ako vesmír - prázdny priestor, na samostatných miestach, ktoré zhluky bodov (faktov) sa vyskytujú. Teda, ak sme bootstrapúdaje, budeme predagregovať údaje, to znamená, že skombinujeme záznamy, ktoré majú rovnaké namerané hodnoty, pričom vypočítame predbežné agregované hodnoty faktov, potom v budúcnosti budeme musieť pracovať s menším počtom záznamov, čo zvýši rýchlosť práce a znížiť požiadavky na RAM.

Na zostavenie rezov hyperkocky potrebujeme nasledujúce funkcie - určenie súradníc (v skutočnosti nameraných hodnôt) pre záznamy v tabuľke, ako aj určenie záznamov, ktoré majú špecifické súradnice (hodnoty merania). Pozrime sa, ako možno tieto možnosti realizovať. Najjednoduchším spôsobom uloženia hyperkocky je použitie databázy jej vlastného interného formátu.

Schematicky môžu byť transformácie znázornené takto:

Diagram 6. Konverzia databázy interného formátu na normalizovanú databázu

To znamená, že namiesto jednej tabuľky sme dostali normalizovanú databázu. V skutočnosti normalizácia znižuje rýchlosť systému, môžu povedať databázoví experti, a v tomto budú mať určite pravdu, keď potrebujeme získať hodnoty pre prvky slovníkov (v našom prípade hodnoty dimenzií). Ide však o to, že tieto hodnoty vo fáze vytvárania rezu vôbec nepotrebujeme. Ako už bolo spomenuté vyššie, v našej hyperkocke nás zaujímajú iba súradnice, preto zadefinujeme súradnice pre hodnoty merania. Najjednoduchšie by bolo prečíslovať hodnoty prvkov. Aby bolo číslovanie v rámci jednej dimenzie jednoznačné, najprv zoradíme zoznamy nameraných hodnôt (slovníky, vyjadrené v databáze) v abecednom poradí. Okrem toho prečíslujeme fakty a fakty sú vopred zhromaždené. Získame nasledujúci diagram:

Schéma 7. Prečíslovanie normalizovanej databázy na určenie súradníc nameraných hodnôt

Teraz zostáva len prepojiť prvky rôznych tabuliek navzájom. V teórii relačných databáz sa to robí pomocou špeciálnych medziľahlých tabuliek. Nám postačí, keď ku každému záznamu v tabuľkách dimenzií priradíme zoznam, ktorého prvkami budú počty faktov, pri ktorých tvorbe boli tieto dimenzie použité (teda určiť všetky skutočnosti, ktoré majú rovnakú hodnotu súradnice popísané týmto rozmerom). Pre fakty, respektíve pre každý záznam, uvádzame do súladu hodnoty súradníc, pozdĺž ktorých sa nachádza v hyperkocke. V nasledujúcom texte všade pod súradnicami položky v hyperkocke máme na mysli čísla zodpovedajúcich položiek v tabuľkách nameraných hodnôt. Potom pre náš hypotetický príklad dostaneme nasledujúcu množinu, ktorá definuje vnútornú reprezentáciu hyperkocky:

Schéma 8. Vnútorné znázornenie hyperkocky

Toto bude naša vnútorná reprezentácia hyperkocky. Keďže to nerobíme pre relačné databázy, ako polia na prepojenie nameraných hodnôt sa používajú iba polia s premenlivou dĺžkou (v RDB sme to nemohli urobiť, pretože počet stĺpcov tabuľky je tam vopred určený).

Dalo by sa skúsiť použiť sadu dočasných tabuliek na implementáciu hyperkocky, ale táto metóda poskytne príliš nízky výkon (príkladom je sada komponentov Decision Cube), takže použijeme vlastné štruktúry na ukladanie dát.

Na implementáciu hyperkocky musíme použiť dátové štruktúry, ktoré zabezpečia maximálny výkon a minimálnu spotrebu pamäte. Je zrejmé, že naše hlavné štruktúry budú slúžiť na ukladanie slovníkov a tabuliek faktov. Zvážte úlohy, ktoré by mal slovník vykonávať pri maximálnej rýchlosti:

kontrola prítomnosti prvku v slovníku;

pridanie prvku do slovníka;

hľadať čísla záznamov, ktoré majú špecifickú hodnotu súradníc;

vyhľadávanie súradníc podľa hodnoty merania;

hľadať nameranú hodnotu podľa jej súradníc.

Na splnenie týchto požiadaviek môžete použiť odlišné typy a dátové štruktúry. Môžete napríklad použiť polia štruktúr. V skutočnom prípade si tieto polia vyžadujú dodatočné mechanizmy indexovania, ktoré zvýšia rýchlosť načítania údajov a získavania informácií.

Pre optimalizáciu prevádzky hyperkocky je potrebné určiť, ktoré úlohy je potrebné riešiť prednostne a podľa akých kritérií musíme dosiahnuť zvýšenie kvality práce. Hlavnou vecou pre nás je zvýšenie rýchlosti programu, pričom je žiaduce, aby nebolo potrebné príliš veľké množstvo pamäte RAM. Zvýšenie výkonu je možné vďaka zavedeniu dodatočné mechanizmy prístup k údajom, napríklad zavedenie indexovania. Bohužiaľ to zvyšuje réžiu RAM. Preto určujeme, ktoré operácie musíme vykonávať s najväčšou rýchlosťou. Za týmto účelom zvážte jednotlivé komponenty, ktoré implementujú hyperkocku. Tieto komponenty sú dvoch hlavných typov – dimenzia a tabuľka faktov. Pre meranie by typická úloha bola:

pridanie novej hodnoty;

určenie súradnice hodnotou merania;

určenie hodnoty súradnicou.

Pri pridávaní novej hodnoty prvku je potrebné skontrolovať, či už takúto hodnotu máme, a ak áno, nepridávať novú, ale použiť existujúcu súradnicu, inak musíme pridať nový prvok a určiť jeho súradnicu. To si vyžaduje spôsob, ako rýchlo nájsť prítomnosť požadovaného prvku (navyše takýto problém vzniká aj pri určovaní súradnice hodnotou prvku). Na tento účel bude optimálne hašovanie. V tomto prípade bude optimálnou štruktúrou použitie hash stromov, do ktorých budeme ukladať odkazy na prvky. V tomto prípade budú prvkami reťazce slovníka dimenzií. Potom môže byť štruktúra hodnoty dimenzie reprezentovaná nasledovne:

PFactLink = ^TFactLink;

TFactLink = záznam

Fakt č: celé číslo; // index faktov v tabuľke

TDimensionRecord = záznam

Hodnota: reťazec; // hodnota merania

index: celé číslo; // hodnota súradnice

FactLink: PFactLink; // ukazovateľ na začiatok zoznamu prvkov tabuľky faktov

A v hash strome budeme ukladať odkazy na jedinečné prvky. Okrem toho musíme vyriešiť problém inverznej transformácie - určiť hodnotu merania súradnicou. Poskytnúť maximálny výkon musíte použiť priame adresovanie. Preto môžete použiť iné pole, ktorého index je súradnicou merania a hodnota je odkaz na príslušný záznam v slovníku. Môžete to však urobiť jednoduchšie (a zároveň ušetriť na pamäti), ak pole prvkov vhodne usporiadate tak, aby index prvku bol jeho súradnicou.

Organizácia poľa, ktorá implementuje zoznam faktov, nepredstavuje žiadne zvláštne problémy vďaka svojej jednoduchej štruktúre. Jediná poznámka bude, že je žiaduce vypočítať všetky agregačné metódy, ktoré môžu byť potrebné a ktoré možno vypočítať prírastkovo (napríklad súčet).

Takže sme opísali spôsob ukladania údajov vo forme hyperkocky. Umožňuje generovať množinu bodov vo viacrozmernom priestore na základe informácií v dátovom sklade. Aby osoba mohla s týmito údajmi pracovať, musia byť prezentované vo forme vhodnej na spracovanie. Zároveň sa ako hlavné typy prezentácie údajov používa kontingenčná tabuľka a grafy. Navyše obe tieto metódy sú vlastne projekciou hyperkocky. Aby sme zabezpečili maximálnu efektivitu pri vytváraní reprezentácií, začneme od toho, čo tieto projekcie predstavujú. Začnime kontingenčnou tabuľkou, ktorá je najdôležitejšou pre analýzu údajov.

Poďme nájsť spôsoby, ako implementovať takúto štruktúru. Kontingenčnú tabuľku tvoria tri časti: hlavičky riadkov, hlavičky stĺpcov a skutočná tabuľka súhrnných faktov. najviac jednoduchým spôsobom zobrazenia tabuľky faktov budú používať dvojrozmerné pole, ktorého rozmer možno určiť vytvorením hlavičiek. Žiaľ, najjednoduchší spôsob bude najefektívnejší, pretože tabuľka bude veľmi riedka a pamäť extrémne neefektívna, v dôsledku čoho sa dajú postaviť len veľmi malé kocky, inak nemusí byť dostatok pamäte. Musíme teda zvoliť dátovú štruktúru na ukladanie informácií, ktoré nám poskytne najvyššia rýchlosť vyhľadávanie / pridávanie nového prvku a zároveň minimálna spotreba RAM. Touto štruktúrou budú takzvané riedke matice, o ktorých si môžete prečítať viac o Knuthovi. možné rôznymi spôsobmi maticová organizácia. Aby sme si vybrali možnosť, ktorá nám vyhovuje, najprv zvážime štruktúru hlavičiek tabuľky.

Hlavičky majú jasnú hierarchickú štruktúru, preto by bolo prirodzené použiť na ich uloženie strom. V tomto prípade môže byť štruktúra stromového uzla schematicky znázornená takto:

Príloha C

Zároveň je logické uložiť ako hodnotu rozmeru odkaz na príslušný prvok tabuľky meraní viacrozmernej kocky. Tým sa zníži spotreba pamäte na ukladanie plátku a urýchli sa práca. Odkazy sa tiež používajú ako nadradené a podradené uzly.

Pre pridanie prvku do stromu je potrebné mať informáciu o jeho umiestnení v hyperkocke. Ako takúto informáciu je potrebné použiť jej súradnicu, ktorá je uložená v Slovníku hodnôt dimenzií. Uvažujme o schéme pridania prvku do stromu hlavičky kontingenčnej tabuľky. V tomto prípade používame ako počiatočnú informáciu hodnoty súradníc merania. Poradie, v ktorom sú tieto dimenzie uvedené, je určené požadovanou metódou agregácie a zodpovedá úrovniam hierarchie stromu hlavičky. V dôsledku práce musíte získať zoznam stĺpcov alebo riadkov kontingenčnej tabuľky, do ktorej chcete pridať prvok.

AplikáciaD

Súradnice merania používame ako počiatočné údaje na určenie tejto štruktúry. Navyše, pre definitívnosť budeme predpokladať, že v matici definujeme stĺpec, ktorý nás zaujíma (ako určíme riadok, zvážime trochu neskôr, pretože tam je vhodnejšie použiť iné dátové štruktúry, pozri dôvod pre túto voľbu tiež nižšie). Ako súradnice berieme celé čísla - počty nameraných hodnôt, ktoré možno určiť, ako je opísané vyššie.

Takže po vykonaní tohto postupu dostaneme pole odkazov na stĺpce riedkej matice. Teraz všetko, čo musíte urobiť potrebné opatrenia so šnúrkami. Aby ste to dosiahli, v každom stĺpci musíte nájsť požadovaný prvok a pridať ho zodpovedajúca hodnota. Pre každú z dimenzií v kolekcii potrebujete poznať počet jedinečných hodnôt a skutočnú množinu týchto hodnôt.

Teraz sa pozrime na to, ako reprezentovať hodnoty v stĺpcoch - to znamená, ako určiť požadovaný riadok. Na tento účel možno použiť niekoľko prístupov. Najjednoduchšie by bolo reprezentovať každý stĺpec ako vektor, ale keďže by to bolo veľmi riedke, pamäť by bola extrémne neefektívna. Aby sme tomu zabránili, používame dátové štruktúry, ktoré poskytnú efektívnejšiu reprezentáciu riedkych jednorozmerných polí (vektorov). Najjednoduchší z nich by bol normálny zoznam, jednoducho alebo dvojito prepojený, ale neekonomický z hľadiska prístupu k prvkom. Preto použijeme strom, ktorý zabezpečí rýchlejší prístup k prvkom.

Môžete napríklad použiť presne ten istý strom ako pre stĺpce, ale potom by ste museli vytvoriť svoj vlastný strom pre každý stĺpec, čo by viedlo k značnej réžii pamäte a času spracovania. Urobme to trochu zložitejšie - začnime jeden strom na uloženie všetkých kombinácií meraní použitých v riadkoch, ktoré budú identické s tým, ktorý je popísaný vyššie, ale jeho prvkami nebudú ukazovatele na riadky (ktoré ako také neexistujú), ale ich indexy a samotné hodnoty indexu nás nezaujímajú a používajú sa iba ako jedinečné kľúče. Potom použijeme tieto klávesy na nájdenie požadovaného prvku v stĺpci. Samotné stĺpce je najjednoduchšie reprezentovať ako bežný binárny strom. Graficky môže byť výsledná štruktúra znázornená nasledovne:

Diagram 9. Obrázok kontingenčnej tabuľky vo forme binárneho stromu

Na určenie zodpovedajúcich čísel riadkov môžete použiť rovnaký postup, aký je opísaný vyššie na určenie stĺpcov kontingenčnej tabuľky. V tomto prípade sú čísla riadkov jedinečné v rámci jednej kontingenčnej tabuľky a identifikujú prvky vo vektoroch, ktoré sú stĺpcami kontingenčnej tabuľky. Najjednoduchším spôsobom generovania týchto čísel by bolo udržiavať počítadlo a zvyšovať ho o jednu, keď sa do stromu hlavičky riadkov pridá nový prvok. Samotné tieto stĺpcové vektory sú najjednoduchšie uložené ako binárne stromy, kde sa ako kľúč používa hodnota čísla riadku. Okrem toho je možné použiť aj hašovacie tabuľky. Keďže postupy pri práci s týmito stromami sú podrobne diskutované v iných zdrojoch, nebudeme sa tým zaoberať a zvážime všeobecnú schému pridávania prvku do stĺpca.

Vo všeobecnej forme možno postupnosť akcií na pridanie prvku do matice opísať takto:

1. Určte čísla riadkov, kde sa pridávajú prvky

2. Definujte množinu stĺpcov, do ktorých sa pridávajú položky

3. Pre všetky stĺpce nájdite prvky s požadovanými číslami riadkov a pridajte k nim aktuálny prvok (pridanie zahŕňa spojenie požadovaného počtu hodnôt faktov a výpočet agregovaných hodnôt, ktoré je možné určiť prírastkovo).

Po vykonaní tohto algoritmu dostaneme maticu, čo je kontingenčná tabuľka, ktorú sme potrebovali vytvoriť.

Teraz pár slov o filtrovaní pri vytváraní rezu. Najjednoduchší spôsob, ako to implementovať, je práve vo fáze vytvárania matice, pretože v tejto fáze je prístup ku všetkým požadovaným poliam a navyše sa vykonáva agregácia hodnôt. Zároveň sa pri prijatí záznamu z cache kontroluje jeho súlad s podmienkami filtrovania a v prípade jeho nesúladu sa záznam zahodí.

Keďže vyššie opísaná štruktúra úplne popisuje kontingenčnú tabuľku, úloha jej vizualizácie bude triviálna. V tomto prípade môžete použiť štandardné komponenty tabuľky, ktoré sú dostupné takmer vo všetkých programovacích nástrojoch Windows.

Prvým produktom, ktorý vykonával OLAP dotazy, bol Express (spoločnosť IRI). Samotný pojem OLAP však vymyslel Edgar Codd, „otec relačných databáz“. A Coddovu prácu financovala spoločnosť Arbor, ktorá o rok skôr uviedla na trh svoj vlastný produkt OLAP Essbase (neskôr odkúpil Hyperion, ktorý v roku 2007 prevzal Oracle). Medzi ďalšie známe produkty OLAP patria Microsoft Analysis Services (predtým nazývané OLAP Services, súčasť SQL Server), Oracle OLAP Option, IBM DB2 OLAP Server (v skutočnosti EssBase s doplnkami IBM), SAP BW, produkty Brio, BusinessObjects, Cognos, MicroStrategy a iných výrobcov.

Z technického hľadiska sa produkty na trhu delia na „fyzické OLAP“ a „virtuálne“. V prvom prípade existuje program, ktorý vykoná predbežný výpočet agregátov, ktoré sa následne uložia do špeciálnej viacrozmernej databázy, ktorá poskytuje rýchle vyhľadávanie. Príkladmi takýchto produktov sú Microsoft Analysis Services, Oracle OLAP Option, Oracle/Hyperion EssBase, Cognos PowerPlay. V druhom prípade sú údaje uložené v relačných DBMS, zatiaľ čo agregáty nemusia existovať vôbec alebo môžu byť vytvorené pri prvej požiadavke v DBMS alebo vo vyrovnávacej pamäti analytického softvéru. Príkladmi takýchto produktov sú SAP BW, BusinessObjects, Microstrategy. Systémy založené na "fyzickom OLAP" poskytujú stabilitu najlepší čas odpoveď na otázky ako „virtuálne OLAP“ systémy. Dodávatelia virtuálnych OLAP tvrdia, že ich produkty sú škálovateľnejšie, pokiaľ ide o podporu veľmi veľkého množstva údajov.

V tejto práci by som sa chcel bližšie pozrieť na produkt BaseGroup Labs - Deductor.

Deductor je analytická platforma, t.j. základ pre vytváranie kompletných aplikačných riešení. Technológie implementované v Deductore umožňujú na základe jedinej architektúry prejsť všetkými fázami budovania analytického systému: od vytvorenia dátového skladu až po automatický výber modelov a vizualizáciu výsledkov.

Zloženie systému:

Deductor Studio je analytickým jadrom platformy Deductor. Deductor Studio obsahuje kompletnú sadu mechanizmov, ktoré vám umožňujú získať informácie z ľubovoľného zdroja údajov, vykonávať celý cyklus spracovania (čistenie, transformácia údajov, modely budovania), zobrazovať výsledky tým najpohodlnejším spôsobom (OLAP, tabuľky, grafy , rozhodovacie stromy ...) a exportovať výsledky.

Deductor Viewer je pracovisko koncového užívateľa. Program umožňuje minimalizovať požiadavky na personál, pretože všetky požadované operácie sú vykonávané automaticky pomocou vopred pripravených spracovacích skriptov, nie je potrebné premýšľať o spôsobe získavania údajov a mechanizmoch ich spracovania. Používateľovi Deductor Viewer stačí vybrať prehľad, ktorý ho zaujíma.

Deductor Warehouse je multidimenzionálny multiplatformový dátový sklad, ktorý zhromažďuje všetky informácie potrebné na analýzu predmetnej oblasti. Použitie jedného úložiska umožňuje pohodlný prístup, vysoká rýchlosť spracovanie, konzistencia informácií, centralizované ukladanie a automatická podpora celého procesu analýzy dát.

4. Klientsky server

Deductor Server je určený na vzdialené analytické spracovanie. Poskytuje možnosť automatického „spúšťania“ údajov prostredníctvom existujúcich skriptov na serveri a preškolenia existujúcich modelov. Použitie Deductor Server vám umožňuje implementovať plnohodnotnú trojvrstvovú architektúru, v ktorej funguje ako aplikačný server. Prístup na server poskytuje Deductor Client.

Princípy práce:

1. Import údajov

Analýza akýchkoľvek informácií v Deductor začína importom údajov. V dôsledku importu sa údaje zredukujú do formy vhodnej pre následnú analýzu pomocou všetkých mechanizmov dostupných v programe. Nezáleží na povahe údajov, formáte, DBMS atď mechanizmy práce so všetkými sú jednotné.

2. Export dát

Prítomnosť exportných mechanizmov vám umožňuje odosielať výsledky aplikácie tretích strán, napríklad preniesť prognózu predaja do systému na vygenerovanie objednávky alebo umiestniť pripravenú správu na firemnú webovú stránku.

3. Spracovanie údajov

Spracovanie v Deductore znamená akúkoľvek akciu spojenú s nejakým druhom transformácie údajov, napríklad filtrovanie, zostavenie modelu, čistenie atď. V tomto bloku sa vlastne vykonávajú najdôležitejšie akcie z hľadiska analýzy. Najvýznamnejšou vlastnosťou mechanizmov spracovania implementovaných v Deductore je to, že údaje získané ako výsledok spracovania môžu byť znova spracované ktoroukoľvek z metód dostupných v systéme. Takto je možné zostaviť ľubovoľne zložité scenáre spracovania.

4. Vizualizácia

Dáta môžete vizualizovať v Deductor Studio (Viewer) v ktorejkoľvek fáze spracovania. Systém nezávisle určuje, ako to dokáže, napríklad ak je vyškolený neurónová sieť, potom si okrem tabuliek a diagramov môžete pozrieť aj graf neurónovej siete. Používateľ musí vybrať požadovanú možnosť zo zoznamu a nakonfigurovať niekoľko parametrov.

5. Integračné mechanizmy

Deductor neposkytuje nástroje na zadávanie údajov - platforma je zameraná výlučne na analytické spracovanie. Na využitie informácií uložených v heterogénnych systémoch sú k dispozícii flexibilné importno-exportné mechanizmy. Interakciu je možné organizovať pomocou dávkového spustenia, práce v režime servera OLE a prístupu k serveru Deductor.

6. Replikácia vedomostí

Deductor umožňuje implementovať jednu z najdôležitejších funkcií každého analytického systému - podporu procesu replikácie znalostí, t.j. poskytnúť príležitosť zamestnancom, ktorí nie sú oboznámení s metódami analýzy a spôsobmi získania konkrétneho výsledku, získať odpoveď na základe modelov pripravených odborníkom.

Wzáver

V tomto príspevku bola uvažovaná taká oblasť moderných informačných technológií, ako sú systémy na analýzu údajov. Analyzovaný hlavný nástroj analytického spracovania informácií - technológia OLAP. Podrobne je popísaná podstata konceptu OLAP a dôležitosť OLAP systémov v modernom obchodnom procese. Podrobne je popísaná štruktúra a prevádzka servera ROLAP. Ako príklad implementácie OLAP dátových technológií je uvedená analytická platforma Deductor. Predložená dokumentácia bola vypracovaná a vyhovuje požiadavkám.

Technológie OLAP sú výkonným nástrojom na spracovanie údajov v reálnom čase. Server OLAP vám umožňuje organizovať a prezentovať údaje v rámci rôznych analýz a premieňa údaje na cenné informácie, ktoré pomáhajú spoločnostiam robiť lepšie rozhodnutia.

Používanie systémov OLAP poskytuje trvalo vysokú úroveň výkonu a škálovateľnosti, pričom podporuje objemy dát o veľkosti gigabajtov, ku ktorým majú prístup tisíce používateľov. Pomocou technológií OLAP je prístup k informáciám realizovaný v reálnom čase, t.j. spracovanie dotazov už nespomaľuje proces analýzy a zaisťuje jeho účinnosť a efektívnosť. Nástroje vizuálnej správy vám umožňujú vyvíjať a implementovať aj tie najzložitejšie analytické aplikácie, vďaka čomu je tento proces jednoduchý a rýchly.

Podobné dokumenty

    Základ konceptu OLAP (On-Line Analytical Processing) - online analytické spracovanie dát, vlastnosti ich použitia na klientovi a na serveri. Všeobecná charakteristika základných požiadaviek na systémy OLAP, ako aj spôsoby ukladania údajov v nich.

    abstrakt, pridaný 12.10.2010

    OLAP: všeobecné charakteristiky, účel, ciele, úlohy. Klasifikácia produktov OLAP. Princípy budovania systému OLAP, knižnica komponentov CubeBase. Závislosť výkonu klientskych a serverových OLAP nástrojov na náraste objemu dát.

    ročníková práca, pridaná 25.12.2013

    Večné úložisko dát. Entita a hodnota nástroja OLAP ( Online analýza spracovanie). Databázy a dátové úložiská, ich charakteristika. Štruktúra, architektúra dátových úložísk, ich poskytovatelia. Niekoľko tipov na zlepšenie výkonu OLAP kociek.

    test, pridaný 23.10.2010

    Budovanie systémov na analýzu údajov. Vytváranie algoritmov na navrhovanie kocky OLAP a vytváranie dopytov do zostavenej kontingenčnej tabuľky. Technológia OLAP pre multidimenzionálnu analýzu dát. Poskytovanie informácií používateľom na prijímanie manažérskych rozhodnutí.

    semestrálna práca, pridaná 19.09.2008

    Základné informácie o OLAP. Operatívne analytické spracovanie dát. Klasifikácia produktov OLAP. Požiadavky na prostriedky operatívneho analytického spracovania. Využitie multidimenzionálnych databáz v online analytických systémoch spracovania, ich výhody.

    semestrálna práca, pridaná 6.10.2011

    Vývoj subsystémov analýzy webových stránok s pomoc od Microsoftu Technológie Access a Olap. Teoretické aspekty vývoja subsystému analýzy dát v informačnom systéme hudobného portálu. Olap-technológie v podsystéme analýzy výskumného objektu.

    semestrálna práca, pridaná 11.06.2009

    Zváženie nástrojov OLAP: klasifikácia výkladov a informačných úložísk, koncept dátovej kocky. Architektúra systému na podporu rozhodovania. Softvérová implementácia Systémy Abitura. Vytvorenie webovej zostavy pomocou technológií Reporting Services.

    ročníková práca, pridaná 12.5.2012

    Dátový sklad, organizačné princípy. Dátové procesy. Štruktúra OLAP, technické aspekty viacrozmerného ukladania dát. Integračné služby, plnenie úložísk a dátových trhov. Schopnosti systémov využívajúcich technológie Microsoft.

    ročníková práca, pridaná 12.5.2012

    Vytvorenie schémy dátového skladu pre živnostenský podnik. Popisy schém vzťahu úložiska. Zobrazenie informácií o produkte. Vytvorenie kocky OLAP pre ďalšiu analýzu informácií. Vypracovanie dopytov na vyhodnotenie efektívnosti supermarketu.

    kontrolné práce, doplnené 19.12.2015

    Účel dátových úložísk. Architektúra SAP BW. Vytváranie analytických správ na báze kociek OLAP v systéme SAP BW. Hlavné rozdiely medzi dátovým skladom a systémom OLTP. Prehľad funkčných oblastí BEx. Vytvorenie dotazu v BEx Query Designer.

V roku 1993 zakladateľ relačného prístupu k budovaniu databáz, Edgar Codd a partneri (Edgar Codd, matematik a kolega IBM), publikoval článok iniciovaný spoločnosťou "Arbor Software" (dnes je to známa spoločnosť "Hyperion Solutions") , s názvom „Poskytovanie OLAP (operatívne analytické spracovanie) pre používateľov analytikov“, ktorý formuloval 12 vlastností technológie OLAP, ktoré boli následne doplnené o šesť ďalších. Tieto ustanovenia sa stali hlavným obsahom novej a veľmi perspektívnej technológie.

Hlavné vlastnosti technológie OLAP (základné):

  • viacrozmerná koncepčná reprezentácia údajov;
  • intuitívna manipulácia s údajmi;
  • dostupnosť a podrobnosti údajov;
  • dávka extrakcia údajov proti výkladu;
  • modely analýzy OLAP;
  • architektúra klient-server (OLAP je prístupný z pracovnej plochy);
  • transparentnosť (transparentný prístup k externým údajom);
  • podpora viacerých používateľov.

Špeciálne vlastnosti(špeciálne):

  • spracovanie neoficiálnych údajov;
  • ukladanie výsledkov OLAP: uchovávanie ich oddelených od pôvodných údajov;
  • vylúčenie chýbajúcich hodnôt;
  • spracovanie chýbajúcich hodnôt.

Vlastnosti reportovania( Správa ):

  • flexibilita pri podávaní správ;
  • štandardný výkon správ;
  • automatická konfigurácia fyzickej vrstvy extrakcie dát.

Manažment merania(Rozmer):

  • univerzálnosť meraní;
  • neobmedzený počet dimenzií a úrovní agregácie;
  • neobmedzený počet operácií medzi dimenziami.

Historicky dnes pojem „OLAP“ znamená nielen viacrozmerný pohľad na údaje od koncového používateľa, ale aj viacrozmernú reprezentáciu údajov v cieľovej databáze. S tým je spojený vznik ako nezávislých pojmov. "Relačný OLAP"(ROLAP) a "Multidimenzionálny OLAP"(MOLAP).

OLAP-service je nástroj na analýzu veľkého množstva údajov v reálnom čase. Interakciou s OLAP - systémom bude užívateľ schopný vykonávať flexibilné prezeranie informácií, získavať ľubovoľné dátové rezy a vykonávať analytické operácie detailovania, konvolúcie, end-to-end distribúcie, porovnávania v čase v mnohých parametroch súčasne. Všetka práca s OLAP-systémom prebieha v rámci predmetu a umožňuje zostaviť štatisticky platné modely obchodnej situácie.

OLAP softvér - je online nástroj na analýzu údajov obsiahnuté v úložisku. Hlavná prednosť je, že tieto nástroje nie sú určené na používanie odborníkom v oblasti informačných technológií, nie odborným štatistikom, ale odborníkom v aplikovanej oblasti manažmentu - manažérom útvaru, oddelenia, manažmentu a napokon, riaditeľ. Nástroje určené na komunikáciu analytikov s problémom, nie s počítačom. Na obr. 6.14 ukazuje elementárnu kocku OLAP, ktorá umožňuje vyhodnocovať údaje v troch rozmeroch.

Viacrozmerná kocka OLAP a systém zodpovedajúcich matematických algoritmov na štatistické spracovanie vám umožňuje analyzovať údaje akejkoľvek zložitosti v ľubovoľných časových intervaloch.


Ryža. 6.14.

Manažér, ktorý má k dispozícii flexibilné mechanizmy na manipuláciu s údajmi a vizuálne zobrazovanie (obr. 6.15, obr. 6.16), najskôr zvažuje údaje z rôznych uhlov pohľadu, ktoré môžu (ale nemusia) súvisieť s riešeným problémom.

Ďalej porovnáva rôzne obchodné ukazovatele medzi sebou a snaží sa identifikovať skryté vzťahy; môže sa na dáta pozrieť bližšie, granulovať ich napríklad rozčlenením podľa času, regiónu alebo zákazníka, alebo naopak ďalej zovšeobecňovať prezentáciu informácií, aby sa odstránili rušivé detaily. Potom pomocou modulu štatistický odhad a simulácia je zostavených niekoľko scenárov vývoja udalostí a z nich sa vyberie najprijateľnejšia možnosť.


Ryža. 6.15.

Manažér spoločnosti môže napríklad prísť s hypotézou, že rozloženie rastu majetku v rôznych odvetviach spoločnosti závisí od pomeru odborníkov s technickým a ekonomickým vzdelaním v nich. Na otestovanie tejto hypotézy si manažér môže vyžiadať zo skladu a na grafe zobraziť pomer záujmu k nemu pre tie pobočky, ktorých rast majetku za aktuálny štvrťrok oproti minulému roku klesol o viac ako 10 % a pre tie, ktorých majetok vzrástol o viac ako 25 %. Mal by vedieť použiť jednoduchý výber z poskytnutého menu. Ak získané výsledky výrazne spadajú do dvoch zodpovedajúcich skupín, malo by to byť podnetom na ďalšie testovanie predloženej hypotézy.

V súčasnosti smer tzv dynamická simulácia(Dynamic Simulation ), ktorá plne implementuje vyššie uvedený princíp FASMI.

Pomocou dynamického modelovania analytik zostavuje model obchodnej situácie, ktorá sa v priebehu času vyvíja podľa určitého scenára. Výsledkom takéhoto modelovania môže byť zároveň niekoľko nových obchodných situácií, ktoré generujú strom možných rozhodnutí s hodnotením pravdepodobnosti a perspektívy každej z nich.


Ryža. 6.16.

Tabuľka 6.3 ukazuje porovnávacie charakteristiky statickú a dynamickú analýzu.

Tabuľka 6.3.
Charakteristický Statická analýza Dynamická analýza
Typy otázok SZO? Čo? Ako? Ako? Kedy? Kde? prečo je to tak? Čo by sa stalo, keby...? Čo ak…?
Doba odozvy Nie je regulované sekúnd
Typické dátové operácie Regulovaná správa, diagram, tabuľka, obrázok Postupnosť interaktívnych správ, diagramov, obrazovkových formulárov. Dynamická zmena úrovní agregácie a dátových segmentov
Úroveň analytických požiadaviek Priemerná Vysoká
Typ zobrazenia V podstate vopred určené, regulované Používateľom definované, existujú možnosti prispôsobenia
Úroveň agregácie údajov Podrobné a zhrnuté Definované užívateľom
„Vek“ údajov Historické a súčasné Historické, súčasné a prognózované
Typy žiadostí Väčšinou predvídateľné. Nepredvídateľné - z času na čas
Účel Plánované analytické spracovanie Multi-pass analýza, modelovanie a prognózovanie

Takmer vždy je úlohou vybudovať analytický systém pre analýzu viacerých premenných údajov jednotný, koordinovaný informačný systém založený na heterogénnych softvérových nástrojoch a riešeniach. A samotný výber prostriedkov na implementáciu IP sa stáva mimoriadne náročnou úlohou. Tu je potrebné vziať do úvahy veľa faktorov vrátane vzájomnej kompatibility rôznych softvérové ​​komponenty, jednoduchosť ich vývoja, používania a integrácie, efektívnosť fungovania, stabilita a dokonca formy, úroveň a potenciálne perspektívy vzťahov medzi rôznymi výrobcami.

OLAP je použiteľný všade tam, kde je úlohou analyzovať multifaktoriálne údaje. Vo všeobecnosti, ak existuje tabuľka s údajmi, ktorá má aspoň jeden stĺpec s popisom a jeden stĺpec s číslami, nástroj OLAP bude účinným nástrojom na analýzu a generovanie správ. Ako príklad využitia technológie OLAP uvažujme štúdium výsledkov predajného procesu.

Kľúčové otázky "Koľko sa predalo?", "Koľko sa predalo?" expandovať, keď sa podnikanie stáva zložitejším a historické údaje sa hromadia na určitý súbor faktorov alebo škrtov: „.. v Petrohrade, v Moskve, na Urale, na Sibíri...“, „.. v poslednom štvrťroku , v porovnaní so súčasným“, „ ..od dodávateľa A verzus dodávateľ B…“ atď.

Odpovede na takéto otázky sú nevyhnutné pre prijímanie manažérskych rozhodnutí: zmena sortimentu, cien, zatváranie a otváranie predajní, pobočiek, vypovedanie a podpisovanie zmlúv s predajcami, vedenie alebo ukončenie reklamných kampaní atď.

Ak sa pokúsite zvýrazniť hlavné čísla (fakty) a škrty (argumenty merania), s ktorými analytik manipuluje, snažiac sa rozšíriť alebo optimalizovať podnikanie spoločnosti, dostanete tabuľku vhodnú na analýzu predaja ako akúsi šablónu, ktorá si vyžaduje vhodnú úpravu. každý konkrétny podnik.

Čas. Spravidla ide o niekoľko období: rok, štvrťrok, mesiac, desaťročie, týždeň, deň. Mnoho nástrojov OLAP automaticky vypočítava vyššie obdobia z dátumu a vypočítava pre ne súčty.

Kategória produktu. Kategórií môže byť niekoľko, líšia sa pre každý typ podnikania: Trieda, Model, Typ balenia atď. Ak sa predáva iba jeden produkt alebo je sortiment veľmi malý, kategória nie je potrebná.

Produkt. Niekedy sa používa názov produktu (alebo služby), jeho kód alebo článok. V prípadoch, keď je sortiment veľmi rozsiahly (a niektoré podniky majú v cenníku desiatky tisíc položiek), nemusí sa prvotná analýza pre všetky druhy tovaru vykonať, ale zovšeobecniť na niektoré dohodnuté kategórie.

región. V závislosti od globálnej povahy podnikania môžete znamenať kontinent, skupinu krajín, krajinu, územie, mesto, okres, ulicu, časť ulice. Samozrejme, ak existuje len jeden vývod, potom tento rozmer chýba.

Predavač. Toto meranie závisí aj od štruktúry a rozsahu podnikania. Môže to byť: pobočka, predajňa, predajca, manažér predaja. V niektorých prípadoch nie je meranie, napríklad keď predajca neovplyvňuje objemy predaja, existuje len jedna predajňa atď.

kupujúci. V niektorých prípadoch, ako napríklad v maloobchode, je zákazník neosobný a neexistuje žiadne meranie, v iných prípadoch sú informácie o zákazníkovi prítomné a dôležité pre predaj. Táto dimenzia môže obsahovať meno spoločnosti-kupujúceho alebo mnoho zoskupení a charakteristík zákazníkov: Priemysel, Skupina podnikov, Vlastník atď.. Analýza štruktúry predaja na identifikáciu najdôležitejších komponentov v kontexte záujmu. Na tento účel je vhodné použiť napríklad diagram typu "Pie" v zložitých prípadoch, keď sa skúmajú 3 rozmery naraz - "Stĺpce". Napríklad v obchode "Computer Technology" za štvrťrok predaj počítačov dosiahol 100 000 USD, fotografické vybavenie - 10 000 USD, spotrebný materiál - 4 500 USD. Záver: obrat obchodu závisí vo veľkej miere od predaja počítačov (v skutočnosti možno spotrebné materiály potrebné na predaj počítačov, ale toto je analýza vnútorných závislostí).

Dynamická analýza ( regresná analýza- identifikácia trendov). Identifikácia trendov, sezónne výkyvy. Vizuálne je dynamika zobrazená grafom typu "Line". Napríklad predaj produktov Intelu v priebehu roka klesol, zatiaľ čo tržby Microsoftu rástli. Možno sa zlepšila pohoda bežného zákazníka, alebo sa zmenil imidž obchodu a s ním aj zloženie zákazníkov. Rozsah je potrebné upraviť. Ďalší príklad: na 3 roky v zime sa znižuje predaj videokamier.

Analýza závislosti(korelačná analýza). Porovnanie objemov predaja rôzneho tovaru v čase na identifikáciu požadovaného sortimentu – „košíkov“. Na tento účel je tiež vhodné použiť graf typu "Line". Napríklad pri vyraďovaní tlačiarní zo sortimentu počas prvých dvoch mesiacov bol zistený pokles predaja práškových náplní.

OLAP (OnLine Analytical Processing) nie je názov konkrétneho produktu, ale celej online technológie analytického spracovania, ktorá zahŕňa analýzu údajov a reportovanie. Používateľ má k dispozícii viacrozmernú tabuľku, ktorá automaticky sumarizuje údaje v rôznych sekciách a umožňuje rýchlu správu výpočtov a formy zostavy.

Hoci sa v niektorých publikáciách analytické spracovanie nazýva online aj interaktívne, prídavné meno „online“ najpresnejšie odráža význam technológie OLAP. Vývoj manažérskych manažérskych rozhodnutí patrí do kategórie oblastí, ktoré sú najviac falošne prístupné automatizácii. Dnes je však možnosť asistovať manažérovi pri rozvoji rozhodnutí a hlavne výrazne urýchliť proces vypracovávania rozhodnutí, ich výberu a prijímania.

Systémy na podporu rozhodovania majú zvyčajne prostriedky na poskytovanie súhrnných údajov pre rôzne vzorky z počiatočného súboru používateľovi vo forme vhodnej na vnímanie a analýzu. Spravidla také agregované funkcie tvoria multidimenzionálny súbor údajov, často nazývaný hyperkocka alebo metakocka, ktorého osi obsahujú parametre a bunky obsahujú agregované údaje, ktoré od nich závisia - a takéto údaje môžu byť uložené aj v relačných tabuľkách, ale v tomto prípade hovoríme o logickom organizáciu údajov, a nie fyzickú realizáciu ich ukladania.

Pozdĺž každej osi môžu byť údaje usporiadané do hierarchie reprezentujúcej rôzne úrovne detailov.

Podľa dimenzií v multidimenzionálnom modeli sa vyčleňujú faktory, ktoré ovplyvňujú činnosť podniku (napríklad: čas, produkty, pobočky spoločnosti atď.). Výsledná kocka OLAP je potom naplnená ukazovateľmi aktivity podniku (ceny, tržby, plán, zisky, peňažný tok atď.). Je potrebné poznamenať, že na rozdiel od geometrickej kocky nemusia mať steny kocky OLAP rovnakú veľkosť. Toto vyplnenie je možné vykonať ako pri skutočných údajoch operačné systémy a predpovedané na základe historických údajov. Dimenzie hyperkocky môžu byť zložité, hierarchické a možno medzi nimi vytvoriť vzťahy. Počas analýzy môže užívateľ meniť uhol pohľadu na dáta (tzv. operácia zmeny logického pohľadu), čím si dáta prezerá v rôznych sekciách a rieši špecifické problémy. Na kockách je možné vykonávať rôzne operácie, vrátane predpovedania a podmieneného plánovania (analýza čo ak).

Vďaka tomuto dátovému modelu môžu používatelia formulovať zložité dotazy, generovať zostavy a prijímať podmnožiny údajov. Operatívne analytické spracovanie môže výrazne zjednodušiť a urýchliť proces prípravy a rozhodovania riadiacich pracovníkov. Online analytické spracovanie slúži na premenu údajov na informácie. Zásadne sa líši od tradičného procesu podpory rozhodovania, ktorý je najčastejšie založený na zvážení štruktúrovaných správ.


Technológia OLAP sa vzťahuje na typ intelektuálnej analýzy a zahŕňa 12 princípov:

1. Konceptuálna viacrozmerná reprezentácia. Používateľ-analytik vidí svet podniku ako multidimenzionálny a model OLAP musí byť vo svojom jadre multidimenzionálny.

2. Transparentnosť. Architektúra systému OLAP by mala byť otvorená, aby umožnila užívateľovi, nech je kdekoľvek, komunikovať pomocou analytického nástroja – klienta – so serverom.

3. Dostupnosť. Používateľ OLAP analytik musí byť schopný vykonávať analýzu založenú na spoločnej koncepčnej schéme obsahujúcej celopodnikové údaje v relačnej databáze, ako aj údaje zo starších databáz, na spoločných metódach prístupu a na spoločnom analytickom modeli. Systém OLAP by mal pristupovať iba k údajom, ktoré sú skutočne potrebné, a nemal by uplatňovať všeobecný princíp „kuchynského lievika“, ktorý znamená zbytočné vstupy.

4. Konzistentný výkon pri tvorbe správ. So zvýšením počtu dimenzií alebo veľkosti databázy by používateľ analytik nemal zaznamenať výrazný pokles výkonu.

5. Architektúra klient-server. Väčšina údajov, ktoré je dnes potrebné podrobiť online analytickému spracovaniu, sa nachádza na sálových počítačoch s prístupom k užívateľským pracovným staniciam cez LAN. To znamená, že produkty OLAP musia byť schopné pracovať v prostredí klient-server.

6. Všeobecná mnohorozmernosť. Každá dimenzia by sa mala uplatňovať bez ohľadu na jej štruktúru a prevádzkové možnosti. Základné dátové štruktúry, vzorce a formáty vykazovania by nemali byť zaujaté voči žiadnej jednej dimenzii.

7. Dynamické riadenie riedkych matíc. Fyzický dizajn nástroja OLAP musí byť plne prispôsobiteľný špecifickému analytickému modelu, aby bolo možné optimálne spravovať riedke matice. Zriedkavosť (meraná ako percento prázdnych buniek ku všetkým možným bunkám) je jednou z charakteristík šírenia údajov.

8. Podpora viacerých používateľov. Nástroj OLAP musí poskytovať možnosť zdieľania dotazov a rozširovania viacerých používateľov analytikov pri zachovaní integrity a bezpečnosti.

9. Neobmedzené krížové operácie. Rôzne operácie môžu vzhľadom na svoju hierarchickú povahu reprezentovať závislé vzťahy v modeli OLAP, to znamená, že sú medzifunkčné. Ich vykonanie by nemalo vyžadovať, aby analytický používateľ predefinoval tieto výpočty a operácie.

10. Intuitívna manipulácia s údajmi. Pohľad používateľa analytika na dimenzie definované v analytickom modeli musí obsahovať všetky potrebné informácie na vykonávanie akcií na modeli OLAP, t.j. nemali by vyžadovať použitie systému menu alebo iné operácie s viacerými používateľskými rozhraniami.

11. Flexibilné možnosti prehľadov. Nástroje na podávanie správ by mali byť syntetizované údaje alebo informácie vyplývajúce z dátového modelu v akejkoľvek možnej orientácii. To znamená, že riadky, stĺpce alebo stránky zostavy musia súčasne zobrazovať viacero dimenzií modelu OLAP s možnosťou zobrazenia ľubovoľnej podmnožiny prvkov (hodnôt) obsiahnutých v dimenzii a v ľubovoľnom poradí.

12. Neobmedzený rozmer a počet úrovní agregácie. Štúdia o možnom počte potrebných meraní potrebných v analytickom modeli ukázala, že až 19 meraní môže byť súčasne použitým používateľom analytika. To vedie k odporúčaniu o počte dimenzií podporovaných systémom OLAP. Okrem toho by každý zo spoločných rozmerov nemal byť obmedzený počtom úrovní agregácie definovaných užívateľom-analytikom.

Ako špecializované OLAP systémy v súčasnosti ponúkané na trhu môžete špecifikovať CalliGraph, Business Intelligence.

Na riešenie jednoduchých úloh analýzy dát je možné použiť rozpočtové riešenie - kancelárske aplikácie Microsoft Excel a Access, ktoré obsahujú elementárne nástroje technológie OLAP, ktoré umožňujú vytvárať kontingenčné tabuľky a na ich základe zostavovať rôzne zostavy.