Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Ukládání dat aneb kam s nimi? souborová—databázová koncepce

Podobné prezentace


Prezentace na téma: "Ukládání dat aneb kam s nimi? souborová—databázová koncepce"— Transkript prezentace:

1 Ukládání dat aneb kam s nimi? souborová—databázová koncepce

2 Souborová koncepce Data jsou uložena v izolovaných souborech.
S každým souborem pracuje určitá aplikace Možné operace: Vytvořit, otevřít, zavřít, zrušit Čtení souboru Zápis do souboru, úpravy Vytvoření kopií a verzí souboru

3 Souborová koncepce – výhody
Jednoduché pořízení (nahrajeme do adresáře) Snadné naplnění (kopírování mezi složkami) Pocit přehlednosti (při menší velikosti data přehlédneme, při větším počtu – viz nevýhody) Jednoduché pořízení (nahrajeme do adresáře) Snadné naplnění (kopírování mezi složkami) Pocit přehlednosti (při menší velikosti data přehlédneme, při větším počtu – viz nevýhody)

4 Souborová koncepce – nevýhody
Redundance (1 údaj obsažen 2× i víckrát) Nekonzistence dat (2 kopie téhož nejsou stejné) Obtížnost přístupu k datům (každý požadavek uživatele vyžaduje nový program) Obtížné vyhledávání (pokud si myslíme, že si pamatujeme, kde co máme, není to pravda) Redundance (1 údaj obsažen 2× i víckrát) Nekonzistence dat (2 kopie téhož nejsou stejné) Obtížnost přístupu k datům (každý požadavek uživatele vyžaduje nový program) Obtížné vyhledávání (pokud si myslíme, že si pamatujeme, kde co máme, není to pravda)

5 Souborová koncepce – nevýhody
Izolace dat (data jsou v různých izolovaných souborech různých formátů). Problémy s více uživateli (aktualizace dat více uživateli vede k nekonzistenci). Problémy s ochranou dat (je obtížné zajistit utajení dat před neoprávněným přístupem). Izolace dat (data jsou v různých izolovaných souborech různých formátů). Problémy s více uživateli (aktualizace dat více uživateli vede k nekonzistenci). Problémy s ochranou dat (je obtížné zajistit utajení dat před neoprávněným přístupem).

6 Souborová koncepce – nevýhody
Problémy s integritou dat (data nemají žádná pravidla – integritní omezení). Nízké prostředky pro vytváření vazeb mezi záznamy souborů. Problémy s integritou dat (data nemají žádná pravidla – integritní omezení). Nízké prostředky pro vytváření vazeb mezi záznamy souborů.

7 Databáze Soubor dat, tvořený znaky, čísly, řetězci apod.
Struktura databáze umožňuje vyhledávání dat pomocí počítačových systémů Data jsou centrálně strukturovaná Data definována podle schématu Existuje nezávisle na aplikačních programech Soubor informací, tvořený znaky, čísly, řetězci apod. Struktura databáze umožňuje vyhledávání dat pomocí počítačových systémů Data jsou centrálně strukturovaná Data definována podle schématu Existuje nezávisle na aplikačních programech

8 Databáze obsahuje Datové prvky (záznam elementárních hodnot)
Vztahy mezi prvky (datové struktury) Integritní omezení (podmínky) Schéma (popis dat pro uživatele) Datové prvky (záznam elementárních hodnot) Vztahy mezi prvky (datové struktury) Integritní omezení (podmínky) Schéma (popis dat pro uživatele)

9 Databáze – výhody Nezávislost na programech Efektivní přístup k datům
Zkrácený vývoj aplikací Zajištěna integrita dat Nezávislost na programech Efektivní přístup k datům Zkrácený vývoj aplikací Zajištěna integrita dat

10 Databáze – výhody Zajištěna ochrana dat
Řízená správa dat a transakcí s nimi Možnost přístupu více uživatelů Opravy chyb a zotavení Zajištěna ochrana dat Řízená správa dat a transakcí s nimi Možnost přístupu více uživatelů Opravy chyb a zotavení

11 Databáze – výhody jinak
Perzistence – data nezávislá na programech Sdílení – k datům může více uživatelů Integrita – konzistence dat, integrita (podmínky) Autorizace – řízení přístupových práv Neredundance – údaje se v databázi zbytečně neopakují Nezávislost – programy nejsou závislé na uložení dat Perzistence – data nezávislá na programech Sdílení – k datům může více uživatelů Integrita – konzistence dat, integrita (podmínky) Autorizace – řízení přístupových Neredundance – údaje se v databázi zbytečně neopakují Nezávislost – programy nejsou závislé na uložení dat

12 SŘBD Systém řízení báze dat Centrální správa databáze
Obecný sw systém pro řízení sdíleného přístupu k databázi Zajišťuje bezpečnost Zajišťuje integritu uložených dat Systém řízení báze dat Centrální správa databáze Obecný sw systém pro řízení sdíleného přístupu k databázi Zajišťuje bezpečnost Zajišťuje integritu uložených dat

13 DataBázový Systém – DBS
DataBáze + Systém Řízení Báze Dat DB + SŘDB = DBS SŘBD DATABÁZE DATA METADATA

14 Metadata Údaje doplňující uložená data „Data o datech“ Příklad:
EXIF údaje o fotografii nebo grafice

15 Metadata – znak v tabulce
Příklad definice znaku á v tabulce Vyhledávání podle metadat (popis znaku) Vyhledávání podle pozice v tabulce (pořadové číslo)

16 Metadata – znak v tabulce
Vyhledávání podle metadat (popis znaku) Vyhledávání podle pozice v tabulce (pořadové číslo)

17 Typy dat Text, kombinace text + číslo bota č. 7 Numerický 12345
Datový 12. ledna Logický ano–ne Automatické číslo (počítadlo) 1,2,3… Poznámka kouše Objekt (např. tabulka z Excelu) *.xlsx Hypertextový odkaz Text, kombinace text + číslo bota 7 Numerický 12345 Datový 12. ledna Logický ano–ne Automatické číslo (počítadlo) 1,2,3… Poznámka kouše Objekt (např. tabulka z Excelu) *.xls Hypertextový odkaz

18 Data Atribut 1 Atribut 2 Atribut 3 Atribut n Záznam (věta) Položka

19 Záznam, věta J i r i H a s e k 25 pozic 25 pozic

20 Druhy databázových systémů
Hierarchický model Síťový model Relační databázový systém Objektově orientovaný Multidimenzionální databáze OLAP Datové sklady Hierarchický model Síťový model Relační databázový systém Objektově orientovaný Multidimenzionální databáze OLAP Datové sklady

21 Záznam Student s osobním číslem složil v kurzu zkoušku dne a s výsledkem… Student Kurs číslo jméno A-1 A-2 C1 Adam C2 Blažej C3 Cyril C4 David

22 Hierarchický model Seřazení podle názvu kurzu A-1 C1 Adam 20090110
C2 Blažej C3 Cyril A-2 C3 Cyril C4 David

23 Hierarchický model Historicky nejstarší
Vychází z přirozeného uspořádání Stromová struktura (rodokmen) Vztah označen 1 : N Rodiče mohou mít 0 až n dětí Dítě může mít jen jedny rodiče Nevýhoda – redundance dat Historicky nejstarší Vychází z přirozeného uspořádání Stromová struktura (rodokmen) Vztah označen 1 : N Rodiče mohou mít 0 až n dětí Dítě může mít jen jedny rodiče Nevýhoda – redundance dat

24 Síťový model A1 A2 C1 Adam C2 Blažej C3 Cyril C4 David

25 Síťový model Zobecnění hierarchického modelu
Vztah 1 : N, navíc i M : N Př.: Autor – Nakladatelství Jeden autor vydává knihy ve více nakladatelstvích Jedno nakladatelství vydává knihy více autorů Nevýhoda: náročná realizace a aktualizace Zobecnění hierarchického modelu Vztah 1 : N, navíc i M : N Př.: Autor – Nakladatelství Jeden autor vydává knihy ve více nakladatelstvích Jedno nakladatelství vydává knihy více autorů Nevýhoda: náročná realizace a aktualizace

26 Relační model Student Zkouška v kurzu číslo popis atd. C1 Adam C2
Blažej C3 Cyril C4 David číslo popis atd. A-1 databáze 2/2 z, Zk A-2 angličtina 0/2 z Vztahy číslo studenta číslo kurzu zkouška dne hodnocení C1 A-1 1 C2 2 C3 A-2 3 C4

27 Relační databáze Nejpropracovanější
Základem jsou relace – dvourozměrné tabulky s pojmenovanými sloupci Pořadí sloupců je libovolné Nevýhoda Větší počet přístupů do paměti – pomalejší Výhoda Snížení objemu dat, možnost deduplikace Nejpropracovanější Základem jsou relace – dvourozměrné tabulky s pojmenovanými sloupci Pořadí sloupců je libovolné Nevýhoda Větší počet přístupů do paměti – pomalejší Výhoda Snížení objemu dat, možnost deduplikace

28 Relační databáze Ukládají data do oddělených tabulek
Zajišťuje to rychlost a flexibilitu. Tabulky popisují nějakou část reálného světa Ukládají data do oddělených tabulek Zajišťuje to rychlost a flexibilitu. Tabulky popisují nějakou část reálného světa

29 Relační databáze Předměty zachycované tabulkami mohou být spolu v nějakém vztahu. I jednotlivé vztahy mezi tabulkami jsou reprezentovány tabulkami Na tabulky i na vztahy mezi nimi se dá pohlížet jako na relace. Předměty zachycované tabulkami mohou být spolu v nějakém vztahu. I jednotlivé vztahy mezi tabulkami jsou reprezentovány tabulkami Na tabulky i na vztahy mezi nimi se dá pohlížet jako na relace.

30 Relační databáze Výhoda v jednoduchostí – vše je uloženo v tabulkách, tabulky mají sloupce, v každém sloupci jsou data určitého typu Jednoduchost relací je ve složitých aplikacích problém Komplikované úlohy se pod relačními databázemi implementují velice těžko Výhoda v jednoduchostí – vše je uloženo v tabulkách, tabulky mají sloupce, v každém sloupci jsou data určitého typu Jednoduchost relací je ve složitých aplikacích problém Komplikované úlohy se pod relačními databázemi implementují velice těžko

31 Objektový model Neodděluje data a funkce Od konce 90. let
Vhodný pro data se složitou strukturou (text, text s odkazy, obrázky, video, zvukové záznamy) Vyžaduje nový způsob ukládání dat a obsluhu transakcí* * Transakce je posloupnost akcí (čtení, zápis, výpočet), se kterou se zachází jako s jedním celkem. Např. dotaz v SQL Neodděluje data a funkce Od konce 90. let Vhodný pro data se složitou strukturou (text, text s odkazy, obrázky, video, zvukové záznamy) Vyžaduje nový způsob ukládání dat a obsluhu transakcí* * Transakce je posloupnost akcí (čtení, zápis, výpočet) ,se kterou se zachází jako s jedním celkem. Např. dotaz v SQL

32 Objektový model – vlastnosti
Plná podpora objektů Zapouzdření Dědičnost Polymorfizmus Jednoznačná identifikace objektu Reference mezi objekty Plná podpora objektů Zapouzdření Dědičnost Polymorfizmus Jednoznačná identifikace objektu Reference mezi objekty

33 Zapouzdření Zajišťuje, aby jeden objekt se nemohl dostat k vnitřnímu obsahu jiného objektu (pouzdro) Zabraňuje tak nekonzistenci Každý objekt zpřístupňuje rozhraní s nímž pracuje – jiná možnost není Zapouzdření – zaručuje, že objekt nemůže přímo přistupovat k „vnitřnostem“ jiných objektů, což by mohlo vést k nekonzistenci. Každý objekt navenek zpřístupňuje rozhraní, pomocí kterého (a nijak jinak) se s objektem pracuje. Zajišťuje, aby jeden objekt se nemohl dostat k vnitřnímu obsahu jiného objektu (pouzdro) Zabraňuje tak nekonzistenci Každý objekt zpřístupňuje rozhraní s nímž pracuje – jiná možnost není

34 Dědičnost Objekty organizovány ve stromové struktuře
Možnost, aby jeden objekt byl potomkem jiného objektu Dědí jeho schopnosti, k nimž přidává vlastní rozšíření Implementace rozdělením objektů do tříd, každý objekt je instancí nějaké třídy Každá třída může dědit od jiné třídy Dědičnost – objekty jsou organizovány stromovým způsobem, kdy objekty nějakého druhu mohou dědit z jiného druhu objektů, čímž přebírají jejich schopnosti, ke kterým pouze přidávají svoje vlastní rozšíření. Tato myšlenka se obvykle implementuje pomocí rozdělení objektů do tříd, přičemž každý objekt je instancí nějaké třídy. Každá třída pak může dědit od jiné třídy (v některých programovacích jazycích i z několika jiných tříd). Objekty organizovány ve stromové struktuře Možnost, aby jeden objekt byl potomkem jiného objektu Dědí jeho schopnosti, k nimž přidává vlastní rozšíření Implementace rozdělením objektů do tříd, každý objekt je instancí nějaké třídy Každá třída může dědit od jiné třídy

35 Instance třídy Instance třídy je konkrétní datový objekt v paměti odvozený z nějakého vzoru (třídy) Objekt představuje základní stavební prvek objektově orientovaného programování. Každý takový objekt má své vlastní atributy a metody podle vzoru (třídy). Instance bývá obvykle vytvořena pomocí konstruktoru a klíčového slova new. (v některých programovacích jazycích také objekt) používaný v objektově orientovaných programovacích jazycích (Java, C++, Simula 67, atd.). Instance třídy je konkrétní datový objekt v paměti odvozený z nějakého vzoru (třídy) Objekt představuje základní stavební prvek objektově orientovaného programování. Každý takový objekt má své vlastní atributy a metody podle vzoru (třídy). Instance bývá obvykle vytvořena pomocí konstruktoru a klíčového slova new.

36 Polymorfizmus Objekt se chová podle toho, jaké třídy je instancí
Chování se liší podle implementace Různá struktura dat i metod Polymorfismus – odkazovaný objekt se chová podle toho, jaké třídy je instancí. Pokud několik objektů poskytuje stejné rozhraní, pracuje se s nimi stejným způsobem, ale jejich konkrétní chování se liší podle implementace. U polymorfismu podmíněného dědičností to znamená, že na místo, kde je očekávána instance nějaké třídy, můžeme dosadit i instanci libovolné její podtřídy, neboť rozhraní třídy je podmnožinou rozhraní podtřídy. U polymorfismu nepodmíněného dědičností je dostačující, jestliže se rozhraní (nebo jejich požadované části) u různých tříd shodují, pak jsou vzájemně polymorfní. Objekt se chová podle toho, jaké třídy je instancí Chování se liší podle implementace Různá struktura dat i metod

37 Integrita Podmínka, kterou omezujeme možné hodnoty atributů, nebo možné manipulace se záznamy, které existují ve vazbě k záznamům jiné tabulky Příklad: V tabulce je uvedeno pohlaví. Omezení určuje, že v položce je uvedeno buď muž nebo žena Integrita: databáze vyhovuje zadaným pravidlům – integritním omezením. Tato integritní omezení jsou součástí definice databáze, a za jejich splnění zodpovídá systém řízení báze dat. Integritní omezení: jednotlivé hodnoty vkládané do polí databáze (například známka z předmětu musí být v rozsahu 1 až 5), nebo podmínka na kombinaci hodnot v polích jednoho záznamu (například datum narození nesmí být pozdější než datum úmrtí). Integritní omezení – může jít o požadavek na unikátnost hodnot daného pole či kombinace polí v rámci celé množiny záznamů daného typu, které se v databázi vyskytují (například číslo průkazu v záznamech o osobách). referenční integrita. požadavek, aby pro pole záznamu, jež má obsahovat odkaz na jiný záznam někde v databázi, takový odkazovaný záznam skutečně existoval (databázový sirotka). integritní omezení pomocí tzv. triggerů. Jde o komplexnější definice kontrol, jež se budou provádět při každém pokusu o zápis záznamu do databáze.

38 Structured Query Language – SQL
Sada příkazů pro ovládání databází První byl SEQUEL (Structured English Query Language) – syntaktická tvorba příkazů co nejblíže angličtině SQL součástí všech relačních databázových systémů (Progres, INFORMIX, SyBase, Oracle) V 70. léta 20. století - IBM - výzkum relačních databází. Příkaz pro ovládání r. databází. Vznikl jazyk SEQUEL (Structured English Query Language). Cílem - jazyk s příkazy syntakticky co nejblíže přirozenému jazyku (angličtině). 1979 firma Relational Software, Inc. (dnešní Oracle Corporation) vlastní relační databázová platforma Oracle Database. uvedla v roce 1981 nový systém SQL/DS a v roce 1983 systém DB2. Dalšími systémy byly např. Progres, Informix a SyBase. Ve všech varianta ye SEQUEL, který byl přejmenován na SQL. Relační databáze – nutné standardizovat. ANSI původně RDL. SQL se prosadil de facto , ANSI založil standard SQL-86 (přijat 1986). nový standard SQL-92 (někdy se uvádí jen SQL2) (přijat 1992). Nejnovější standard je SQL3 (SQL-99), nejmodernější pro databáze s objektovými prvky. Standardy podporuje každá relační databáze, nejsou implementovány všechny požadavky normy. A naopak, každá obsahuje prvky a konstrukce, mimo standard. Přenositelnost SQL dotazů mezi jednotlivými databázemi je proto omezená.

39 Structured Query Language – SQL
V rámci tohoto standardu byly definovány následující podskupiny DML – Data Manipulation Language (Příkazy pro manipulaci s daty) DDL – Data Definition Language (Příkazy pro definici struktury databáze) DCL – Data Control Language (Příkazy pro řízení dat) V rámci tohoto standardu byly definovány následující podskupiny DML – Data Manipulation Language (Příkazy pro manipulaci s daty) DDL – Data Definition Language (Příkazy pro definici struktury databáze) DCL – Data Control Language (Příkazy pro řízení dat)

40 SQL příkazy Příkazy pro manipulaci s daty (SELECT, INSERT, UPDATE, DELETE, …) Příkazy pro definici dat (CREATE, ALTER, DROP …) Příkazy pro řízení přístupových práv (GRANT, REVOKE) Příkazy pro řízení transakcí (START TRANSACTION, COMMIT, ROLLBACK) Ostatní nebo speciální příkazy Příkazy pro manipulaci s daty (SELECT, INSERT, UPDATE, DELETE, …) Příkazy pro definici dat (CREATE, ALTER, DROP …) Příkazy pro řízení přístupových práv (GRANT, REVOKE) Příkazy pro řízení transakcí (START TRANSACTION, COMMIT, ROLLBACK) Ostatní nebo speciální příkazy

41 Manipulace s daty SELECT – výběr, seskupení, řazení dat
INSERT – vložení dat do tabulek databáze UPDATE – změna dat tabulek databáze DELETE – smázení dat tabulek databáze SELECT – výběr, seskupení, řazení dat INSERT – vložení dat do tabulek databáze UPDATE – změna dat tabulek databáze DELETE – smázení dat tabulek databáze

42 Definice struktury databáze
CREATE – vytváří v databázi nový objekt, vazbu mezi tabulkami ALTER – mění objekty databáze (strukturu databáze, schéma) DROP – ruší objekty v databázi CREATE – vytváří v databázi nový objekt, vazbu mezi tabulkami ALTER – mění objekty databáze (strukturu databáze, schéma) DROP – ruší objekty v databázi

43 Řízení přístupových práv
GRANT – přiřazuje konkrétnímu uživateli přístupová práva k datům REVOKE – odebírá konkrétnímu uživateli přístupová práva GRANT – přiřazuje konkrétnímu uživateli přístupová práva k datům REVOKE – odebírá konkrétnímu uživateli přístupová práva

44 Řízení dat START TRANSACTION – začátek transakce
COMMIT – potvrzení transakce ROLLBACK – pokud během transakce vznikla chyba, příkaz vrátí databázi do stavu před spuštěním transakce START TRANSACTION – začátek transakce COMMIT – potvrzení transakce ROLLBACK – pokud během transakce vznikla chyba, příkaz vrátí databázi do stavu před spuštěním transakce

45 OLAP Online Analytical Processing
Vznik roku 1993, autorem E. F. Codd, otec relačních databází. OLAP databáze – odpovědi na komplexní dotazy pracující s více dimenzemi Umožňuje uspořádat velké objemy dat Vznik roku 1993, autorem E. F. Codd, otec relačních databází. OLAP databáze – odpovědi na komplexní dotazy pracující s více dimenzemi Nabízejí pohled na data z mnoha perspektiv: Příklad: kolik jsme prodali praček v regionu západních Čech za poslední čtvrtletí?

46 OLAP Základem je tvorba dotazů a sestav
Zpracovávají data z klasických databází Vytváří vícerozměrné struktury („kostky“) Nabízejí pohled na data z mnoha perspektiv: Příklad: kolik jsme prodali praček v regionu západních Čech za poslední čtvrtletí? Vznik roku 1993, autorem E. F. Codd, otec relačních databází. OLAP databáze – odpovědi na komplexní dotazy pracující s více dimenzemi Nabízejí pohled na data z mnoha perspektiv: Příklad: kolik jsme prodali praček v regionu západních Čech za poslední čtvrtletí?

47 OLAP Vhodné pro analýzu komplexních vazeb mezi daty.
OLAP databáze jsou pro analýzu dat výhodnější než klasické relační databáze OTLP Ukládají data tak, že předpočítávají agregace (shlukují data) Jsou vhodná pro analýzu komplexních vazeb mezi daty. Pro analýzy dat jsou OLAP databáze výhodnější než klasické relační databáze Ukládají data tak, že předpočitávají agregace (shlukují data) Ukládají je do struktur, tzv. kostek

48 OLAP Obsahují dva základní typy dat:
Míra – čísla, hodnoty (náklady, výnosy, zisky, ztráty, prodeje, počty reklamací…) Průměr a množství – používají se ke zpracování údajů (měr) Zpracování obvykle pomocí Business Intelligence Jsou vhodná pro analýzu komplexních vazeb mezi daty. Pro analýzy dat jsou OLAP databáze výhodnější než klasické relační databáze Ukládají data tak, že předpočitávají agregace (shlukují data) Ukládají je do struktur, tzv. kostek

49 ROLAP Struktura s agregačními tabulkami přímo v relační databázi,
Mluvíme o tzv. ROLAPu (relational OLAP) Struktura s agregačními tabulkami přímo v relační databázi, Mluvíme o tzv. ROLAPu (relational OLAP)

50 MOLAP, HOLAP MOLAP (multidimensional OLAP).
Vytváří vlastní proprietární soubory, pak se jedná o MOLAP HOLAP (hybrid OLAP) „Střední cesta“, data zůstávají v relační databázi a zvlášť jsou uloženy agregace a metadata. MOLAP (multidimensional OLAP). Vytváří vlastní proprietární soubory, pak se jedná o MOLAP HOLAP (hybrid OLAP) „Střední cesta“, data zůstávají v relační databázi a zvlášť jsou uloženy agregace a metadata.

51 Rozdíl mezi OLAP a OLTP OLAP OLTP Data jednorázově nahrána
Nejsou průběžně akrtualizována Neukládají se v 3NF formě Používá více indexů než OLTP Snadné a bezpečné ukládání dat Bezpečné provádění změn a aktualizací Doporučené ukládání v 3NF formě Používá méně indexů než OLAP

52 Rozdíl mezi OLAP a OLTP OLAP OLTP Pohled globální
Komplexní dotazy na více parametrů Pohled detailní Jednoduché dotazy, jednoduché transakce

53 Vysvětlivky Třetí normální forma (3NF) INDEX
Soubor doporučení (metodika) pro návrh datové struktury databáze Optimální využití vlastností systému OLTP  INDEX  Databázová konstrukce pro zrychlení vyhledávání v databázi Výrazně urychluje odpovědi na dotazy Optimalizace pro fulltextové vyhledávání.

54 Srovnávací tabulka Z referátu Zdeňka Koubka Znak OLTP OLAP
Charakteristika Provozní zpracování Informační zpracování Orientace Transakční Analytická Uživatel Úředník, databázový administrátor Znalostní pracovník (manažer, analytik) Funkce Každodenní operace Dlouhodobé informační požadavky, podpora rozhodování Data Současná, zaručeně aktuální Historická Sumarizace dat Základní, vysoce detailní Shrnutá, kompaktní Náhled Detailní Shrnutý, multidimensionální Jednotky práce Krátké, jednoduché transakce Komplexní dotazy Přístup Číst a zapisovat Většinou pouze číst Zaměření Vkládání dat Získávání informací Počet dostupných záznamů Desítky Miliony Počet uživatelů Tisíce Stovky Velikost databáze 100 MB až GB 100 GB až TB Přednosti Vysoký výkon, vysoká přístupnost Vysoká flexibilita, nezávislost koncového uživatele Srovnávací tabulka Z referátu Zdeňka Koubka

55 Datové sklady Data Warehouse (DWH) Speciální typ relační databáze
Analytické dotazování nad rozsáhlými soubory dat

56 Definice datového skladu
Charakteristiky popsal William Inmon Orientace na subjekt Integrovanost Nízká proměnlivost Historizace

57 Orientace na subjekt Relační databáze Datový sklad
Co nejmenší redundance Normalizace dat (3NF) Vnitřní provázání celků Malé nároky na paměť Separace funkčních celků Struktura přehledná pro uživatele Velké nároky na paměť

58 Integrovanost Relační databáze Datový sklad
Provozní aplikace pracuje se „svými“ specifickými daty Úlohu řeší jen s těmito daty Shromáždění informací z různých zdrojů Seskupení podle logického významu Všechna data pohromadě Viz Orientace na subjekt

59 Nízká proměnlivost Relační databáze Datový sklad
Data jsou průběžně upravována a doplňována Data nahrávána v dávkách Např. denní nebo týdenní dávky Po nahrání se data neupravují, nemodifikují

60 Historizace Relační databáze Datový sklad
Data udržována v aktuální podobě Jiný stav uživatele obvykle nezajímá Data udržována v historické podobě Možnost analýzy časového vývoje

61 Technické charakteristiky
Nástroj pro nahrávání dat z různých zdrojů Různé datové formáty Různé fyzické umístění Kombinace relačních i jiných databází Data ukládána s ohledem na snadnou editaci Snadné a rychlé provádění složitých dotazů Použití OLAP

62 Dotazy v datovém skladu
Není předem známo jaké úlohy se budou řešit Potřeba flexibilních analytických nástrojů Obvykle je znám pouze typ úlohy Nikdy všechny dotazy a úlohy

63 Datový sklad – faktová tabulka
Datový sklad členěn do schémat Každé schéma – analyzovaná funkční oblast Jádrem schématu faktová tabulka (jedna nebo více) V nich analyzovaná data Faktové tabulky – detailní údaje ze všech zdrojů Více údajů než ostatní tabulky

64 Datový sklad – dimenze Dimenze je tabulka
Obsahují seznamy hodnot ke kategorizaci a třídění dat S faktovými tabulkami spojeny pomocí cizích klíčů

65 Příklad Informace o prodejích Zdroj: pokladny hypermarketu Analýza:
Doba prodeje Prodejna Typ zboží Dodavatel Vliv akcí Platby (karta, hotově)

66 Příklad Schéma Prodej Faktová tabulka Položky prodeje Typ zboží Cena
Počet kusů

67 Příklad Dimenze pro třídění Datum a hodina (týden, měsíc)
Prodejna Foto Škoda Typ zboží Pentax K-5II Kategorie zboží Digitální zrcadlovka Oddělení Zrcadlovky Dodavatel Pentec

68 Děkuji za pozornost


Stáhnout ppt "Ukládání dat aneb kam s nimi? souborová—databázová koncepce"

Podobné prezentace


Reklamy Google