Documente Academic
Documente Profesional
Documente Cultură
CUPRINS:
1. CERINELE FUNCIONALE ALE SISTEMELOR OLAP.......................................4
2. ARHITECTURA SISTEMELOR OLAP......................................................................9
3. MODELUL DE DATE MULTIDIMENSIONAL......................................................13
4. OPERAII REALIZATE ASUPRA MODELULUI MULTIDIMENSIONAL............22
5. MODELE DE DATE MULTIDIMENSIONALE UTILIZATE N SISTEMELE OLAP
.....................................................................................................................................25
6. LOCUL TEHNOLOGIEI OLAP N ARHITECTURA DEPOZITULUI DE DATE. 27
sunt optimizate pentru regsiri rapide, analize ad-hoc, calcule flexibile i transformri
ale datelor.
Spre deosebire de sistemul operaional care funcioneaz pe baza unor
proceduri prestabilite (exist o gam relativ limitat de tranzacii operate de o
organizaie) un sistem de analiz on-line (OLAP) ofer suport pentru o varietate de
cerine care nu pot fi prevzute dect ntr-o mic msur.
Sistemele OLAP ajut managerii n urma analizei datelor s-i fundamenteze
deciziile astfel nct s-i comercializeze mai bine produsele, s-i planifice producia
ntr-un mod mai eficient, s controleze costurile, s descopere evoluiile viitoare ale
unor factori. OLAP poate fi utilizat n orice domeniu al afacerilor: analiza vanzrilor
i studii de pia, evoluii ale indicatorilor financiari ai ntreprinderii, ca suport de
decizii: previziuni ale veniturilor i cheltuielilor. Se poate studia volumul vnzrilor
n funcie de produse, arii geografice i timp, etc.
Acces rapid la date - Aplicaiile OLAP necesit un volum mare de date care
trebuie s fie acesate foarte rapid, ceea ce presupune de obicei ca acestea s fie
stocate n structuri separate, optimizate care pot fi accesate far s afecteze
rspunsul din sistem.
Surse de date multiple - Majoritatea aplicaiilor OLAP cer surse de date din
sisteme multiple, incluznd surse externe i aplicaii realizate n medii de
programare diferite. Procesul fuzionrii acestor surse multiple poate fi foarte
complex datorit sistemelor de codificare diferite i calitii diferite a datelor.
Sincronizarea surselor de date - Dac datele dintr-o aplicaie OLAP provin din
mai multe baze de date, este foarte probabil ca acestea s fie modificate la
cicluri diferite. Ca analiza s fie bazat pe date consistente, datele trebuie
ncrcate mpreun n depozitele de date.
acestora.
conceptului, E.F. Codd n 1993 prin intermediul unui set de 12 reguli. Mai trziu, n
1995, setul a fost extins la 18 reguli ce surprind caracteristicile sistemelor OLAP. Voi
prezenta mai jos acest set de reguli, dup cum urmeaz:
A. Caracteristici de baz
Regula 1: O viziune conceptual multidimensional
Viziunea conceptual a modelelor OLAP trebuie s fie multidimensional
bazat pe viziunea sau modelul existent n organizaie.
Regula 2: Manipularea intuitiv a datelor
Sistemele OLAP trebuie s permit operaii intuitive i flexibile de manipulare
a datelor, cum ar fi navigarea penivelurile ierarhiilor (operaii de drill down, drill up,
drill across), analize pe seciuni din date, etc.
Regula 3: Accesibilitate
Sistemele OLAP trebuie s ofere acces la o singur viziune logic a datelor din
organizaie. Sursele de date, n modelul OLAP, trebuie s fie transparente
utilizatorilor.
Regula 4: Surse de date variate
Un sistem OLAP trebuie s fie capabil s lucreze cu date stocate fie n baze de
date multidimensionale (MOLAP) ct i n baze de date relaionale (ROLAP) sau
chiar sisteme hibride (HOLAP).
Regula 5: Modele de analiz OLAP
Sistemele OLAP trebuie s suporte patru modele de analiz: explicativ, direct,
contemplativ i formativ n sensul c un trebuie s permit cel puin realizarea
rapoartelor parametrizate, analize de tip ce se ntmpl dac..?, operaii de tip drilldown/roll-up i slice/dice.
Regula 6: Arhitectura client/server
Orice sistem OLAP ar trebui s fie bazat pe o arhitectur client/server, oferind
accesul utilizatorilor prin intermediul unui client, iar prelucrarea multidimensional s
fie realizat de un server specializat.
Regula 7: Transparen
Accesul la sursele de date eterogene ar trebui s fie transparente pentru
utilizatori, iar analiza datelor s poat fi realizat i prin intermediul diverselor
instrumente client ca: grafice, calcul tabelar, procesoare de text, etc.
Regula 8: Suport multiutilizator
Sistemele OLAP trebuie s asigure acces concurent i distribuit la sursele de
date, fiind asigurate ns integritatea i securitatea acestora.
6
B.Caracteristici speciale
Regula 9: Denormalizarea datelor
Prelucrarea datelor ntr-un mediu OLAP nu trebuie s afecteze sursele externe
din care provin acestea. Procesarea coleciilor mari de date, actualizate periodic
trebuie s fie realizat prin intermediul unor legturi persistente cu sursele externe de
date, pentru a asigura sincronizarea ntre acestea i cubul de date. Deoarece sistemele
OLAP sunt n general separate de sistemele surs, legturile servesc ca funcii de
transformare ce precizeaz modul de transformare a datelor din tabele sau foi de
calcul tabelar n date multidimensionale. Legturile pot descrie relaii structurale,
atributele membrilor sau coninutul cuburilor i pot fi unidirecionale (de citire) sau
bidirecionale (citire/scriere).
Regula 10: Stocarea rezultatelor generate de sistemul OLAP
Datele supuse analizei trebui stocate i prelucrate separat de sursele relaionale
sau de fiierele din care provin datorit diferenelor existente ntre modele i a
cerinelor de procesare.
Regula 11: Manipularea valorilor lips
Termenul de mprtiere a fost utilizat cu semnificaia de valoare lips, valoare
inaplicabil i valoare zero. Primele dou cazuri sunt considerate date invalide
(conceptul de null). Al treilea caz, unde termenul de mprtiere a fost utilizat cu
semnificaia de existen a multor valori zero, este un caz special al modului n care
este stocat un numr mare de valori care se repet, n cazul de fa valoarea zero. Ins
valoarea zero este valid ca orice alt numr. Confuzia a aprut deoarece n aplicaiile
OLAP apar un numr mare de valori zero, precum i volume mari de date lips i
invalide. Tehnicile pentru optimizarea fizic a stocrii unui numr mare de valori
repetate sunt similare i uneori aceleai cu tehnicile pentru optimizarea fizic a
stocrii de volume mari de date lips i invalide. Totui valorile lips i cele invalide
nu sunt date valide. Ele nu pot fi tratate n acelai mod ca orice alt valoare. De aceea,
sunt necesare tehnici speciale pentru aceste cazuri. [MUNT04]
Regula 12: Modul de tratare a valorilor lips
Tratamentul impropriu al valorilor null poate cauza calcule incorecte.
Acurateea calculelor este de o importan crucial pentru analiza oricrui set de date,
indiferent c este sau nu multidimensional. Problema tratrii datelor mprtiate este
una foarte important i este frecvent dezbtut n domeniul bazelor de date. Cele
dou tipuri de date (lips i invalide) trebuie totui s fie tratate individual, deoarece
ele afecteaz calculele n diferite moduri [MUNT04]
C. Modul de prezentare a datelor
Regula 13: Flexibilitatea rapoartelor
Modul de prezentare a datelor supuse analizei trebuie s fie accesibil
utilizatorilor astfel nct acetia s poat aranja cu uurin datele pe diverse
dimensiuni pe axele disponibile.
Regula 14: Performana raportrii
Dimesiunea sau modul de organizare a datelor nu ar trebui s influeneze
performana n raportare. Exist ns doi factori importani care afecteaz performana
raportrii i anume: modul n care sunt realizate calculele (antecalculate sau la
momentul interogrii) i locul unde sunt procesate calculele (client/server). Aceti
factori sunt mai importani dect dimensiunea bazei de date, numrul de dimensiuni
sau complexitatea raportului.
Regula 15: Ajustarea automat a nivelului fizic
Sistemele OLAP ar trebui s-i modifice automat schema fizic a bazei de date
n funcie de tipul modelului logic i de volumul datelor.
D. Controlul dimensiunilor
Regula 16: Dimensionalitate generic
Dimensiunile proiectate trebuie s fie echivalente structural i operaional,
adic s permit ierarhii multiple i toate tipurile de operaii multidimensionale i n
acelai
timp
poate
fi
actualizate
(adugarea/tergerea
unui
membru,
Grafice
Grafice
Rapoarte
Rapoarte
Nivelul
Interfetei cu
utilizatorul
Nivelul
Serverului
OLAP
Server OLAP
Nivelul
Surselor de date
Data
Data
Warehouse
Warehouse
Baze de date
Depozitul de date
Surse externe
Fiiere client - n acest caz, extragerile de date relativ mici sunt stocate local
pe calculatorul client sub form de fiiere (de exemplu foi de calcul) care pot
fi utilizate direct, prelucrate i transformate pentru analiz. n acest caz exist
o serie de limitri cum ar fi: voumul redus de date care poate fi prelucrat,
timpul relative mare de procesare a informaiilor, securitate redus, prelucrri
rudimentare
datorate
inexistenei
unor funcii
puternice
de analiz
multidimensional.
asupra
crora
pot
fi
aplicate
direct
operaiile
datelor,
operaiilor
la
nivel
de
server
multidimensionale nu trebuie neaprat s aib loc unde sunt stocate datele din acest
motiv exist urmtoarele variante:
10
relativ
puternice,
se
pot
efectua
local
unele
operaii
Fiiere
Baza de date
multidimensionale
Cartesis Magnitude
MicroStrategy
Nucleul SQL
4
Brio.Enterprise
BusinessObjects
Cognos PowerPlay
Motorul client
Oracle Personal
Multidimensional
Express
iTM1 Perspectives
Microsoft Excel
5
Oracle Discoverer
Informix MetaCube
7
Motorul server
Multidimensional
SGBDR
8
Crystal Holos (ROLAP
mode)
IBM DB2 OLAP Server
CA EUREKA:Strategy
Longview Khalix
Informix MetaCube
11
6
Comshare FDC
Dimensional Insight
Hyperion Enterprise
Hyperion Pillar
PwC CLIME
9
SAS CFO Vision
Crystal Holos
Comshare Decision
Hyperion Essbase
Gentia
Speedware Media/M
Speedware Media/MR
Microsoft Analysis Services
Pilot Analysis Server
Sagent
Applix iTM1
WhiteLight
Oracle Express (ROLAP
mode)
Oracle Warehouse Builder
Oracle Discoverer
OLAP relaional (ROLAP) (2, 5, 8) din care OLAP hibrid (Hybrid OLAP sau
HOLAP) (5, 8)
12
fapte cu atributele de tip msuri sau metrici, tabelele de tip dimensiune n care
regsim nivele ierarhice, attribute de descriere, etc. Aceste obiecte vor fi prezentate n
continuare.
In cadrul modelului multidimensional se ntlnesc mai multe tipuri obiecte
care prezint o importan deosebit n analiz [KIRE98]:
Dimensiunile reprezint structuri compuse atribute structurate pe diverse
niveluri ierarhice n funcie de care sunt grupate datele. Aceste atribute sunt de obicei
descriptive i sunt folosite ca surs pentru restricii i pentru rndurile din rapoarte.
Sunt considerate tabele secundare datorit dimensiunilor reduse. Consiliul OLAP
definete conceptul de dimensiune ca fiind un atribut structural al unui cub ce
const dintr-o list de membrii, pe care utilizatorii i percepe ca fiind de acelai tip
(de exemplu toate lunile, trimestrele, anii formeaz dimensiunea Timp). Dimensiunile
repreznint un mod foarte concis, intuitiv de organizare i selectare a datelor pentru
explorare i analiz. [OLAP95]. Datele sunt de obicei colectate la nivelul cel mai
detaliat i apoi agregate pe nivelele superioare pentru analiz.
In cadrul dimensiunilor se regsesc i conceptele de ierarhie, nivel, atribut,
concepte care vor fi prezentate n continuare:
Ierarhiile sunt structuri logice utilizate pentru ordonarea nivelelor de
reprezentare a datelor. Sunt utilizate i pentru definirea cilor de navigare n interiorul
datelor. Nivelele ierarhice sunt utilizate de instrumentele de analiz OLAP permind
detalierea gradual a datelor. Tot n definiiile date de Consiliul OLAP se menioneaz
c membrii dimensiunilor pot fi organizai pe baza relaiilor de tip printe-copil,
unde un membru printe reprezint agregarea membrilor copil. Rezultatul este o
ierarhie i relaiile printe-copil sunt relaii ierarhice. [OLAP95]
13
ar
ar
Regiune
Regiune
Nivele
ierarhice
Ierarhia
locaie
Jude
Jude
Ora
Ora
Detaliere
14
dimensiuni. Msurile reprezint valorile centrale care sunt analizate prin cubul de
date. Valoarea msurii este calculat pentru un punct dat prin agregarea datelor
corespondente perechii respective valoare-dimensiune, diferite pentru punctul dat.
Msurile pot fi clasificate dup modalitatea de calcul n msuri de baz care
se regsesc sub forma atributelor din tabelele de fapte i care provin din sursele de
date i msuri derivate (virtuale) care se obin prin combinarea msurilor de baz i
care n tabelele de fapte au precizat formula de calcul prin care se obin.
Msurile pot fi organizate n trei categorii bazate pe tipurile de funcii
agregate utilizate: distributive, algebrice, holistice.
Msurile distributive sunt calculate cu ajutorul unor funcii de agregare
distributive. Presupunem c datele sunt mprite n n seturi. Calcularea funciei pe
fiecare partiie determin o valoare agregat. Dac rezultatul obinut prin aplicarea
funciei asupra a n valori agregate este acelai cu cel obinut prin aplicarea funciei
asupra tuturor datelor fr partiionare, funcia poate fi calculat n manier
distributiv. De exemplu, funcia count( ) poate fi calculat pentru cubul de date
printr-o prim partiionare a cubului ntr-un set de subcuburi, calculnd count( )
pentru fiecare subcub i apoi nsumnd rezultatele obinute pentru fiecare subcub. Din
acest motiv funcia count( ) este o funcie agregat distributiv.
Msuri algebrice - sunt calculate cu ajutorul unor funcii algebrice cu M
argumente (unde M este un ntreg pozitiv), fiecare din ele obinut prin aplicarea unei
funcii agregate distributive. De exemplu, AVG( ) poate fi calculat prin sum()/count()
unde ambele funcii sum( ) i count( ) sunt funcii agregate distributive. n mod
similar se poate demonstra c min( ), max( ) i abaterea standard sunt funcii algebrice
agregate. Msura este algebric dac este obinut prin aplicarea unei funcii algebrice
agregate.
Msuri holistice - sunt calculate cu ajutorul unor funcii holistice. O funcie
agregat este holistic, dac aceasta nu este limitat constant pe spaiul de stocare
cerut de deschiderea subagregrii. n acest caz nu exist o funcie algebric avnd M
argumente (unde M este o constant) care caracterizeaz calculul. Exemple comune
de funcii holistice sunt: median( ), mode ( ), rank( ). O msur holistic este obinut
prin aplicarea unei funcii agregate de tip holistic. Cele mai multe aplicaii necesit
calcularea eficient a msurilor distributive i algebrice. Exist mai multe tehnici
eficiente pentru aceasta, n contrast, poate fi mai dificil de calculat n mod eficient
msuri holistice. Exist totui anumite tehnici eficiente de aproximare a calculului
15
16
17
Dimensiunea TIMP
Atribute ale
Atribute ale
dimensiunii TIMP
dimensiunii TIMP
Dimensiunea LOCATIE
Tabela de fapte
ID TIMPID
LOCATIEID
PRODUSID
CLIENTVol
vnzarilorVol
discount
Dimensiunea PRODUS
Dimensiunea CLIENT
Atribute ale
Atribute ale
dimensiunii PRODUS
dimensiunii PRODUS
19
reduce performana extragerii de date deoarece sunt necesare mai multe jonciuni ntre
tabele la o singur interogare.
Dimensiunea CLIENT
Dimensiunea TIMP
Atribute ale
Atribute ale
dimensiunii TIMP
dimensiunii TIMP
Tabela de fapte
ID TIMPID
REGIUNEID
PRODUSID
CLIENTVol
vnzarilorVol
discount
Dimensiunea PRODUS
Dimensiunea REGIUNE
Atribute ale
Atribute ale
dimensiunii PRODUS
dimensiunii PRODUS
Dimensiunea TIP_PRODUS
Dimensiunea LOCATIE
Atribute ale
Atribute ale
dimensiunii
dimensiunii
TIP_PRODUS
TIP_PRODUS
PRODUS
LOCATIE
TIMP
furnizor F2
furnizor F3
produs
locatie
T1
T2
T3
timp
21
4.
OPERAII
REALIZATE
ASUPRA
MODELULUI
MULTIDIMENSIONAL
Aplicaiile de analiz OLAP trebuie s asigure o utilizatorilor o viziune
multidimensional asupra datelor, indiferent dac modalitatea de stocare este
relaional sau multidimensional. Pentru utilizarea viziunilor multidimensionale nu
este necesar o stocare a datelor n aceasta form. Bazele de date relaionale i cele
multidimensionale folosesc modele asemntoare ceea ce permite o trasformare
uoar a datelor. Prin aplicarea unor operaii specifice asupra modelului
multidimensional utilizatorului i se ofer posibilitatea de a vedea i de a analiza din
perspective multiple datele, de a naviga n cadrul ierarhiilor definite, de a extrage un
subset de date, de a interschimba axele sau dimensiunile pentru a obine o alt
detaliere a datelor. Toate aceste operaii multidimensionale impementate n cadrul
modelului multidimensional sunt prezentate n paragrafele urmtoare.
Navigarea pe nivelele ierarhice (Drill Down i Roll Up) reprezint operaii
de navigare n cadrul ierarhiilor dimensiunilor, prin agregare pe nivelele superioare
sau detaliere pe nivelele inferioare. Orice baz de date multidimensional trebuie s
permit navigarea pe diferite nivele ale ierarhiilor. Aceasta tehnic se numeste roll up
sau drill down, n funcie de direcie, spre vrful sau baza ierarhiei. Acestea sunt
operaii de schimbare a vederii de-a lungul nivelelor unei ierarhii. Prin facilitatea de
drill down, utilizatorii pot naviga pe nivele cu un grad de detaliu mai accentuat. Prin
roll up se pot vizualiza datele la un nivel agregat. Cu toate ca instrumentele OLAP pot
realiza dinamic toate operaiile necesare analizei, pentru a economisi timp i resurse
se prefer uneori pre-calcularea unor valori globale. Aceasta operaie este numit
consolidare (cnd se refer la aspectul conceptual) sau nsumare (din perspectiva
procedural), fie agregare (din perspectiva structural). Aceste agregri se refer la o
anumit msur i se realizeaz dup dimensiunile corespunzatoare acesteia. Pentru
atributele organizate ierarhic, consolidarea se face nivel cu nivel. Aceste operaii
implic de cele mai multe ori doar calcularea unor totaluri, dar exist i excepii n
care se utilizeaz formule sau procedee statistice. Nivelul la care se face nsumarea n
cazul n care sunt implicate ierarhii se numeste granularitate. Procesul de agregare
creaza o redundan n cadrul bazei de date, dar volumul acesteia nu este semnificativ
deoarece scade exponenial cu fiecare nivel de nsumare. Ctigul de performan
obinut la accesarea datelor este deosebit de important n analiz.
22
ZONA
PRODUS
TIMP
ZONA
PRODUS
TIMP
23
ZONA
PRODUS
TIMP
ZONA
PRODUS
TIMP
Figura 4.1.d: Viziunea managerului regional: poate vedea vnzrile ntregii game de
produse n regiunea de care rspunde, pe toat perioada de timp considerat.
ZONA
PRODUS
TIMP
Figura 4.1.e: O viziune ad-hoc: diferite cerine pot duce la selectarea unor anumite
valori ale atributelor. Rezultatul const n subseturi de date i din acest motiv aceste
operaii se mai numesc i data dicing.
24
modele logice ofer concepte ce pot fi nelese de utilizatorii finali dar depind
de tipul de SGBD utilizat. Dintre modelele multidimensionale la nivel logic se
pot considera modelul lui Kimball, cel propus de Li i Wang i cel al lui
Agrawal.
modele fizice ofer concepte legate de modul n care sunt stocate fizic datele
(descrierea datelor pe suport fizic), depinznd de SGBD-ul utilizat.
Tipul de model multidimensional utilizat de diverse tehnologii i produse
software ce implementeaz sistemele OLAP difer att din punct de vedere al SGBDului utilizat ct i din punct de vedere al operaiilor realizate asupra datelor i a
arhitecturii implementate (MOLAP, ROLAP, HOLAP).
26
27
28
[ANDE97]
2.
[BARA03/2]
3.
[CRAB99]
4.
[DEVL97]
5.
[DOBR99]
6.
[EDIS06]
7.
[FUBA03]
8.
[FUBA04]
9.
[HACH98]
10. [HUHA99]
11. [INMO96]
12. [INMO99]
13. [JAJE98]
14. [KIMB96]
15. [KIRE98]
29
16. [LUNG05]
17. [LUSA04]
18. [MUNT04]
19. [OLAP95]
20. [ORA10G]
21. [ORLI90]
22. [ORRO91]
23. [OWP06]
24. [PODE89]
25. [POWE00]
26. [RAPA72]
27. [RYAN99]
28. [THIE91]
29. [THOM02]
30. [TRPA01]
31. [TURB98]
32. [VILA97]
33. [ZADE74]
30