Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
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í
19
Uživatelé Typy uživatelů v databázi: Správce databáze (administrátor) Aplikační programátor Koncový uživatel
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)
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 …
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
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.