Dimensional Modeling Ing. Jan Přichystal, Ph.D.. Úvod Co je DM? – technika pro strukturování dat tak, aby jim včas porozuměli koncoví uživatelé. Dimensionální.

Slides:



Advertisements
Podobné prezentace
Optimalizace stavu zásob
Advertisements

Multidimenzionální analýza zdravotnických dat v prostředí webu RNDr. Karel Drdla RNDr. Zlata Kubů DCB Actuaries and Consultants
Stručný úvod do UML.
Tabulky v MS ACCESS Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Mgr. Jiří Novák.
Přednáška č. 3 Normalizace dat, Datová a funkční analýza
Databáze.
DATABÁZOVÉ SYSTÉMY Ing. Roman Danel, Ph.D.
Business intelligence
ČLENĚNÍ NÁKLADŮ PODNIKU S DŮRAZEM NA ROZHODOVÁNÍ
 Informací se data a vztahy mezi nimi stávají vhodnou interpretací pro uživatele, která odhaluje uspořádání, vztahy, tendence a trendy  Existuje celá.
Databázové systémy Přednáška č. 3 Proces návrhu databáze.
Doporučená literatura: *HUŠEK, R., LAUBER, J.: Simulační modely.. SNTL/Alfa Praha,1987. * NEUSCH L, S. A KOLEKTIV: Modelovanie a simulacia.. SNTL Praha,
Architektury a techniky DS Tvorba efektivních příkazů I Přednáška č. 3 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
Temporální databáze a TSQL
Metody zpracování vybraných témat (projektů)
Audit administrativních činností
Databáze Jiří Kalousek.
Projekt – úkoly, zdroje, vazby úkolů, náklady Ing. Jiří Šilhán.
Transakční systémy Transakční systémy
Databázové systémy II Přednáška č. 8 – Pohledy (Views)
KONCEPTUÁLNÍ MODELOVÁNÍ
D ATOVÉ MODELY Ing. Jiří Šilhán. D ATABÁZOVÉ SYSTÉMY Patří vedle textových editorů a tabulkových kalkulátorů k nejrozšířenějším představitelům programového.
ROZHODOVACÍ ÚLOHY.
DATOVÉ MODELY (c) Tralvex Yeap. All Rights Reserved.
KEG Použití vzorů při vyhledávání na webu Václav Snášel.
Fakulta elektrotechniky a informatiky
Relační databáze.
Normalizace.
Konceptuální návrh databáze
Metainformační systém založený na XML Autor: Josef Mikloš Vedoucí práce: Ing. Jan Růžička, Ph.D. V/2004.
Informatika pro ekonomy II přednáška 10
Databázové systémy Přednáška č. 4 Proces návrhu databáze.
Databázové systémy Přednáška č. 6 Proces návrhu databáze.
Rozšíření IQ sestav v RZ Jak zobrazovat data na 100% ? Ing. Robert Naar Skalský Dvůr
Role ceny zdravotní péče – ekonomický pohled PhDr. Lucie Antošová Všeobecná zdravotní pojišťovna ČR.
Jazyková příprava Skupiny ČEZ
Konceptuální návrh databáze
Design databáze DW Ing. Jan Přichystal, Ph.D..
Databázové modelování
Databázové modelování
EKO VY_32_INOVACE_EKO_12 MARKETINGOVÉ ŘÍZENÍ. Autor: Ing. Hana Motyčková „Autor je výhradní tvůrce materiálu.“ Datum vytvoření: Klíčová slova:
Databázové systémy Informatika pro ekonomy, př. 18.
Databáze velké množství dat pevně dané struktury
Definice fraktální (vnitřní) dimenze a její aplikace v databázích
Seminář pro studenty BIVŠ
01.14 Inventarizace majetku
Databázové systémy Datové modely.
Vzdělávaní a stanovení cílů ÚOS Jitka Navrátilová
METODY STŘEDNĚDOBÉHO PROGNÓZOVÁNÍ SURO jaro 2010.
ÚVOD Účetnictví je chápáno jako stavová či výsledková karta podnikání.
Databázové systémy Normalizace dat.
Základní problémy realizace eLearningového systému Roman Malo Ústav informatiky PEF MZLU v Brně.
Aplikovaná statistika 2.
24 Používání relačních databází (základní pojmy a principy z oblasti relačních databází, struktura databáze,oblasti použití relačních databází, vkládání.
Využití sestavy Zobrazení a typy Části sestavy Vytvoření sestavy Ovládací prvky.
Úvod do databází zkrácená verze.
● Databaze je soubor dat,slouží pro popis reálného světa(např.evidence čkolní knihovny..) ● Relační databaze je databáze založená na relačním modelu.
Datové sklady (DWH) VOJTĚCH VYCHODIL, MICHAL VACHLER, PAVEL FIALA BRNO 2015.
Kapitola 5: Úvod do analytických technologií Webu Vítězslav Šimon (SIM0047) Adaptivní webové systémy (AWS)
Základy marketingu část 4. Ing. Monika Dobešová Univerzita Pardubice FEI Letní semestr 2012/2013.
Úvod do databázových systémů
KIV/ZD cvičení 5 Tomáš Potužák.
Databázové systémy přednáška 13 – Analýza a reporting
Databázové systémy 1 – KIT/IDAS1 Ing. Monika Borkovcová, Ph.D.
Vzdělávaní a stanovení cílů ÚOS
Digitální učební materiál
Informatika pro ekonomy přednáška 8
Ukazatele kvality Program školení.
Vzdělávaní a stanovení cílů ÚOS
Základy business intelligence Jaroslav Šmarda
Transkript prezentace:

Dimensional Modeling Ing. Jan Přichystal, Ph.D.

Úvod Co je DM? – technika pro strukturování dat tak, aby jim včas porozuměli koncoví uživatelé. Dimensionální přístup není dílem jednoho člověka, diskutované přístupy a metodika se vyvíjely a vyvíjí průběžně.

Úvod DM dělí svět na míry a souvislosti. Míry jsou obvykle numerické hodnoty = fakta. Fakta jsou zaznamenávána v určitém kontextu k reálné situaci. Situaci zkoumáme z úhlů pohledu = dimezí. Dimenze popisuje kdo, co, jak, kdy, kde, proč a jak.

Úvod Objekt zkoumané reality bývá reprezentován modelem s faktovou tabulkou obklopenou dimezemi. Tato struktura se označuje jako hvězda. Dimenzionální modely určené pro OLAP se označují jako kostky.

Hlavní výhody DM Srozumitelnost a Výkon DM je pro běžné pracovníky srozumitelnější, informace jsou seskupovány do smysluplných kategorií Struktura dat je vhodnější pro dotazování, DB server nejprve určí dimenzionální atributy a podle nich vybere záznamy z tabulky faktů.

Dimenzionální tabulky Oproti faktovým tab. jsou „širší“, ale menší Průměrně DW obsahuje 8 až 15 dimenzí Atributy slouží k omezování/filtrování dat Robustnost DW je dána kvalitou a hloubkou atributů Atributy jsou obvykle textové nebo číselné chovající se jako text Atributy musí být popisné, kompletní, jednoznačné a bezchybné

Dimenzionální tabulky Atributy by neměly obsahovat NULL hodnoty, doporučuje se nahradit je za „unknown“ atp. Atributy uchovávají jak zkratky/kódy tak i jejich popisy Informace lze získat i z kódů produktů, zákazníků atd. Dimenze tvoří hierarchie, často i více než jednu

Dimenzionální tabulky – klíče Primárním klíčem je obvykle automaticky generovaná sekvence integerů Důvodem je: –výkon –nepoužitelnost ID z trans. systémů – jejich častá recyklace –mapování různých zdrojů – různá ID –vyřešení NULL a neznámých hodnot –vyřešení změn v hodnotách – nové ID

Conformed dimesions Označované jako hlavní nebo běžné Sdílí informace mezi různými částmi DW Důležitost spočívá v: –konzistenci – dotazy a filtrace poskytují stejné výsledky –integraci – umožňují drill-across mezi subjekty –jednodušším vývoj – lze je využít opakovaně

Degenerate dimensions Faktové tabulky obsahují různé identifikátory (číslo letu, číslo faktury,…) Vypadají jako samostatná dimenze, ale nemají atributy = jsou degenerované Jsou obvyklé u transakčních systémů Používají se k průměrování nebo k zjištění vazby zpět do transakčních systémů Často jsou součástí i primárního klíče FT

Slowly changing dimensions Hodnoty atributů v tabulkách se mění zřídka Změny je nutné v čase evidovat Existují tři způsoby: –Přepsat údaje v atributu – ztráta historie, kdy není důlěžitá –Přidat nový záznam – nové ID + sloupec evidující změnu –Přidat nový atribut – přidat sloupec s primární hodnotou (lze snadno přepínat pohled mezi novým a starým)

Slowly changing dimension 2. Druhá zmíněná možnost se nehodí pro rozsáhlé dimenze typu Zákazník, ty se však naneštěstí mění poměrně často Řešením je rozdělení dimenze na části – Customer a Customer Demographics

Junk dimensions Jde o částečně nadbytečné informace Při modelování komplexního procesu často zůstanou různé flagy a textové atributy. Často je nelze umístit do existujících dimenzí Řešení: –Ponechat ve faktové tabulce –Přesunout všechny do oddělené dimenze –Eliminovat

Časová dimenze Objevuje se prakticky všude Obvykle generovaná automaticky Používá také náhradní primární klíče, výhodou je: –kratší než běžné datum, –lze pracovat i s budoucími nebo neznámými hodnotami –umožňuje komplexnější analýzy

Časová dimenze 2. V některých případech je nutné zkoumat data detailněji než jen po dnech Nemá smysl zahrnovat do jedné časové dimenze záznamy pro každou sekundu, 31 miliónů na rok je poměrně hodně Detailnější časové údaje oddělujeme do další dimenze (1440 minut/86400 sekund) Zajímavé je sledovat i části dne (pracovní doba, noční hodiny, oběd, …)

Časová dimenze 3. V případě, že je potřeba sledovat rozdíly v časových hodnotách, je vhodné je předpočítat přímo v ETL a dosadit do faktové tabulky Příkladem je například čas zadání chyby a začátek jejího řešení v Bugtracking systému

Časová dimenze 4. Subjekt zkoumání někdy vyžaduje analýzy přes více časových zón Toto se často řeší oddělenými dimenzemi pro každé pásmo Výhodou je možnost změny zkoumání z pohledu místního času a světového Zahrnutí všeho do jedné dimenze vede k dramatickému růstu velikosti dimenze

Snowflaking Proces, kdy redundantní údaje oddělujeme do samostatné dimenze – normalizace Argumentem bývá úspora místa, problém je však délka klíče oproti textovému popisu Zpomaluje dotazování Složitější na správu a pochopení

Hierarchie Hierarchie jsou základem DM Často v dimenzi více než jedna v závislosti na úhlu pohledu různých uživatelů Jsou spojovány s operací drill-down = detailní pohled Mohou mít fixní nebo variabilní hloubku Variabilní se realizuje pomocí bridge tables, které uchovávají informaci o nadřazeném objektu

M:N dimenze Některé dimenze jsou spojeny s faktovou tabulkou vztahem M:N Typický příklad je pacient a diagnózy Problém řeší opět bridge table

Faktové tabulky Uchovávají měřitelné hodnoty produkované činností subjektu Obvykle se jedná o číselné hodnoty, které lze agregovat (COUNT, SUM, AVG) Ne všechny číselné údaje jsou fakta Rozsahem jsou FT největší, uchovávají až 90 % dat

Faktové tabulky – klíče Primární klíč – obvykle se jedná o složený klíč sestávající z cizích klíčů dimenzionálních tabulek Cizí klíče – každý cizí klíč musí mít protějšek v dimenzionálních tabulkách => nesmí být NULL Pokud by FK nemohl být vyplněn, musí být v dimenzionální tabulce náhradní hodnota (např. frequent flyer)

Faktové tabulky – granularita Granularita je definována změřením události produkující záznam v FT Všechny záznamy v FT mají stejnou granularitu Granularita by měla být co nejdetailnější, to umožňuje maximální flexibilitu a rozšiřitelnost

Faktové tabulky – dělení Faktové tabulky se podle typu uchovávaných dat dělí na: –transakční – velmi časté, granularita je dána konkrétní transakcí, jde o záznam konkrétní události (prodeje) –periodické – periodicky zaznamenávají stav faktů v čase (bankovní účet) –shromažďovací – zaznamenávají změny v nedefinovaných intervalech (fakturace)

Fakta s různou granularitou Např. cena a množství za produkt na detailu objednávky, ale cena za dopravu pro celou objednávku Řešení je rozdělení faktové tabulky na detail a záhlaví nebo definice způsobu rozpočítání problematické hodnoty

Různé měrné jednotky V transakčních systémech se uchovávají data v různých jednotkách, které je třeba srovnávat Je vhodné uchovávat měrnou jednotku přímo ve FT, snižuje to nároky na konkrétní dimenzi. Přepočty je možné realizovat přímo pomocí view

Factless fact tables Některé události ve faktové tabulce nejsou měřitelné Příkladem je účast/neúčast studenta Přesto je vhodné údaj evidovat z důvodu propojení konkrétních dimenzí vazbou M:N

Proces návrhu DM Proces návrhu nespočívá v jednorázovém naplánování. Jde o komplexní, dlouhodobou strategii sestávájící z: –zvolení zkoumaného subjekt –definice granularity dat –identifikace dimenzí –identifikace faktů

Volba subjektu Prvním krokem je výběr zkoumané oblasti dat v podniku. Dobrým testem, zda je vhodně vybraný subjekt zkoumání je realizace kroku 2 – definice granularity dat. Zkoumané subjekty jsou stavebním kamenem tvorby komplexního DW Tvorba probíhá obvykle iterativně – jeden subjekt v čase Každý subjekt obsahuje obvykle jednu faktovou tabulku nebo sadu spojených FT

Definice granularity Druhým krokem je definice úrovně detailů ve faktové tabulce Definice představuje: –položka nákupu sejmutá čtečkou čárových k. –konkrétní transakce v systému pojišťovny –lék na receptu od lékaře –palubní lístek aerolinií –obsah skladu spočtený pravidelně v daném obchodě

Definice granularity Obvyklou chybou je zanedbání definice na začátku analýzy Jde o kombinaci toho, jak vyhovět obchodním požadavkům a co je možné v závislosti na datech – nelze zkoumat to, co nemáme Vhodné je začít s co nejdetailnějšími daty, agregace lze provést i později

Identifikace dimenzí Třetí krok spočívá ve výběru vhodných dimenzí příslušných k dané FT s danou granularitou Většina dimenzí vyplyne automaticky po předchozím kroku Každá dimenze, která nabyde nějaké hodnoty při dané granularitě je vhodný kandidát

Identifikace dimenzí Často vyplyne přímo z požadavků uživatele: „Denní stav položek skladu v distribučním centru“ Volba dimenzí může zpětně ovlivnit zvolenou granularitu

Identifikace faktů Posledním krokem je výběr měřitelných hodnot Je odvozena od granularity dat Obvykle měříme množství a objemy Z nich odvozujeme metriky důležité pro uživatele

Děkuji za pozornost Dotazy?