Google Rader

Mi ez?

Comfort zone = boredom zone.

Bővebben itt.

Friss topikok

Linkblog

Fact Tables vs Pivot Tables

2008.11.30. 21:15 | Balázsi György | Szólj hozzá!

Fact tables provide the (usually) additive values that act as independent variables by which dimensional attributes are analyzed. Fact tables are often defined by their grain. The grain of a fact table represents the most atomic level by which the facts may be defined. The grain of a SALES fact table might be stated as "Sales volume by Day by Product by Store". Each record in this fact table is therefore uniquely defined by a day, product and store.

Fogalmam sincs, hogy hívják magyarul, nevezzük mondjuk faktum táblának.

A faktum tábla azokat az input adatokat tartalmazza, amelyekből a pivot táblát mint outputot el fogjuk készíteni.

Legalább olyan részletesnek kell lennie (granularity), amilyen részletes pivot táblát szeretnénk készíteni belőle. Lehet részletesebb is, mivel a pivot táblában lehet csoportosítani az adatokat. De ha a faktum tábla aggregált adatokat tartalmaz, a felbontott adatokat a pivot táblával - of course - már nem fogjuk tudni visszanyerni.

Fontos, hogy a faktum tábla egyetlen olyan oszlopot tartalmazhat, amelyben a számszerű összesítéshez majd használni kívánt adatok vannak. Ellenkező esetben a sorok nem lennének független információegységek.

A faktum táblában egy-egy metaadat akár nagyon szokszor is szerepelhet. Egyészen pontosan annyiszor, ahányszor a többi dimenzió metaadatait egymás közt variálni lehet.

WYSIWYG tábla vs faktum + pivot tábla

A faktumtáblák tipikusan egy adattárházból, vagy valamilyen riportoló alkalmazásból származnak.

De célszerű bármilyen, táblázatos formában megjeleníteni kívánt adatot faktum tábla formájában rögzíteni, és pivot tábla formájában prezentálni.

Addig, amíg az ember ezt nem szokja meg, intuícióellenesnek tűnik.

Nézzük, mi az alapja ennek a látszatnak:

Ha egy kétdimenziós táblázatot szeretnék prezentálni, és rögtön az output formátumot akarom kitölteni a WYSIWYG elve alapján, ki kell töltenem összesen 2 (a két dimenzió neve) + m + n (az oszlop- és sorfejlécek) + m*n (az adatok) db cellát.

Ezzel szemben ha ugyanezt az adattartalmat faktum tábla formájában akarom rögzíteni, akkor az oszlop- és sorfejlécek helyett (m+n db cella) a két dimenziónak megfelelő két oszlopban egyenként m*n db cellát kell kitöltenem, ráadásul ügyelnem kell arra, hogy a két dimenzió lehetséges értékeit úgy párosítsam össze, hogy az összes lehetséges variációt kiadják.

Ez tényleg úgy néz ki, mintha a faktum táblával feleslegesen sokat kellene dolgozni.

Viszont:

a) Ha nem 2, hanem több dimenzióban akarom ábrázolni az adatokat, a prezentálni kívánt táblázat layoutjának WYSIWYG megtervezése már korántsem triviális feladat. A faktum tábla layoutját viszont nem kell tervezni, a pivot tábla layoutját pedig egyszerű drag and drop módszerrel lehet kialakítani.

b) Abban az esetben, ha a prezentálni kívánt táblázat layoutja változhat, vagy a nyers adatok ábrázolásán túl bármilyen aggregációt vagy elemzést akarok végezni, a pivot táblában egyszerűen csak a nézetet kell változtatnom. Míg a táblázat WYSIWYG ábrázolásakor minden módosítást, aggregálást vagy számítást kézzel kell elvégezni.

Bevételi és sales riportokban gyakran előfordul pl, hogy az aggregált – mondjuk éves – adatokat külön oszlopban ábrázolják, és mondjuk az Excel outlining funkciója segítségével a havi adatokat összecsukhatóvá teszik. Ami ok abban az esetben, ha az éves adatokat szeretném egymás mellett látni. De mi van akkor, ha mondjuk 2 év havi adatait szeretném folyamatában elemezni, vagy akár grafikonon ábrázolni, az éves totálok nélkül?

Macerás, ha a WYSiWYG táblával dolgozom, de pofonegyszerű, ha a faktum tábla - pivot tábla kettőssel.

 

A bejegyzés trackback címe:

https://outofthebox.blog.hu/api/trackback/id/tr27796876

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Nincsenek hozzászólások.
süti beállítások módosítása