OLAP kostka
OLAP krychle (online analytical processing) je způsob organizace dat, který rozšiřuje dvojrozměrně tabulkové uspořádání tak, že každá datová dimenze je uložena v jedné ose kostky. Tím překonává některá omezení relačních databází.
Úvod
Uspořádání dat do vektorů kostek umožňuje k nim zpětně přistupovat z různých hledisek (dimenzí) stejným způsobem. Odpadá tím na výkonnost systému náročné spojování mnoha tabulek RDBMS. Nicméně fyzické ukládání dat do kostek neumožňuje rychlou editaci, v takovém případě je třeba přepracovat celou kostku. Kostka je tvořena hodnotami, které jsou kategorizovány do dimenzí. Struktura je implementována relačními tabulkami ve hvězdicovém schématu či schématu sněhové vločky. Jedná se typicky o rodič-potomek (parent-child) strukturu, kde rodičovské prvky reprezentují konsolidaci potomků a zároveň ony samy mohou být agregovány do svých rodičovských prvků.[1]
Definice
V terminologii relačních databází OLAP kostka reprezentuje projekci vztahu RDBMS funkcí
- w : (X,Y,Z) → WXYZ
X, Y, Z - dimenze kostky, W - hodnota kostky
K elementům kostky lze přistupovat i za použití podmnožiny indexů:
- w : (X,Y) → W = {WZ1, WZ2, …, WZN}
Základní operace s datovými kostkami
Pro analytické potřeby se provádí následující operace s datovými kostkami, které mají za účel zpracování a projekci dat tak, aby usnadnily jejich pochopení.
- Krájení kostky: omezení jedné nebo více dimenzí na podmnožinu o jednom prvku
- Kostkování: omezení jedné nebo více dimenzí na podmnožinu o dvou a více prvcích
- Roll up a drill down: jedná se o navigaci datovou hierarchií směrem nahoru a dolů
- Pivotování: otáčení kostky za účelem získání jiné perspektivy na vztahy dat
- Agregace: Konsolidace podle vztahů určených vzorci
Příklady
Kostky mohou být používány například pro analýzu podnikových dat jako prodeje, skladových zásob a financí. Mezi dimenze, které mohou být důležité patří například čas, obchod, prodávající a zboží. Proto může velmi snadno odpovědět na následující otázky:
- Kolik kávy bylo prodáno minulý týden v prodejně v Plzni?
- Kolik kávy zbylo v určitém skladě?
- Který prodejce prodal nejvíce kávy?
- Která odvětví učinila většinu prodejů v loňském roce?
K sestavení takových reportů pomocí RDBMS by bylo nutné spojit několik tabulek (jednu pro každou dimenzi), s pomocí datové kostky je možno takovéto reporty postavit a vyplnit mnohem rychleji.[2]
Související články
Reference
- OLAP and OLAP Server Definitions [online]. The OLAP Council, 1995 [cit. 2008-03-18]. Dostupné online. (anglicky)
- Hari Mailvaganam. Introduction to OLAP - Slice, Dice and Drill [online]. DWreview, 2007 [cit. 2008-03-05]. Dostupné v archivu pořízeném dne 2013-07-06. (anglicky)