Databázové systémy Úvod Organizační záležitosti  Povinnosti  Klasifikovaný zápočet napsat zápočtovou písemku(> 40% bodů)  uskuteční se 10.

Download Report

Transcript Databázové systémy Úvod Organizační záležitosti  Povinnosti  Klasifikovaný zápočet napsat zápočtovou písemku(> 40% bodů)  uskuteční se 10.

Databázové systémy
Úvod
Organizační záležitosti

Povinnosti

Klasifikovaný zápočet
napsat zápočtovou písemku(> 40% bodů)
 uskuteční se 10. týden semestru
 bude pouze jeden opravný termín !! (tj. celkem 2)
 odevzdat samostatný projekt
 účast na cvičeních 70%, resp. 3 absence se tolerují
 kdo nesplní - nemá nárok na klasifikovaný zápočet!


mail: [email protected]
Doporučená literatura
PROKOPOVÁ Zdenka:
Databázové systémy MySQL+PHP, FAI UTB Zlín.
Pokorný, Halaška:
Databázové systémy, skripta FEL ČVUT, 2003
Rebecca M. Riordan:
Vytváříme relační databázové aplikace, Computer Press,
2000
Larry Ullman:
PHP a MySQL, Computer Press, Brno, 2004
Ostatní zdroje



prezentace na univerzitním serveru
Google – univerzální zdroj www.google.com
stránky o různých SŘBD
 MySQL (dev.mysql.com/doc/refman/5.1/en/)
 MS SQL Server (www.asp.net/learn/sql-videos/)
 Oracle(infolab.stanford.edu/~ullman/fcdb/oracle/ornonstandard.html)
 Firebird (www.firebirdnews.org/docs/fb2min_cz.html)
 a mnoho dalších...
Proč používat databázové systémy?








Možnost sdílení dat
Znovuvyužitelnost dat
Snížení objemu dat (odstranění redundance)
Unifikované rozhraní a jazyk(y) definice dat a manipulace s daty
Integrita a ochrana dat
Řízená správa dat
Transakční zpracování
Paralelní přístup více uživatelů
Intuitivní vymezení pojmu „databáze“
Co je to databáze? - registr (papírová agenda) v
elektronické podobě, v podobě perzistentních dat
Typická podoba odpovídající databáze
Databázový systém



Databáze (data)
 je logicky uspořádaná (integrovaná) kolekce navzájem
souvisejících dat.
 data jsou uchovávána společně s popisy, známými jako
metadata (také schéma databáze).
Systém řízení báze dat - SŘBD
 je obecný softwarový systém, který řídí sdílený přístup
k databázi, a poskytuje mechanizmy pomáhající zajistit
bezpečnost a integritu uložených dat
Administrátor (správce DB systému)
Databázový systém
aplikace
SŘBD
DBS = DB+SŘBD
DB
DB systém tvoří:




technické prostředky
data - DB
programové vybavení – SŘBD – Systém řízení báze dat
příp. správce DBS, uživatele DBS…
SŘBD - Systém Řízení Báze Dat



programová vrstva řešící operace nad DB
odstínění uživatele (aplikace) od technických detailů
operace typu vytvoření DB souboru, ...
Název vznikl přeložením původního termínu
DBMS -DataBase Management System.
Mezi SŘBD patří takové programy jako:
Oracle, MS SQL Server, MySQL, Sybase, Informix, Progress.
Převážná většina dnes používaných SŘBD při uspořádání údajů v
databázi vychází z relačního modelu dat.
Základní pojmy
Objekty dat - člověk, předmět, událost, místo, pojem…
Databáze - soubor dat, který slouží pro popis reálného světa
(např. evidence knihovny, sklad chemikálií, evidence studentů).
Entita - prvek reálného světa (např. člověk, stroj, vyučovaný
předmět, město…).
Atributy dat - charakteristiky (vlastnosti), popisující entitu (např. jméno, příjmení, stav, plat, hmotnost).
Hodnota dat - skutečná hodnota obsažená v každém prvku dat.
Obor hodnot - popisuje typ dat.
Základní datové typy: text, číslo, datum, logická hodnota (ano/ne).
Struktura databáze - množina datových prvků, které
požadovaným způsobem popisují sledovaný objekt.
Perzistentní data – data s dobou života překračující běh
aplikačního programu i vypnutí počítače.
Integrita dat – správnost dat z hlediska splnění omezení
(tzv.integritních omezení), která existují v reálném světě.
Příklad: Účet musí mít vlastníka, rodné číslo musí splňovat
podmínku dělitelnosti 11, zadaná pobočka musí existovat, ...
Konzistence dat – nerozpornost dat - dojde-li k porušení
konzistence, říkáme, že data jsou nekonzistentní.
Pohledy na data
Jedním z důležitých úkolů DBS je poskytnout uživatelům
abstraktní pohled na data - jsou skryty detaily uložení a správy
dat.
Základní úrovně abstrakce dat :
 Fyzická (interní) úroveň - popisuje data, jak jsou skutečně
uložena.
 Konceptuální (logická) úroveň – popisuje jaká data jsou
skutečně uložená v databázi a jaké vztahy mezi nimi existují
 Úroveň pohledů (externí) - popisuje, jaká data vidí jednotliví
uživatele, tj. obecně pouze část databáze, která představuje data
reprezentující objekty reálného světa, viditelná jednotlivými
uživateli
Datové modely
Datový model - souhrn pravidel pro reprezentaci logické
organizace dat v databázi.
Lze je rozdělit do dvou skupin:
a) logické modely - popisují data na úrovni
konceptuální a pohledů.
- modely založené na záznamech
(hierarchický, síťový, relační…)
- modely založené na objektech (E-R model, ...)
b) modely fyzických dat - popisují data na fyzické
úrovni, postihují aspekty implementace.
Hierarchický model dat
Základní principy:


Data jsou organizována do stromové struktury.
Vzájemný vztah mezi záznamy je typu rodič/potomek.
Nalezení dat v hierarchické databázi vyžaduje navigaci přes
záznamy směrem dolů (potomek), nahoru (rodič) a do strany
(další potomek).
Nevýhody hierarchického modelu :
- v některých případech nepřirozená organizace dat,
- složité operace vkládání a rušení záznamů.
Síťový model dat
Základní principy:


Je v podstatě zobecněním hierarchického modelu dat.
Doplňuje ho o mnohonásobné vztahy - jsou označovány
jako C-množiny (neboli Sets).
Nevýhody síťového modelu :
- nepružnost,
- obtížná změna struktury.
Relační model dat
Navržen v 70. letech E. F. Coddem
- založen na matematickém pojmu relačních množin
Základní principy:

Data mají pravidelnou strukturu a ukládají se v
tabulkách

Vztahy mezi daty se realizují pomocí operací relační
algebry
Relační DB model dnes nejrozšířenější:
Oracle, MS SQL Server, MySQL, Informix, Access, dBase
Objektově orientované databáze
1991- návrh standardu (definiční jazyk ODL…).
Základní principy:



Objektové databáze vychází z objektu jako základního
stavebního prvku.
Objekt popisuje danou oblast problému.
Každý objekt má svůj jednoznačný identifikátor, pomocí
kterého je možné jej rozpoznat.
Nové oblasti aplikací:
Návrhové DB
 Multimediální DB
 Znalostní DB

Typy databázových systémů
Dle způsobu ukládání dat a vazeb mezi nimi:

Předrelační



Relační :




hierarchické – IMS
Síťové - IDMS
s architekturou typu „mainframe“ - 2.pol. 70 let
s architekturou typu „PC file-server – dBASE, FoxBase…
s architekturou klient-server – Oracle, MS SQL, Informix…
Postrelační –


objektově orientované – ObjectStore, Jasmine, Gemstone…
Objektově-relační – Oracle 8.x, OSMOS, UniSQL/X …
Téměř všechny současné komerční databázové systémy
jsou relační (případně objektově-relační).
Kategorie jazyků pro tvorbu DB aplikací:




Obecné procedurální jazyky (3GL)
rozšířené o prostředky přístupu k datům, např. Pascal, Cobol,
Basic, jazyk C
Specifické procedurální jazyky (4GL)
mohou být použity pouze v určitém SŘBD, např. jazyk
dBase
Dotazovací jazyky
standardní metoda přístupu k databázím, např. jazyk SQL
(Structured Query Language)
Ostatní jazyky
např. objektově orientované C++, Turbo Pascal, Visual Basic
nebo jazyky maker, jazyk QBE26