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

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

Databázové systémy Roman Danel Institut ekonomiky a systémů řízení 2016.

Podobné prezentace


Prezentace na téma: "Databázové systémy Roman Danel Institut ekonomiky a systémů řízení 2016."— Transkript prezentace:

1 Databázové systémy Roman Danel Institut ekonomiky a systémů řízení 2016

2 Databáze Co je to databáze? Databáze – soubor dat, které slouží pro popis reálného světa. Dominantní je relační model

3 Typy databází – Flat-file – textový soubor - sekvenční přístup – Fixed File – Hierarchické – Síťová – Relační – Objektové – Deduktivní – XML – NoSql

4 Volba databáze Je problém ztráta nějakého záznamu? (priorita je rychlost nebo okamžitý stav) Banka x Google Musí všichni okamžitě vidět modifikace dat? Facebook x rezervační systém Může uživatel chvíli čekat? Rezervace x hledání ve Wikipedii Požadavek investora Bezpečnost investicí – jaká je požadovaná dlouhodobá stabilita?

5 Volba databáze O čem máme nejvíce informací? V čem se to bude programovat? Jaké máme vývojáře? (co umí?) Kolik na to chceme dát? (Terradata – bankomaty…) Je pro tuto volbu nějaký partner?

6 Projekt db systému Neexistuje jediné univerzální řešení vhodné pro všechny Příklad – projekt židlí: – Kino – pohodlné sezení – Mc Donald – židle, aby člověk snědl a odešel a nevysedával…

7 Flat file

8 Excel jako databáze

9 http://en.wikipedia.org/wiki/File:Database_models.jpg

10 Relační databáze V relační databázi jsou data uložena v tabulkách, mezi kterými jsou definovány určité vztahy (relace) Příkladem databáze, která není relační, je datový sklad (Data Warehouse) nebo objektově orientované databáze (např. Caché). U relační databáze se snažíme o optimalizaci uložení dat - minimalizace redundancí (nadbytečnost) dat, normalizace. Transakční systémy - ACID

11 Relační model dat E-R model – entitně relační model Co je to entita? Objekt z reálného světa. Entitu reprezentuje v databázi tabulka. Co je to atribut entity? Vlastnost entity, v databázi odpovídá atributu sloupec tabulky.

12 Vlastnosti atributů Musí být atomické (=dále nedělitelné) Na pořadí sloupců nezáleží

13 Úroveň databázového modelu z hlediska abstrakce Konceptuální model Logický model Fyzický datový model – konkrétní db systém

14 Návrh databázového systému Základní modely vedoucí k návrhu databázového systému jsou: -Datové modelování (ERD) -Funkční modelování (DFD) -Časová (dynamická) analýza (STD)

15 Transakce Posloupnost činností, které tvoří logický celek Zajištění konzistence databáze v případě výpadku Zajištění víceuživatelského prostředí

16

17

18

19 Uživatelé Typy uživatelů v databázi: Správce databáze (administrátor) Aplikační programátor Koncový uživatel

20

21 Hlavní databázové systémy Oracle – světově nejrozšířenější db systém! Microsoft SQL Server Sybase MySQL/MariaDB PostgreSQL (Linux) Informix (IBM) DB-2 (IBM) Interbase, Firebird SQLLite Caché (OOP) Terradata

22 Databázové systémy Verze Edice Příklad: MS SQL Server Verze – MS SQL 2000, 2005, 2008 Edice – Express, Workgroup, Standard, Enterprise

23 Databáze podle obratu, Gartner 2008 Oracle48,9 % IBM DB-221,9 % MS SQL Server18,5 % Sybase3 % Terradata3 % MySql0,2 %

24 Přístup na data Do databáze se přistupuje přes rozhraní – ODBC – JDBC – ADO ODBC – definuje se Data Source Name (DSN)

25

26

27

28

29

30

31 Další typy databází

32 Hierarchická db Umožňuje vyjádřit ve směru shora dolů jednosměrné vztahy typu 1:N Speciální typ síťového modelu – hierarchické vztahy Manipulace s daty – sekvenční procházení stromu Tento typ databáze se začíná znovu používat na webu jako alternativa k relačnímu modelu

33 Síťová databáze - příklad teorie grafů (uzly=entity, orientované hrany=vtahy )

34 Objektové databáze - příklad

35 Vznik NoSQL Vzrůstající objem dat Rostoucí propojitelnost dat Ztráta předvídatelné architektury Současná architektura aplikací ACID zbytečně restriktivní Neznáme dopředu přesnou strukturu dat Výpadek je normální a umíme na něho reagovat

36 Kdy nepoužívat NoSQL Potřebuji-li transakce Chci mít pevnou strukturu (schéma) Potřebuji spojovat tabulky

37 Rozdělení noSql databází Document stored (dokumentově orientované aplikace) – místo s řádkem pracují s dokumentem Key-stored database (=bezschémové) – klíč- hodnota; důraz na rychlost Column – data se ukládají do sloupců, vhodné pro datové sklady

38 NoSql databáze CouchDB Cassandra MongoDB Redis MemCache Google BigTable …

39

40 Shrnutí Existuje několik modelů ukládaní dat Dominantní je relační (od 80.let) Transakční systémy Serverová část + klient (musí se přihlásit) Přístup na data – ODBC, ADO… Internet – NoSQL databáze


Stáhnout ppt "Databázové systémy Roman Danel Institut ekonomiky a systémů řízení 2016."

Podobné prezentace


Reklamy Google