Upload
erik
View
83
Download
1
Embed Size (px)
DESCRIPTION
SQL – OLAP 3. óra. MD szemantikai séma modell. hónap. termék. forgalom. dátum. kategória. bolt. munkahét. Hogyan modellezzük egzaktabb módon?. nincs egységes modell. Cabibbo- Torlone szemantikai modell. A modell elemei: - Dimenzió-sémák - Fogalom-sémák - Adatkocka-sémák - PowerPoint PPT Presentation
Citation preview
SQL – OLAP3. óra
MD szemantikai séma modell
forgalomtermék
kategória
bolt
dátum
hónap
munkahét
Hogyan modellezzük egzaktabb módon?
nincs egységes modell
Cabibbo- Torlone szemantikai modell
A modell elemei:- Dimenzió-sémák- Fogalom-sémák- Adatkocka-sémák- Adatbázis-sémák
Grafikus jelölésrendszert is alkalmaz
Egyszerűsített megközelítés
ER-jellegű leírás
Cabibbo-Torlone modell
Grafikus ábrázolás
dimenzió-szint
változó
tulajdonság
dimenzió hierarchia
tény-dimenzió kapcsolat
többértékű dimenzió
meződimenzió
nem OO alapú
kocka
forgalom
nap
negyedévtermék
gyártó
kategória
dbérték
név
telepnév
dátum termék
munkaügy létszámbetegállomány
Cabibbo-Torlone modell
selejt db
univerzum : Ufogalom-nevek halmaza: C = {c} Utípusok halmaza : T U
dimenzió-sémák halmaza: D = {d,R}
dimenzió-séma: d = (L,<,P) L dimenzió szintek (L C) < : szint hierarchia (< L L) P: tulajdonság (P : L 2(C T) )
dimenzió-bázisok : R r(d) = {h L(d) | h’ : h < h’} R = {r(d)}
Cabibbo-Torlone modell
Cabibbo-Torlone modell
ténytábla-sémák halmaza: F = {f}
ténytábla-séma: f = {(A1:I1,..,An:In) , I0} f CAi C
Ii r(R)I0 2(C T)
adatbázis-séma: DB = (C, T,D{d(L,<,P),R}, F{f(A:I):I0})
OSSZDBSELEJTDB
ERTEKESITES
TELEPHELYcimnev
VEZETOnev
BEOSZTASmegnalapfiz
TERMEKearnev
KATEGORIAnev
DATUMnap
HOhoEV
ev
VAROSmegn
MEGYEmegn
Minta séma felírása
C = {alapfiz, beosztas, ear, ertekesites, ev, cím, osszdb, selejtdb, telephely, termek, …} T = {int, char}
D = {dtermek, ddatum,dtelep, R}
dtermek = { {termek, kategoria}, {kategoria < termek}, {termek (ear,int), termek (nev,char), kategori (nev,char)}
}…
OSSZDBSELEJTDB
ERTEKESITES
TELEPHELYcimnev
VEZETOnev
BEOSZTASmegnalapfiz
TERMEKearnev
KATEGORIAnev
DATUMnap
HOhoEV
ev
VAROSmegn
MEGYEmegn
Minta séma felírása
R = {termek, datum, telephely}
F = {ertekesites}
ertekesites = { (termelte:telephely, termek:termek, datum:datum), {(osszdb,int) (selejtdb,int)} }
DB = {C,T,D,F}
Cabibbo-Torlone modell
Formális felírás előnyei:
- egyértelműbb jelentés- könnyebben feldolgozható - tömörebb leírás- könnyebben konvertálható- alapot adhat további egyértelmű bővítésekre
néhány további modell: - Li-Wang(1996)- Agrawal-Gupta-Sarawagi(1997)-ADAPT-…
MD műveletek
Itt sincs egységes modell
gyakorlatban elterjedt műveletek:- szűrés- aggregálás- szintváltás- összekapcsolás- kibontás…
mintaként a relációs algebra jöhet szóba
telep
termek
dátum
adatkockán értelmezett, adatkockát előállító operátorok
MD műveletek
Szelekcio (slice and dice)
- változó szelekció f(v)(F)A feltételnek eleget tévő cellák maradnak meg, atöbbi cella NULL értékű lesz
- attributum szelekció f(D.a)(F)A feltételnek eleget tévő dimenzió értékek maradnakmeg, a többi kikerül a kockából
selejtdb > osszdb*0.2 (ertekesites)selejtdb > osszdb*0.2 (ertekesites)
MD műveletek
Projekció (slice and dice)
- változó projekció v(F)A kijelölt változók maradnak meg a cellában
- attributum projekció D.a (F)A kijelölt attributumok maradnak meg a dimenziónál
selejtdb (ertekesites)selejtdb ( selejtdb > osszdb*0.2 (ertekesites))
Dimenzió összevonás (roll up)
- attributum szintű D1.D2(F)A megadott dimenzióból a megadott dimenzióba valóáttérés a dimenzió hierarchia mentén
MD műveletek
termek.kategoria (ertekesites)
aggregáltabb adatokra való áttérésmegváltozik a szint a megadott dimenziónáldurvább felbontást kapunk
Dimenzió kibontás (drill down)
- attributum szintű D(F)A megadott attributum részletező dimenziójára valóáttérés a dimenzió hierarchia mentén
MD műveletek
varos (ertekesites)
részletezőbb adatokra való áttérésmegváltozik a szint az aktuális dimenziónálfinomabb felbontást kapunk
MD műveletek
Aggregáció (fold)
- dimenzió szintű D, aggr(F)A megadott dimenziók maradnak meg, az összevontcellák tartalmából az aggr aggregáció alapján képződikaz eredő cella
termek, termelte, sum() (ertekesites)
összesítőbb adatokra való áttérésszűkül a dimenzió készlet, csökken a dimenziószámdurvább felbontást kapunk
MD műveletek
Kiterítés (unfold)
- dimenzió szintű D(F)Behozza a kockába a megadott dimenziót (ha lehet)
termek (ertekesites)
részletezőbb adatokra való áttérésbővül a dimenzió készlet, növekszik a dimenziószámfinomabb felbontást kapunk
Szorzás (join)
- adatkocka szintű F1 F2 A megadott adatkockákból olyan eredő adatkockakészítése, melyre- dimenzióhalmaza a F1 és F2 dimenzió halmazának uniója
- váltózólistája a két lista összevonása, párosa- változó értékei a megfelelő koordinátájú értékek párosa
MD műveletek
ertekesites rendeles
D1
D21
d11 d12d21
d22d23d24
F1
D3
D2a
d31 d32d21
d23d24d26
F2
MD műveletek
b
c
2
5
3
a2
F1 F2
(d11, d23,d31) = (1,null)(d11, d24,d31) = (2,a)(d11, d26,d31) = (null,null)…
Kiterjesztés (extension)
- változó szintű v(F)Új változó hozzáadása, melynek értéke a meglévő változókból származtatható
Pivotálás
- adatkocka szintű D1,D2,aggr (F)Áttérés aggregációk sorozatával kétdimenziósadatkockára
MD műveletek
selejtdb / osszdb (ertekesites) termek,datum (ertekesites)
MD műveletek
Forgatás (rotation)
- dimenzió szintű d1,d2(F)A megadott dimenziók helyet cserélnek egymással
termek,bolt (ertekesites)
részletezés szintje változatlandimenziószám nem változikmás elrendezést biztosít ábrázoláshoz fontos
MD műveletek
Rendezés (ordering)
- dimenzió szintű od,kif(F)A megadott dimenzió előfordulásainak rendezése
o termek, nev (ertekesites)
részletezés szintje változatlandimenziószám nem változikmás elrendezést biztosít ábrázoláshoz fontos
MD műveletek
Mintapéldák
- Az x-nél olcsóbb termékekre vonatkozó adatokTERMEK.ear > x (ERTEKESITES)
- Az x-nél rosszabb selejtarányú eladásra vonatkozó adatok:selejtdb/osszdb > x (ERTEKESITES)
- Adatkocka a selejtarányok nélkül
osszdb (ERTEKESITES) - Az x-nél nagyobb eladások ahol a terméknek csak a neve szerepel
TERMEK.nev (osszdb > x (ERTEKESITES))
MD műveletekMintapéldák
- Értékesítési adatok város szerinti bontásban TELEPHELY.varos (ERTEKESITES)
-Az x-nél rosszabb selejtarányú eladásra vonatkozó adatok megye bontásban: VAROS.megye (TELEPHELY.varos (selejtdb/osszdb > x (ERTEKESITES))) - Áttérés hónap bontásról napi bontásra
HO (C) ahol C = DATUM.ho (ERTEKESITES)
- Értékesítési adatok termék és idő dimenzióban TERMEK, DATUM, Sum (ERTEKESITES)
MD műveletekMintapéldák
- Az x-nél rosszabb selejtarányú eladásra vonatkozó adatok megye és hónap bontásban: MEGYE, HONAP, Sum (DATUM.ho (VAROS.megye (TELEPHELY.varos (selejtdb/osszdb > x (ERTEKESITES)))) - Az értékesítési adatok összevonása egy KOLTSEG (ertek, TELEPHELY,HO) adatkockával: TELEPHELY, HONAP, Sum (DATUM.ho (ERTEKESITES)) KOLTSEG
- Havi költségadatok megjelenítése dollárban TELEPHELY, Sum (ertek/ 225 dollar (KOLTSEG))