Documente Academic
Documente Profesional
Documente Cultură
Definitie, caracteristici
OLAP este o tehnologie de agregare a datelor stocate in depozite ntr-o abordare
multidimensional care asigur acces rapid la informaiile necesare analitilor, managerilor i
directorilor ntr-o manier consistent, interactiv i foarte flexibil. OLAP i depozitele de date
se completeaz reciproc, OLAP transformnd volumul imens de date stocate i gestionate n
depozite n informaii utile procesului de decizie.
Tehnologia OLAP nu este un concept nou dar numele este relativ recent fiind introdus n
1993 de ctre E. F. Codd, inventatorul modelului relaiona1 ntr-un articol ntitulat: "Punerea la
dispoziia analitilor a unui instrument de procesare analitic on-line: un mandat pentru
tehnologiile relaionale". n acel articol, autorul a prezentat 12 reguli care defineau
caracteristicile unei aplicatii OLAP, pe care ulterior le-a restrns la 5 reguli grupate ntr-un test
care se numete FASMI (Fast Analysis Shared Multidimensional Information):
Fast - rapiditate (capacitatea de a livra informaiile n timp util de ordinul
secundelor);
Analysis - analiz (capacitatea de a efectua analize numerice i statistice prin
aplicaii predefinite sau create ad-hoc de ctre utilizator;
Shared - partajat (utilizat n regim concurent de mai muli utilizatori, fapt ce
impune asigurarea securitii i confidenialitii datelor)
Multidimensional - caracteristica esenial a tehnologiei OLAP;
Information - acces la orice date i informaii relevante pentru analiz, oriunde s-ar
gsi i n orice volum.
Tehnici1e utilizate de OLAP cuprind de la simpla navigaie i selecie a datelor pn la
analize complexe incluznd modele i serii temporale. Aplicaiile construite cu tehnologia
OLAP asigur analiza rapid a informaiei multidimensionale distribuit n locaii multiple i
accesibil n acelai timp unui numr mare de utilizatori. OLAP utilizeaz n acest scop baze de
date multidimensionale, prin contrast cu bazele de date relaionale care sunt bidimensionale prin
definiie. O facilitate extrem de puternic oferit de OLAP este posibilitatea de a construi
scenarii i n consecin, posibilitatea de a rspunde la ntrebri de tipul "ce ar fi dac?" n timp
ce depozitele de date pot oferi rspunsuri numai la ntrebri de tipul "Cine? ", "Ce?, Unde?,
" Cnd? ".
Analiza datelor, de tip numeric sau statistic, poate fi predefinit de creatorul aplicaiei dar
i de utilizatorul final n cadrul unor interogri ad-hoc. OLAP asigur suport acestei analize prin
capacitatea sa de a efectua calcule intensive.
Principalele caracteristici ale OLAP sunt:
Perspectiv (view) multidimensional asupra datelor;
Capacitate de calcul intensiv;
Orientare n timp (time intelligence).
Perspectiva (view) multidimensional asupra datelor se refer la capacitatea de a
integra mai multe aspecte ale activitii ntreprinderii privite din diferite perspective: timp,
locaie, produs, bani, persoane, etc. Fiecare dimensiune poate avea mai multe nivele:
dimensiunea temporal se poate divide n ani, luni, trimestre, sezoane, etc, dimensiunea
geografic n emisfere, continente, ri, regiuni, orae, etc. Produsul, privit ca o dimensiune,
poate avea subdimensiuni de genul: categorie, clas, fel, etc. Conceptul "dimensiune" este
utilizat n sensul de aspect, dimensiunile fiind complet independente i avnd ca uniti de
msur toate valorile ntlnite n dimensiunea respectiv. Aceste uniti de msur sunt posibile
criterii de agregare a datelor, iar nivelele unei dimensiuni formeaz o ierarhie care de asemenea
ofer criterii de agregare a datelor. Perspectivele multidimensionale asupra datelor sunt numite
hipercuburi de
date, prin extinderea noiunii de cub
tridimensional
la cub n-dimensional sau hipercub.
mar
ar
apr
P3
mai
ar
P2
C1
C2
C3
P1
SC Neptun SA
Constana
25 ian 2006
2007
august
18
2079
Date de sintez referitoare la cantitatea comandat din fiecare produs stocate n depozitul
de date n vederea analizei produselor:
Denumire
Anul
cafea
2007
Luna
Total cantitate
Unitate_msur
Cost marf
Pre mediu
august
23000
kg
12
11
Transilvania 2007
Muntenia 2007
Oltenia 2007
Moldova 2007
Dobrogea 2007
Banat Criana 2007
Maramure 2007
August 2007
3400033478
48076
164328
45980
76009
20300
2100
5603
Dac arborele este neregulat, un membru de tipul "alte" poate adugat pentru a uniformiza
Europa
Anglia
Londra
HP ltd
ierarhia; altfel, centralizrile pe nivelul respectiv nu vor reprezenta S&M
100%ltddin valoarea
centralizat pe nivelul cel mai de jos.
Manchester
Axel
Comp XXX
Frana
Paris
Lyon
Romnia
Marsilia
Bucureti
Iai
Cluj
America de
Nord
SUA
Japonia
New York
Dallas
Chicago
Toronto
Montreal
New Dehli
Madras
Beijing
Shangai
Tokyo
ara
Ora
Canada
Asia
India
China
Compania
Divizia
Yodine
T&Co
Merlin
Galia
BoudinCo
MMM srl
Cam SA
..
Morita
Seiko
Client
Atributele care definesc ierarhia sunt atribute derivate din atributul ce definete
dimensiunea faptelor msurate, prin raportare la nomenclatoare sau prin clasificri ale valorilor
luate de atributul respectiv. Spre exemplu, clienii se pot clasifica n clieni vechi dac fac
tranzacii cu compania respectiv de mai mult de 3 ani, clieni relativ noi dac au vechimea ntre
3 i 1 an, clieni noi dac sunt sub 1 an i clieni ocazionali dac nu au completat cmpul
Data_intrare n portofoliul de clieni i alte date de referin. Asemenea clasificri conduc la
atribute derivate prin calcul din caracteristicile aflate n nomenclatoare, care vor da natere la un
set de membri calculai ai dimensiunii respective.
De exemplu, pe baza datei calendaristice se pot calcula anul, sptmna, luna, trimestrul,
semestrul, sezonul. Aceti membri calculai nu se pot integra ntr-o singur ierarhie pentru c nu
sunt complet ierarhizabili: o sptmn poate aparine la dou luni succesive iar sezoanele se
stabilesc n funcie de data solstiiilor i echinociilor sau arbitrar (primvar-var, toamniarn).
Semestrul 1
Trimestrul 1
Ianuarie
Februarie
Trimestrul2
Semestrul2
Anu11999
Sptmna 1
Sptmna 2
Sptmna 52
Ziua 1
Ziua 2
..
Ziua 31
Ziua32
Ziua33
Martie
Aprilie
Mai
Iunie
Trimestrul 3
Trimestrul 4
Ziua l
Ziua 2
Ziua 7
Ziua8
.
Ziua365
Nivelele ierarhiilor sunt utilizate ca nivele de agregare a valorilor stocate n tabela de fapte
ca msuri ale activitii. Membrii dimensiunilor sunt utilizai pentru identificarea unei msuri a
activitii stocat n tabela de fapte. Dac un fapt este asociat cu mai multe dimensiuni,
identificarea unic a faptului necesit valori precise pentru fiecare dimensiune, altfel din tabela
de fapte se vor selecta mai multe nregistrri (toate valorile posibile pentru dimensiunile
nespecificate). Pentru prezentarea unei singure msuri pe un set restrns de dimensiuni,
nregistrrile selectate se vor centraliza i prezenta ca un singur fapt, dimensiunile nespecificate
fiind eliminate din prezentare. De exemplu, tabela de fapte prezint volumul vnzrilor pe zi,
client, produs. Dac se dorete volumul vnzrilor pe zi pe fiecare produs, se nsumeaz
vnzrile grupate pe zile i produse, dimensiunea client fiind ignorat.
Modelarea datelor este un pas important n procesul de dezvoltare a unui depozit de date
pentru c permite vizualizarea structurii nainte de a fi construit. Modelul multidimensional hipercubul - este ns dificil de vizualizat n toate dimensiunile i trebuie prezentat desfurat n
seciuni sau proiecii tridimensionale pentru a putea fi neles (seciunea este o felie transversal
din cub, identificat prin coordonatele seciunii, proiecia este o seciune care centralizeaz
datele de pe toate dimensiunile suprimate). De altfel, i vizualizarea on-line se face tot n
seciuni sau proiecii tridimensionale iar datele din celule pot fi prezentate numai n seciuni sau
proiecii transversale bidimensionale (forma clasic a tabelelor pivot). Intuitiv, hipercubul poate
fi imaginat ca un set de tabele pivot grupate pe dimensiunea comun. n mod abuziv, hipercubul
este considerat un set de cuburi tridimensionale distincte. Pot exista i hipercuburi distincte,
chiar dac au dimensiuni comune, dar cu alte msuri.
Pentru modelare, hipercubul se prezint n forma tabelar cu coloane pentru msuri i
rnduri pentru combinaiile de dimensiuni.
Dimensiuni
Luna
Agent Client
Produs
1999
1999
1
1
AAA
AAA
Alexa
Alexa
2001
10
XXX
YETA
Anul
Ciment
Var
Cantitat
e
100
30
Msuri
Valoare Cost
marf
33000
20700
5000
4300
Chelt
transp
500
120
Alte
chelt
234
57
Vopsea
400
132000
780
560
82800
i n plan fizic, hipercubul poate fi stocat ntr-o tabel cu multiple coloane n care sunt
stocate msurile i cu identificatori de rnduri (chei) formai din toate combinaiile posibile de
valori ale dimensiunilor. Utilizarea indecilor pentru acces rapid nu este de prea mare ajutor
ntruct cheia este format din multe caracteristici iar cmpurile de valoare sunt puine i
numerice. Tabela de indeci este aproape la fel de mare ca i tabela iniial. Accesul direct rapid
este asigurat prin tabele bitmap. Bazele de date dedicate datelor modelate ca hipercuburi sunt
bazele de date multidimensionale.
Baze de date multidimensionale
O baz de date multidimensional este format din dou structuri:
Structura datelor - n care sunt stocate msurile activitii preluate din tabela de fapte a
depozitului de date (cantiti, valori, contoare, etc), date care sunt prezentate utilizatorului n
celulele tabelelor pivot.
Cant
Val
Nr_linii_fct
TIMP
Ierarhia
Anotimp
Ierarhia
Calendar
Anul
Ierarhia
Sapte_zile
Semestrul
Sezonul
Trimestrul
Sptmn
Luna
Ziua
Data calendaristic
Fig.9 Ierarhii alternative ale dimensiunii TIMP
Nivelele sunt numerotate de la rdcin (nivelul 0) spre frunze (nivelul maxim). Fiecare
ierarhie are setul ei de nivele chiar dac anumite ramuri sunt comune.
Nivel Ierarhia Calendar Ierarhia Anotimp Ierarhia apte_zile
0
Timp
Timp
Timp
1
Ani
Ani
Sptmna
2
Semestre
Sezoane
Ziua
3
Trimestre
Luni
Data calendaristic
4
Luni
Date calendaristice
5
Date calendaristice
Pe fiecare nivel se stocheaz membrii dimensiunii respective. Rdcina comun reprezint
nivelul de agregare maxim (cu unicul membru implicit all). Exemple de seturi de membri pentru
fiecare nivel:
Subdimensiune
Set de membri
Nr. de membri
Timp
all
1
Anul
1997,1998,1999,2000,2001
5
Semestrul
I, II
2
Trimestrul
1,2,3,4
4
Luna
Ian,feb,mar,apr,... dec
12
Sptmna
1,2,3,....56
56
Ziua
Data calendaristic
7
31
all
1997
I
1
ian
1
31
1999
2000
2001
II
2
feb
1998
rdcin
3
mar
anul
semestrul
trimestrul
oct
nov
dec
1
luna
31
data
Fiecare membru al unei subdimensiuni este un nod n arbore. Nodurile aflate n subordinea
unui singur nod formeaz un set. Fiecare membru n set are un numr de ordine ncepnd cu 0.
Fiecare membru poate avea anumite proprieti asociate. Spre exemplu anumii ani sunt
biseci, anumite zile sunt srbtori legale, etc.
Structura este strict arborescent pentru c fiecare membru al unei dimensiuni are
submembri distinci, chiar dac au aceleai valori. Spre exemplu, fiecare an are setul lui de luni
(ian, feb, mar, ...dec), fiecare sptmn are setul ei de zile (luni, mari, miercuri...). Pentru
identificare, aceti membri vor fi calificai cu numele membrului de pe nivelul precedent cruia i
se subordoneaz: 1999-ian, 2000-ian, 1999-17-luni. Acest gen de dimensiuni care au membri
care se repet se pot crea i ulterior prin combinarea a dou nivele din ierarhie sau chiar din
ierarhii diferite pentru a crea un nou nivel (virtual). De exemplu, n ierarhia dimensiunii client
din figura urmtoare putem combina dimensiunile statut i jude pentru a putea grupa clienii
dup forma de asociere i localitate. Numrul de membri posibili ai noului set va fi egal cu
numrul de combinri ale elementelor celor dou mulimi (41 judee * 5 forme de asociere = 205
de membri pentru noua dimensiune jude-statut).
all
Ierarhia
Forma
Juridic
Ierarhia
Geografie
Zon
Ierarhia
Clasificare
Jude
Statut
Localitate
Categorie
Subcategorie
Client
Fig. 11. Ierarhiile alternative ale dimensiunii CLIENT
A
D
R
E
S
A
1
2
3
timp
lun
anul
ziua
a
1
2 i
1
3
9
0 a
1
9
0 n
7
1
1
1
agent
Nume
echipa
agent
BE
A
A
c c
g
g
h h
1
2
1 2
1
1
1 1
client
zona
E S
s u
t d
Loc
B I
u a
c
i
1
1
1
1
1
produs
Nume
client
C C
l l
1 2
1
1
familie
A
l
i
m
M
e
d
i
c
a
m
1
1
categ
L
a
c
t
a
t
e
F
a
i
n
o
a
s
e
Den
produs
LU
a n
p t
t
e
1
1
all
1997
Masca
I
1
ian
1
2001
feb
3
mar
4
oct
nov
dec
31
31
C3
1
1
2000
1999
II
Tabela bitmap
Adr1
Adr2
Adr3
Adr4
Adr5
Adr6
Adr7
1998
1
1
1
1
1
1
1
1
1
1
1
Adr3,4,6,7
1
1
1
1
1
1
1
1
1
1
1 1 1
1
1
Adr3,4,7 Adr4,6,7
Adr4,5,7
Tabela MSURI
Lista
Adrese
nreg
Adr 4
Adr 7
Adr 18
Adr 54
Adr 112
Adr 189
dimensiuni
Adr1
Adr2
Adr3
Adr4
Adr5
Adr6
Adr7
..
Adr18
.
1
1
Structura metadatelor este de tip ierarhic, fiecare dimensiune fiind stocat ntr-o structur
arborescent cu o singur rdcin (all) i multiple ramuri care pot avea frunze comune (ierarhii
alternative). Fiecare nivel n ierarhie are un nume i un set de membri. Ierarhiile alternative au
de asemenea nume pentru a putea fi distinse ntre ele. Toate ierarhiile au cel puin un nivel
comun, nivelul "frunze", care este cel mai sczut nivel de centralizare.
Structura n care se stocheaz datele este o structur cu acces direct prin tabele bitmap care
sunt exploatate prin mti.
Operaii OLAP asupra hipercubului
Proiectarea hipercubului trebuie s in seama de nivelul de detaliu necesar la analiz,
nivel de detaliu denumit granularitate i care exprim numrul de membri ai unei dimensiuni.
Spre exemplu, dac se dorete analiz la nivel de client, toi clienii societii vor fi membri ai
dimensiunii client, fapt care poate face imposibil reprezentarea lor ntr-o form perceptibil pe
ecran. De regul, acest nivel de detaliu este cerut de managerii de nivel operaional care lucreaz
direct cu un numr mic de clieni printr-un numr mic de ageni. Pentru a vizualiza datele la
aceast granularitate, trebuie realizat o selecie din hipercub pe baza unui criteriu ierarhic care
ar putea fi structura organizaional pe care o conduce managerul respectiv. Dac granularitatea
din start este prea mare (grupe de clieni sau structuri organizatorice de ageni), datele sunt prea
centralizate i nu se poate face o analiz fin, OLAP ajusteaz nivelul de granularitate prin
exploatarea ierarhiilor dimensiunilor efectund comasri i descompuneri ale msurilor prin
procedurile denumite roll-up i drill-down. Aceste proceduri deplaseaz proiecia cubului n sus
i in jos pe nivelele ierarhice ale fiecrei dimensiuni (zoom in; zoom out) efectund de fiecare
data centralizri ale msurilor stocate la cea mai mic granularitate dup criteriile ierarhice
cerute. Sub nivelul de granularitate iniial nu se poate merge, de aceea este important ca
dimensiunile de baz s fie destul de fine sau s se creeze data marts n care hipercuburile s fie
proiectate la nivelul de detaliu cerut de managementul operaional iar pentru managementul
nivelelor superioare, s se construiasc un depozit cu hipercuburi centralizatoare cu granularitate
mai mare. Operaia drill-down ofer mai multe detalii, operaia roll-up ofer date mai sintetice.
Un alt grup de operaii pe care OLAP le poate executa sunt secionarea (slicing) i
defalcarea (dicing). Secionarea este posibilitatea de a selecta pentru vizualizare doar un membru
al unei dimensiuni (un plan din cubul tridimensional). Seciunea respectiv apare ca o tabel
pivot cu valorile dimensiunilor pe laturi i cu menionarea valorii alese pentru dimensiunea
suprimat.
Vnzrile n anul 1999 pe clieni i produse
Aracet
Ciment
Gips
Alexa
Bloon
Bogza
Vox
Yeta
240
350
107
760
Var
Vopsea
270
56
850
Ciment
Ag
1
Ag
n
120
120
Ag
1
150
320
100
160
Gips
Ag
n
100
107
280
Ag
1
Ag
n
Var
Ag
1
170
Vopsea
Ag
n
100
Ag
1
300
Ag
n
56
250
350
250
Dimensiunile unui cub pot fi private, ceea ce nseamn c aparin unui singur cub sau pot
fi utilizate n comun de mai multe cuburi (provenind din depozite cu schema tip constelaie).
Fiecare membru al unei dimensiuni poate avea anumite proprieti asociate care se
stocheaz n atribute specifice ale nivelului ierarhiei. De exemplu, anumite zile din an sunt
srbtori; calitatea respectiv va fi evideniat pentru zilele care o ndeplinesc. Noi membri ai
dimensiunii respective pot fi adugai respectnd anumite reguli, mai ales dac este o
dimensiune comun mai multor cuburi.
Proiectarea structurilor depozitelor de date i cuburilor OLAP este un proces care continu
pe parcursul ntregii viei a aplicaiei, dimensiunile cuburilor fiind strns legate de detaliile
activitii precum clieni, produse, etc. Orice nou client sau nou produs va implica o modificare
de structur.
Domenii de utilizare ale OLAP
Instrumentele OLAP i aplicaiile construite cu aceast tehnologie i gsesc multiple
domenii de utilizare n activitatea ntreprinderilor, de la vnzri i marketing la finane i
producie ca s numim numai cteva. Astfel, departamentele financiar i contabilitate pot folosi
instrumente OLAP pentru construirea bugetelor, analiza performanelor financiare i modelare
financiar; departamentul vnzri poate beneficia de analize complexe ale vnzrilor i de
previziuni; departamentul marketing poate face cercetri i analize de pia, analize ale
campaniilor publicitare, analiza clienilor i a segmentelor de pia. Activitatea de producie
poate fi susinut de aplicaii OLAP de planificare a operaiilor, de asigurare i control a calitii
produselor, de analiz a rebuturilor, de optimizare a raportului cost-performan.
Toi aceti utilizatori poteniali pot extrage prin tehnologia OLAP informaii pertinente,
personalizate, referitoare la domeniul propriu de activitate pentru fundamentarea deciziilor
curente i de perspectiv. Timpul mic de rspuns, critic pentru acest gen de aplicaii, este un
factor important de succes al OLAP, realizat prin tehnici inteligente de optimizare.