Základní informace – o co se jedná a k čemu to slouží
• založené na relačních databází • transakční systémy, které jsou určeny pro pořizování a ukládání dat v reálném čase (ERP, účetní, ekonomické a další podnikové systémy) proto se OLTP systémy, ve vztahu k OLAP systémům, chápou jako primární, zdrojové nebo produkční v běžném provozu probíhají desítky až statisíce transakcí za minutu (INSERT, UPDATE a DELETE. Obvykle mnoha uživateli zároveň) systémy jsou zatěžovány kontinuálně a jsou optimalizovány zejména na sběr dat a zobrazování jednotlivých dat • OLTP systémy obsahují vysoké množství dat (GB, TB, PT) a provádění analýz nad těmito daty kolikrát znamená neúnosné zatížení celého systému, které má za následek prodloužení času odezvy respektive nedostupnost OLTP systémů pro jejich primární určení (pořizování, ukládání a zobrazování dat) OLTP systémy nejsou vhodné pro analýzy (i přesto, že je možné nad OLTP systémy vybudovat analytické aplikace) nejen proto byly k analytickým účelům vyvinuty OLAP systémy ©CZM 2011
-1-
• informační technologie založená na koncepci multidimenzionálních databází
hlavním principem je několikadimenzionální tabulka (tzv. datová kostka) základní vlastností OLAP je tedy schopnost uživatelů analyzovat data z jakéhokoliv pohledu (tzv. multidimenzionalita), který si přejí a tudíž nejsou nuceni spoléhat na pohledy, které vytvořil někdo jiný (tvorba Adhoc uživatelských sestav koncovými uživateli) • OLAP systémy jsou primárně určeny pro analýzu velkého množství údajů (podpora dotazování)
• OLAP systémy v drtivé většině aktualizují svá data periodicky (nejběžněji v denních a měsíčních intervalech. Lze i aktualizace dat v reálném čase, avšak jedná se o výjimečné případy) • OLAP systémy využívají primární data vytvořená v OLTP systémech • www.youtube.com/watch?v=2ryG3Jy6eIY&feature=related ©CZM 2011
-2-
• stejně jako jsou v relačních databázích data ukládána v tabulkách, v OLAP databázích se k tomuto účelu používají datové kostky • datové kostky jsou tedy vícerozměrným (vícedimenzionálním) rozšířením databázových tabulek (2-dimenzionální, 3-dimenzionální a více dimenzionální datové kostky. Počet dimenzí může být teoreticky nekonečně mnoho, vždy však záleží na konkrétní implementaci) • Důležité pojmy: viz. www.youtube.com/watch?v=qkJOace9FZg&feature=related dimenze datové kostky elementy dimenze hierarchie dimenzí multidimenzionalita řídkost dat datové kostky ©CZM 2011
-3-
- 2-dimenzionální dat. kostka může být například list v MS Excel (dimenzemi jsou sloupce a řádky) …. Viz. „jedna tabulka“ na obrázku níže kde ve sloupcích je dimenze geografického umístění prodejen a v řádcích je dimenze produktů - 3-dimenzionální dat. kostka může být například soubor v MS Excel (dimenzemi jsou sloupce, řádky a listy) … Viz. obrázek níže kde ve sloupcích je dimenze geografického umístění prodejen, v řádcích je dimenze produktů a v listech je dimenze času
Jelikož je nejpohodlnější se na vše dívat dvourozměrně (sloupce a řádky), tak musíme využít tzv. řezy, které nám ulehčují pohled na další dimenze datové kostky ©CZM 2011
-4-
Datová kostka složená z 5 dimenzí: 1) Dimenze výrobku 2) Dimenze verze výpočtu 3) Dimenze požadované doby výpočtu 4) Dimenze nákladů 5) Dimenze hodnot Příklad jednoho možného zobrazení vícedimenzionální datové kostky v technologii IBM Cognos TM1
©CZM 2011
-5-
• dimenze reprezentuje určitou kategorii pro analýzu dat (například dimenze času, dimenze geografického umístění poboček, … )
• dimenze = soubor souvisejících objektů, nazývaných elementy dimenze • Elementy dimenze: o typickými elementy v dimenzi výrobek může být například název výrobku, velikost výrobku, prodejní cena výrobku, náklady na výrobu, atd.
©CZM 2011
-6-
• Elementy dimenze mohou být uspořádány v hierarchické struktuře, tzn. že se rozdělují na skupiny elementů, podskupiny až na jednotlivé elementy • v dimenzi je možné vytvořit více hierarchií • umožnění uživateli pohybovat se pružně po požadovaných úrovních agregace, aniž by bylo nutné vždy znovu požadované agregace počítat tento princip se označuje: Drill-down - zpřístupnění dat od nejvyšší úrovně agregace až po nejnižší úroveň (např. v časové dimenzi – rozpad od dat za celý rok až po data za jednotlivé dny) Drill-up - zpřístupnění dat od nejnižší úrovně agregace až po nejvyšší úroveň (např. v časové dimenzi – od data za jednotlivé dny až po data za celý rok)
©CZM 2011
-7-
Příklady hierarchické struktury dimenze: • geografické umístění prodejen: o
EU • •
•
Praha Brno Berlin Stuttgart
dimenze času: o
©CZM 2011
CZ DE
rok •
pololetí kvartál měsíc týden
-8-
©CZM 2011
-9-
• multidimensionální uložení dat v datové kostce umožňuje uživateli pružně realizovat různé pohledy (řezy) na data v datové kostce (analýza údajů podle určitých kritérií) tj. možnost pohlížet na realitu z několika možných úhlů (jiné pohledy na data mohou změnit celkový pohled nad daným problém)
A - Analýza údajů podle geografických kritérií
B - Analýza údajů podle produktu
C - Analýza údajů podle časových kritérií
Řezy kostkou podle časové, regionální a produktové dimenze
©CZM 2011
- 10 -
Příklad změny pohledu jednoduchou záměnou dimenze času za dimenzi umístění prodejny. Přechod z analýzy podle časových kritérií na analýzu podle geografických kritérií.
©CZM 2011
- 11 -
• s narůstajícím počtem dimenzí kostky (se zvětšující se kostkou) je mnoho buněk (představujících specifické kombinace atributů) prázdných (viz. níže uvedený obrázek + popis)
neefektivní využití kapacity uložiště • není vhodné za každou cenu vytvářet jednu kostku o vysokém počtu dimenzí, ale spíše více kostek o menším počtu dimenzí
©CZM 2011
Popis: Jednotlivé produkty v určitém čase nejsou prodávány ve všech prodejnách (např. produkt je určen jen pro určitý trh a nelze ho beze změn prodávat na jiném trhu). Tudíž vzniká mnoho buněk prázdných - 12 - (z určitého důvodu je nelze vyplnit daty)
Výhody + Rychlý komplexní přístup k velkému objemu údajů + Možnost komplexních analýz
+ Silné schopnosti pro modelování a prognózy
Nevýhody - Vyšší nároky na kapacitu uložiště
- Flexibilita
©CZM 2011
Rozšiřování datových kostek je obtížné
Vhodné spíše tam, kde jsou věci statického charakteru
Pro věci dynamického charakteru je vhodnější spíše relační databáze
Při spojování více kostek se objevuje problém podle čeho kostky spojit
- 13 -
[1] NOVOTNÝ, Ota; POUR, Jan; SLÁNSKÝ, David. Business Intelliegence : Jak využít bohatství ve vašich datech. Praha : Grada Publishing, a.s., 2005. 256 s. ISBN 80-247-1094-3. [2] LACKO, Luboslav. Databáze: datové sklady, OLAP a dolování dat s příklady v Microsoft SQL Serveru a Oracle . Brno : Computer Press, a.s., 2003. 2003 s. ISBN 80-7226-969-0. [3] Computer Science 831: Knowledge Discovery in Databases [online]. 2007 [cit. 2011-07-25]. Introduction to Data Cubes. Dostupné z WWW:
. [4] VLÁŠKOVÁ, Markéta. Návrh hybridního úložiště dat [online]. Plzeň, 2006. 65 s. Diplomová práce. Západočeská univerzita v Plzni. Dostupné z WWW: . ©CZM 2011
- 14 -