Data Warehousing Růst obratu: $10 miliard v 1999

Slides:



Advertisements
Podobné prezentace
Systémová integrace Business Intelligence
Advertisements

Multidimenzionální analýza zdravotnických dat v prostředí webu RNDr. Karel Drdla RNDr. Zlata Kubů DCB Actuaries and Consultants
Jazyk SQL Ing. Zdena DOBEŠOVÁ. SQL Structured Query Language 1974 SEQUEL (Structured English Query Language) neprocedurální relační dotazovací jazyk norma.
Business intelligence
Business Intelligence
 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á.
Přednáška č. 5 Proces návrhu databáze
Albertina a Report Mgr. Libuše Simandlová
Informatika pro ekonomy II přednáška 11
Architektury a techniky DS Tvorba efektivních příkazů I Přednáška č. 3 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
Databázové systémy I Přednáška č. 5 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
Architektury a techniky databázových systémů 30. září 2013
PROGRAMOVACÍ JAZYKY (c) Tralvex Yeap. All Rights Reserved.
SQL Lukáš Masopust Historie  Předchůdcem databází byly papírové kartotéky  děrný štítek  1959 konference  1960 – vytvořen jazyk COBOL.
SQL Lukáš Masopust Historie  Předchůdcem databází byly papírové kartotéky  děrný štítek  1959 konference  1960 – vytvořen jazyk COBOL.
A4B33DS & X33MIS Zdeněk Kouba
Temporální Databáze Jaroslav Dražan. Čím se budeme zabývat Proč je čas v DB důležitý Práce s časem pomocí klasického SQL Reprezentace časové domény Spojování.
Lukáš Navrátil, Dotazovací jazyky I, MFF UK
Úvod do databází Databáze.
Databáze Jiří Kalousek.
Transakční systémy Transakční systémy
Analýza informačního systému
Použití datových skladů v pojistné matematice
Školení správců II. Petr Pinkas RNDr. Vít Ochozka.
Architektura databází Ing. Dagmar Vítková. Centrální architektura V této architektuře jsou data i SŘBD v centrálním počítači. Tato architektura je typická.
Rozumíme si s MDX Š.Havlíček.
Databázové systémy I Cvičení č. 9 Fakulta elektrotechniky a informatiky Univerzita Pardubice 2013.
Základy informatiky část 5. 5 Databáze Databáze – historie Nejprve děrné štítky Hollerith – sčítání lidu USA Univac Zdroj: Wikipedia.
Relační databáze.
Představení koncepce Business Intelligence 6.října 2005
Základy informatiky část 5
Databázové systémy. Práce s daty Ukládání dat Aktualizace dat Vyhledávání dat Třídění dat Výpočty a agregace.
Informatika pro ekonomy II přednáška 10
Databázové systémy Přednáška č. 6.
SQL – základní pojmy Ing. Roman Danel, Ph.D.
Informační systémy TPS,MIS, SIS.
Systémy pro podporu managementu 2
Aplikace VT v hospodářské praxi Byznys inteligence
Manažerský informační systém pro organizace veřejné správy
Erik Eckhardt Portál pro podporu rozhodování
Systémová integrace Big Data
DATABÁZOVÉ SYSTÉMY. 2 DATABÁZOVÝ SYSTÉM SYSTÉM ŘÍZENÍ BÁZE DAT (SŘBD) PROGRAM KTERÝ ORGANIZUJE A UDRŽUJE NASHROMÁŽDĚNÉ INFORMACE DATABÁZOVÁ APLIKACE PROGRAM.
Databázové modelování
Databázové systémy Informatika pro ekonomy, př. 18.
XML data na disku jako databáze Kamil Toman
Statistické databáze a OLAP: Podobnosti a rozdíly Michal Král
Analýza informačního systému. Podrobně zdokumentovaný cílový stav Paramentry spojené s provozem systému – Cena – Přínosy – Náklady a úspory – …
Přehled SAS Institute software For 22 Years: “If It Moves, We Can Analyze It”
CUBE - Operátor relační agregace
Business Inteligence 2. přednáška pro DS
Perzistence XML dat Kamil Toman
Systémové pojetí hospodářské organizace 1 Architektura podnikové informatiky (Zdroj: Gála, Pour, Toman, Podniková informatika. Praha: Grada 2006)
Datové sklady (DWH) VOJTĚCH VYCHODIL, MICHAL VACHLER, PAVEL FIALA BRNO 2015.
Dobývání znalostí z databází OLAP a datové kostky
Systémy pro podporu managementu 2
BI-Datove sklady (DATAWAREHOUSE) – ETL -OLAP
Business Intelligence
Datové sklady Analýza dat
Informační systémy Business Inteligence
Ing. Athanasios Podaras, Ph.D 2016
Databázové systémy přednáška 13 – Analýza a reporting
Databázové systémy a SQL
Informatika pro ekonomy přednáška 8
Segmentace Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu ISSN: 
Optimalizace SQL dotazů
Roman Péchal, Jan Čongva, Martin Durák
Základy business intelligence Jaroslav Šmarda
Datové sklady (Data Warehouse)
OnLine Analytical Processing ESF MU 2005 J.Skorkovský
Datové sklady (Data Warehouse)
Transkript prezentace:

Data Warehousing Růst obratu: $10 miliard v 1999 Rozsah od desktop do super: Walmart: 900-CPU, 2,700 disk, 23TB Teradata system Nové termíny slice & dice, rollup, MOLAP, pivot, ...

Obsah Co je datový warehouse? Proč používat warehouse? Modely & operace Implementace warehousu Další vývoj DB2 warehousing

Co je Warehouse? Kolekce dat separovaná od operační databáze subjektově orientovaná určená pro manažery a exekutivu kopíruje operační data obsahuje další údaje (součty, historii) integrovaná časově proměnná stálá (stabilní) více DB2 warehousing

Co je Warehouse? Kolekce prostředků sdružování dat čištění, integrování, ... dotazování, výpisy, analýzy, ... data mining monitorování, administraci warehousu DB2 warehousing

Architektura Warehousu Klient Klient Dotaz & Analýza Zdroj Warehouse Metadata Integrace Zdroj Zdroj Zdroj DB2 warehousing

Motivační příklady Předpověď počasí Srovnávání výkonnosti skupin Monitoring, detekce podvodů Vizualizace DB2 warehousing

Proč Warehouse? ? Dva přístupy: Query-Driven (Eager=dychtivé) Warehouse (Lazy=zpožděné) ? Zdroj Zdroj DB2 warehousing

Query-Driven přístup Klient Wrapper Mediator Zdroj DB2 warehousing

Výhody Warehousingu Vysoký výkon dotazování Nepřístupnost z vně warehousu Lokální zpracování bez ovlivnění zdrojů Může operovat při nepřístupných zdrojích Dotazování na data neukládaná v DBMS Další informace v warehousu Modifikovaná, sumarizovaná (aggregovaná) Historické informace DB2 warehousing

Výhody Query-Driven Netřeba kopírovat data Čerstvější data méně paměti netřeba vybírat data Čerstvější data Netřeba znát potřeby dotazů Postačuje dotazovací interface ke zdroji DB2 warehousing

OLTP vs. OLAP OLTP: On Line Transaction Processing Popisuje zpracování v operační databázi OLAP: On Line Analytical Processing Popisuje zpracování ve warehousu DB2 warehousing

OLTP vs. OLAP OLTP OLAP Většinou updatuje Více malých transakcí Mb-Tb dat Prvotní data Administrativní uživatel Čerstvá data Konsistence, obnova je kritická Většinou čte Dlouhé, komplexní dotazy Gb-Tb dat Summarizovaná, konsolidovaná data Vedoucí pracovník, analytik jako uživatel DB2 warehousing

Datová tržiště Menší warehousy Rozsah části organizace např., marketing (zákazníci, producenti, prodeje) Nevyžaduje celopodnikové informace ale problem budoucí integrace? DB2 warehousing

Modely & Operátory warehousu Datové Modely relační hvězdice & vločky krychle Operátory slice & dice (řez & výřez) roll-up, drill-down (srolování, zavrtání) pivoting další DB2 warehousing

Hvězdice DB2 warehousing

Schéma hvězdicové prodej prodId zákazník datum výrobek zákId zákId výrId výrId jméno jméno obchId addresa cena množ město částka obchod obchId město DB2 warehousing

Tabulky Tabulka faktů Tabulky dimenzí Měřítka (Kč, cm) prodId zákazník prodej prodId zákazník datum výrobek zákId zákId výrId výrId jméno jméno obchId adresa cena množ město Tabulka faktů Tabulky dimenzí Měřítka (Kč, cm) částka obchod obchId město DB2 warehousing

Hierarchie dimenzí Typ obchod město oblast è vločkové schéma è konstelace DB2 warehousing

Krychle Pohled tabulky faktů: Multi-dimenzionální krychle: dimenze = 2 DB2 warehousing

3-D krychle Pohled tabulky faktů: Multi-dimenzionální krychle: den 2 den 1 dimenze = 3 DB2 warehousing

ROLAP versus MOLAP ROLAP: Relational On-Line Analytical Processing MOLAP: Multi-Dimensional On-Line Analytical Processing DB2 warehousing

Agregáty Sečti částky za den 1 V SQL: SELECT sum(částka) FROM prodej WHERE datum = 1 81 DB2 warehousing

Aggregáty Sečti částky po dnech V SQL: SELECT datum, sum(částka) FROM prodej GROUP BY datum DB2 warehousing

Další příklad Sečti částky po dnech a výrobkách V SQL: SELECT datum, sum(částka) FROM prodej GROUP BY datum, výrId rollup drill-down DB2 warehousing

Aggregáty Operátory: sum, count, max, min, median, ave “Having” klauzule Použití hierarchie dimenzí průměr za region (v rámci obchodu) maximum za měsíc (vzhledem k datumu) DB2 warehousing

Agregace krychle Př.: Výpočty součtů . . . 129 rollup drill-down den 2 DB2 warehousing

Operátory krychle . . . prodej(c1,*,*) 129 prodej(c2,p2,*) den 2 . . . den 1 prodej(c1,*,*) 129 prodej(c2,p2,*) prodej(*,*,*) DB2 warehousing

Rozšířená krychle * den 2 prodej(*,p2,*) den 1 DB2 warehousing

Agregagace s použitím hierarchií den 2 den 1 zákazník region země (zákazník c1 v regionu A; zákazníci c2, c3 v regionu B) DB2 warehousing

Pivoting ?! Pohled tabulky faktů Multi-dimenzionální krychle: den 2 DB2 warehousing

Prostředky pro dotazy Query Building Report Writers (porovnávání, grafy,…) Spreadsheet systémy Webovská rozhraní Data Mining DB2 warehousing

Další operace Časové funkce Vyhodnocované atributy Textové dotazy např., časový průměr Vyhodnocované atributy např., provize = prodeje * rabat Textové dotazy např., najdi dokumenty se slovy X AND B např., seřaď documenty podle frekvence slov X, Y, Z DB2 warehousing

Data Mining Rozhodovací stromy Shlukování (Clustering) Asociační pravidla DB2 warehousing

Rozhodovací stromy Příklad: Zjištění údajů, jací zákazníci se zajímají o nové modely aut Výběr zákazníků pro reklamní kampaň Trénovací množina DB2 warehousing

Jedna možnost věk<30 město=PL auto=audi pravděp nepravděp pravděp Y N město=PL auto=audi N Y N Y pravděp nepravděp pravděp nepravděp DB2 warehousing

Jiná možnost auto=audi město=PL věk<45 pravděp nepravděp pravděp Y N město=PL věk<45 Y Y N N pravděp nepravděp pravděp nepravděp DB2 warehousing

Co vyplývá Rozhodovací strom nemůže být příliš hluboký jinak by neměl statisticky významné hodnoty pro rozhodování v nižších úrovních Je třeba vybrat strom, který nejspolehlivěji predikuje výsledky DB2 warehousing

Shlukování (Clustering) příjem vzdělání věk DB2 warehousing

Jiný příklad: Text Každý dokument je vektor např., <100110...> obsahuje slova 1,4,5,... Shluky obsahují “podobné” dokumeny Užitečné pro klasifikaci, vyhledávání dokumenů sport zahraniční zprávy obchod DB2 warehousing

Problémy Je zadán postačující počet shluků? Nalezení “nejlepších” shluků Jsou shluky sémanticky smysluplné? např., shluk “sázkařů’’? Ukládání shluků na disk DB2 warehousing

Dolování asociačních pravidel transakce id zákazníka id Koupené produkty Záznamy prodejů: Data z nákupního koše Trend: Produkty p5, p8 často koupeny společně Trend: Zákazník 12 má v oblibě produkt p9 DB2 warehousing

Asociační pravidla Pravidlo: {p1, p3, p8} Support: počet košů obsahujících tento produkt Častá množina položek: support  práh s Problém: nalezení všech častých množin DB2 warehousing

Nalezení častých dvojic Koše(koš, položka) SELECT I.položka, J.položka, COUNT(I.koš) FROM Koše I, Koše J WHERE I.koš = J.koš AND I.položka < J.položka GROUP BY I.položka, J.položka HAVING COUNT(I.koš) >= s; DB2 warehousing

Příklad ověř je-li count  s DB2 warehousing

Důsledky Mohutnost množiny dvojic Mohutnost množiny n-tic ještě velká větší! velká Mohutnost množiny n-tic DB2 warehousing

Implementace warehousu Monitoring: Výběr dat ze zdrojů Integrace: Zavlečení, pročištění,... Zpracování: Zpracování dotazu, indexace, ... Správa dat: Metadata, Design, ... DB2 warehousing

Monitoring Typy zdrojů: Relační, plochý soubor, IMS, IDMS, WWW, news-wire, … Inkrementální vs. Obnovovaný zákazník id jméno adresa město 53 josef Horní 10 BR 81 franta Dolní 20 BR nový 111 sára V díře 55 PL DB2 warehousing

Monitorovací techniky Periodické snímky Databázové triggery Uložení logů Replikace dat Ukládání Transakcí Dotazování (dotazy ke zdroji) výhody & nevýhody!! DB2 warehousing

Následky monitoringu Frekvence Transformace dat periodická: denní, týdenní, … triggerovaná: na “velké” změny, množství změn, ... Transformace dat konverze dat na jednotný formát rušit & přidávat položky (např., přidat datu pro získání historie) Standardy (např., ODBC) Gateways DB2 warehousing

Integrace Čistění dat Zavvlékání dat Odvozená data DB2 warehousing Klient Warehouse Zdroj Dotaz & Analýza Integrace Metadata DB2 warehousing

Čistění dat Migrace (např., koruna ð dolar) Praní (Scrubbing): užití doménově-specifické znalosti (např., rodných čísel) Slévání (př.,seznam adres, slučování zákazníků) Auditing: zjišťování pravidel & vztahů (jako data mining) DB faktur DB služeb zákazník1(Jan) zákazník2(Jan) sloučený_zákazník(Jan) DB2 warehousing

Zavlékání dat Incrementálně vs. s obnovou Off-line vs. on-line Frekvence plnění V noci, 1x za týden/měsíc, průběžně Paralelní/oddělené plnění DB2 warehousing

Odvozená data Odvozená data warehousu Kdy aktualizovat odvozená data? indexy agregáty materializované pohledy (další slide) Kdy aktualizovat odvozená data? Incrementálně vs. s obnovou DB2 warehousing

Materializované pohledy Definují nové relace warehousu za použití SQL výrazů neexistuje v žádném zdroji DB2 warehousing

Zpracování ROLAP servery vs. MOLAP servery Indexové struktury Co materializovat? Algorithmy Klient Warehouse Zdroj Dotaz & Analýza Integrace Metadata DB2 warehousing

ROLAP Server Relační OLAP Server nástroje ROLAP utilities server Speciální indexy. Schéma je “denormalizováno” relační DBMS DB2 warehousing

MOLAP Server Multi-Dimensionální OLAP Server M.D. nástroje utilities Výrobek Město Datum 1 2 3 4 mléko voda pivo maso A B Prodeje M.D. nástroje utilities multi-dimensionální server Může také být nadstavbou relačního DBMS DB2 warehousing

Indexové struktury Tradiční přístupové metody Populární ve warehousech B-stromy, hash tabulky, R-stromy, mřížky, … Populární ve warehousech invertované seznamy bit mapové indexy join indexy textové indexy DB2 warehousing

Invertované seznamy . . . datové invertované Index záznamy seznamy věku DB2 warehousing

Užití invertovaných seznamů Dotaz: Zjisti lidi s věkem = 20 a jménem = “fred” Seznam pro věk = 20: r4, r18, r34, r35 Seznam pro jméno = “fred”: r18, r52 Odpověď je průnik: r18 DB2 warehousing

Bitové mapy . . . Index bitové datové věku mapy záznamy DB2 warehousing

Užití bitových map Dotaz: Seznam pro věk = 20: 1101100000 Zjisti lidi s věkem = 20 a jménem = “fred” Seznam pro věk = 20: 1101100000 Seznam pro jméno = “fred”: 0100000001 Odpovědí je průnik: 010000000000 Dobré, je-li kardinalita domény malá Bitové vectory mohou být komprimovány DB2 warehousing

Join “Kombinuje” relace PRODEJ, VÝROBEK V SQL: SELECT * FROM PRODEJ, Výrobek DB2 warehousing

Join Indexy join index DB2 warehousing

Co materializovat? Ulož ve warehousu výsledky užitečné pro běžné dotazy Příklad: Celkové prodeje den 2 . . . den 1 129 materializuj DB2 warehousing

Materializační Faktory Typ/frekvence dotazů Doba odezvy na dotaz Cena paměti Cena změn dat DB2 warehousing

Svaz agregátů krychle vše město výrobek datum město, výrobek 129 vše město výrobek datum město, výrobek město, datum výrobek, datum Použij algoritmus hladového k rozhodnutí co materializovat den 2 den 1 město, výrobek, datum DB2 warehousing

Hierarchie dimenzí vše stát město DB2 warehousing

Hierarchie dimenzí vše město výrobek datum město, výrobek město, datum stát město, výrobek, datum stát, datum stát, výrobek stát, výrobek, datum Nevykresleny všechny hrany... DB2 warehousing

Zajímavé hierarchie vše roky týdny kvartály konceptuální měsíce tabulka dimenzí měsíce dny DB2 warehousing

Algorithmy Optimalizace dotazu Paralelní zpracování Data Mining DB2 warehousing

Příklad: Asociační pravidla Jak provádět dolování pravidel efektivně? Poznatek: Má-li množina X support t, pak každá podmnožina X musí mít alespoň support t Pro dvojice: má-li mít dvojice {i, j} support s pak jak i tak j se musí vyskytnout alespoň v s koších DB2 warehousing

Algorithmus pro dvojice (1) Najdi kandidátní výrobky vyskytují se v s nebo více koších (2) Najdi dvojice se supportem alespoň s, za použití pouze kandidátních výrobků DB2 warehousing

Algoritmus pro dvojice INSERT INTO okBaskets(basket, item) SELECT basket, item FROM Baskets GROUP BY item HAVING COUNT(basket) >= s; Doluj dvojice z košů okBaskets SELECT I.item, J.item, COUNT(I.basket) FROM okBaskets I, okBaskets J WHERE I.basket = J.basket AND I.item < J.item GROUP BY I.item, J.item HAVING COUNT(I.basket) >= s; DB2 warehousing

Efektivní načítání Jedním průchodem: práh = 3 načti & odstraň seřaď DB2 warehousing

Efektivní načítání Jiný způsob: práh = 3 projdi a načti odstraň Měj pole čítačů v paměti DB2 warehousing

Ještě jeden způsob (1) práh = 3 projdi & hashuj & čítej (4) odstraň hash tabulka v paměti práh = 3 (2) projdi & odstraň čítače v paměti (4) odstraň (3) projdi & čítej positivně špatná DB2 warehousing

Diskuse Hashovací schéma: 2 (nebo 3) průchody daty Řadící schéma: vyžaduje řazení! Hashování pracuje dobře, je-li málo dvojic s velkým supportem a hodně s nízkým Dvojice položek rozdělené dle frekvence frekvence práh Ledová hora dotazů DB2 warehousing

Manažování Metadat Návrhu warehousu Nástrojů DB2 warehousing Klient Warehouse Zdroj Query & Analysis Integration Metadata DB2 warehousing

Metadata Administrativa definice zdrojů, nástrojů, ... schémata, hierarchie dimenzí, … pravidla pro extrakci dat, … obnova dat, postupy čistění profil uživatele, řízení přístupu, ... DB2 warehousing

Metadata Obchodní Operační vlastnictví dat, poplatky termíny & definice Operační vznik dat oběh dat (např., aktivní, archivní, ...) stavy, chybové zprávy, následný audit DB2 warehousing

Návrh Jaká data jsou potřebná? Odkud přicházejí? Jak data čistit? Jak je reprezentovat ve warehousu (schéma)? Co sumarizovat? Co materializovat? Co indexovat? DB2 warehousing

Nástroje Vývoj Planování & Analýza Management warehousu návrh & editace: schémat, pohledů, scriptů, pravidel, dotazů, reportů Planování & Analýza co-když scénáře (změny schémat , míra obnovy), plánování kapacity Management warehousu monitoring výkonnosti, hlášení výjimečných stavů Management systému & sítě rytmus provozu (zdrojů, warehousu, klientů) Management toku prací “spolehlivé scripty” pro čistění a analýzu dat DB2 warehousing

Současný stav průmyslu Extrakce a integrace se dělá off-line Obvykle ve velkých, časově náročných dávkách Vše je kopírováno do warehousu Ukládá se bez selekce Pohodlí dotazu vs cena paměti & update Optimalizace dotazu cílená na OLTP Velká prostupnost místo rychlé odezvy Zpracuje celý dotaz před jakýmkoliv výstupem DB2 warehousing

Další směry Lepší výkon Větší warehousy Snazší používání Na čem pracují výrobci a výzkum? DB2 warehousing

Výzkum (1) Inkrementální údržba Konsistence dat Expirace dat Obnova Kvalita dat Zpracování chyb DB2 warehousing

Výzkum (2) Temporální warehousy Materializace & výběr indexů Slévání dat Data Mining Integrace textových & relačních dat DB2 warehousing

Závěr Velká množství dat a složitost dotazů budou tlačit na limity dnešních warehouseů Potřebné lepší systémy: snáze použitelné poskytující kvalitní informace DB2 warehousing