Úroveň: mierne pokročilí až pokročilí
Vstupné požiadavky: znalosť technológie OLAP kociek
Cieľ kurzu: Zoznámiť účastníkov so všetkými možnosťami jazyka MDX pre dotazovanie sa na OLAP kocky. Účastníci sa dozvedia, ako fungujú MDX dotazy, aká je ich logika, ako sa naviguje v N-rozmernom priestore, a ako na tom celom založiť pokročilé analýzy. Prejdeme si najčastejšie používané funkcie, konštrukty a techniky. Osobitne sa budeme venovať aj porovnávacej analýze dát v časových obdobiach, či pokročilej agregácii a vylepšovaniu kociek. Na konci kurzu budú účastníci schopní plne využiť analytickú silu OLAP kociek. Kurz je multiplatformový a využiteľný pre všetky OLAP riešenia – Analysis Services, Oracle Essbase, Cognos TM1, SAS, SAP, MicroStrategy či Mondrian. Výuka bude prebiehať na Analysis Services.
Trvanie: 3 dni
Obsah kurzu:
Úvod do jazyka MDX
- Dimenzionálny model
- Jazyk MDX – MultiDimensional Expressions
- Základné časti MDX dotazu
- Vytvorenie jednoduchého MDX dotazu
- MDX poddotazy
Tuple a bunky
- Čo je to tuple
- N-rozmerný priestor a navigácia v ňom
- Priestor kocky
- Prístup k dátam OLAP kocky cez tuple
- Bunky a membri OLAP kocky
- Referencovanie membrov podľa mena a kľúča
- Klauzula WHERE a jej logika
- Práca s čiastočnými tuplami
- Tuple a užívateľské hierarchie
- Skrátené formy zápisu
- Riešenie konfliktov s adresáciou
- Zjednodušovanie dotazov – WITH MEMBER aliasy
Sety
- Čo sú to MDX sety
- Sety v MDX SELECToch
- Vytváranie setov pomocou funkcií – CrossJoin, Members, Distinct, NON EMPTY
- Obmedzovanie setov – Exists, Auto-Exists
- Zjednodušovanie dotazov – WITH SET aliasy
Výrazy – expressions
- Základy MDX výrazov
- MDX operátory
- Vypočítaní membri
- Dynamické výrazy
- Riešenie kontextuálnych konfliktov – nekonečná rekurzia, poradie počítania
- Práca s aktuálne spracovávaným membrom – CurrentMember
- Práca so setmi vo výrazoch
- Práca s dátami v inej kocke – LookupCube
Komplexné sety
- Vytváranie zotriedených setov – Order, Hierarchize
- Zistenie prvých/posledných tuplov zo setu –TopCount, BottomCount
- Funkcie Head, Tail, Item
- Filtrovanie setov – Filter
- Kombinovanie a spájanie setov
- Pokročilé vytváranie setov – Generate, Extract
Agregácia
- Základné agregačné funkcie jazyka MDX
- Funkcia Aggregate
- Výpočet mediánu
- Vytváranie vlastných medzisúčtov
- Spočítavanie tuplov v setoch – INCLUDE/EXCLUDEEMPTY
- Lineárna regresia
- Visual Totals
Navigácia pri výpočtoch s hierarchiami
- Prístup k okolitým membrom v hierarchiách – Parent, Children, Siblings, …
- Výpočet percent hodnoty membra z hodnoty nadradeného membra
- Ranking – skórovanie membrov
- Prístup k vzdialenejším membrom – Ancestor, Anscendants, Descendants, Cousin
- Funkcia Descendants a jej parametre – SELF, BEFORE, AFTER, LEAFS, …
- Testovanie pozície membrov – IsAncestor, IsSibling, IsLeaf
- Navigácia v rámci jednej úrovne – Prev/NextMember, Lag, Lead
Časové analýzy
- Časové dimenzie a ich konfigurácia
- Práca s časom z pohľadu MDX
- Kalkulácia kumulatívnych medzisúčtov v čase – PeriodsToDate, YTD
- Kĺzavé priemery, súčty a agregácie
- Porovnanie rovnakých hodnôt v susedných časových obdobiach – ParallelPeriod
- Kombinovanie časových metrík
- Funkcie OpeningPeriod a ClosingPeriod
Vylepšenie kociek
- Perzistentní vypočítaní membri a pomenované sety na úrovni kocky
- Dopočítavanie chýbajúcich dát a vlastná logika v danom kontexte
- Rozširovanie funkcionality pomocou externých .NET funkcií a knižníc
- KPI – Key Performance Indicators
- Dynamická bezpečnosť – obmedzenia na úrovni dimenzií, hierarchií, atribútov, buniek a membrov
- Reportovanie z kociek
- Práca s OLAP kockami v Exceli