Teorie databází Flashcards
Databáze
Databáze je uspořádaná množina informací (dat). Součástí databáze jsou i softwarové prostředky, které umožňují manipulaci s uloženými daty a přístup k nim. Je to systém řízení báze dat (SŘBD). Databáze - (v závislosti na kontextu) – jak uložená data, tak i software (SŘBD).
Rozdělení databází:
Systémy sálových počítačů (mainframe)
dBase (souborově orientované databáze s indexsekvenční metodou přístupu, každá tabulka samostatný .dbf soubor – dBase, FoxPro, Paradox, Access
Relační databázové systémy (lepší datová integrita, bezpečnost, …)
Objektově orientované databáze (specializované uplatnění, data se ukládají jako objekt s vlastnostmi)
Systém řízení báze dat (SŘBD či DBMS)
Softwarové vybavení, které zajišťuje práci s databází- tvoří rozhraní mezi aplikačními programy a uloženými daty. Databázová aplikace je program, který umožňuje vybírat, prohlížet a aktualizovat informace uložené prostřednictvím SŘBD. Aby mohl být nějaký programový systém označený za SŘBD, musí být schopen efektivně pracovat s velkým množstvím dat a také musí být schopný řídit (vkládat, modifikovat, mazat) a definovat strukturu těchto dat.
Základní služby SŘBD:
Definice dat (definování a uchovávání datové entity - něco reálného)
Údržba dat (každému členu entity vyhrazuje záznam skládající se z položek)
Manipulace s daty (služby umožňující vkládání, aktualizaci, rušení a třídění dat)
Zobrazování dat (poskytuje metody prezentace dat uživateli)
Integrita dat (metody pro zajištění správnosti dat nepovolením vložení duplicitního řádku s unikátním klíčem)
Architektura:
Centrální
File-server
Klient-server
Distribuovaná databáze
Centrální
Data i SŘBD jsou v centrálním počítači. Tato architektura je typická pro terminálovou síť, kdy se po síti přenáší vstupní údaje z terminálu na centrální počítač do příslušné aplikace, výstupy z této aplikace se přenáší na terminál. Protože aplikační program i vlastní zpracování probíhá na centrálním počítači, který může zpracovávat více úloh, mají odezvy na dotazy určité zpoždění.
File-server
Provozováno pomocí LAN. SŘBD a databázové aplikace jsou provozovány na jednotlivých počítačích. Data jsou umístěna na fileserveru a mohou být sdílena. Komunikace probíhá následujícím způsobem: uživatel zadá dotaz → SŘBD přijme dotaz, zasílá požadavky na data file-serveru → file-server posílá bloky dat na lokální počítač, kde jsou data zpracovávána podle zadaného dotazu → výsledek se zobrazí na obrazovce.
Klient-server
Na personálních počítačích běží program podporující např. vstup dat, formulaci dotazu atd. Databázový server je nejvíce zatíženým prvkem systému a musí být tvořen dostatečně výkonným počítačem. Komunikace probíhá následujícím způsobem: uživatel zadává dotaz (SQL) → dotaz je odeslán na databázový server → databázový server vykoná dotaz → výsledek je zobrazen na obrazovce.
Distribuovaná databáze
Množina databází, která je uložena na několika počítačích. Uživateli se však jeví jako jedna velká databáze. Distribuovanou databázi charakterizujeme třemi vlastnostmi:
transparentnost
autonomnost
nezávislost na počítačové síti
transparentnost
Z pohledu klienta se zdá, že všechna data jsou zpracovávána na jednom serveru v lokální databázi. Nespecifikuje místo uložení dat, o to se stará distribuovaný SŘBD.
autonomnost
S každou lokální bází dat zapojenou do distribuované databáze je možno pracovat nezávisle na ostatních databázích. V distribuované databázi neexistuje žádný centrální uzel nebo proces odpovědný za vrcholové řízení funkcí celého systému, což výrazně zvyšuje odolnost systému proti výpadkům jeho částí.
nezávislost na počítačové síti
V jedné distribuované databázi tedy mohou být zapojeny počítače i počítačové sítě různých architektur.
rozdíl mezi klient-serverem a file-serverem
Hlavní rozdíl mezi klient-serverem a file-serverem je, že klient-server redukuje množství přenášených dat, protože dotazy jsou prováděný přímo na d. serveru na počítač jsou poslány jen výsledky. Zatímco systému file-server je nutné poslat všechny záznamy na počítač, kde se provede dotaz, a zpracují se požadované záznamy.
Návrh databáze
Určení účelu databáze Vyhledání a uspořádání požadovaných informací Rozdělení informací do tabulek Převod jednotlivých informací do sloupců Zadání primárních klíčů Vytvoření relací mezi tabulkami Úprava návrhu Použití normalizačních pravidel (sémantické modelování - analyzuje požadavky a zobrazuje tyto požadavky určitými grafickými prostředky, Entitně-relační modelování (E/R diagram))
Entity relationship
Modelování je metoda datového modelování.
Entita (subjekt, o němž budeme v databázi uchovávat informace (filmy, obrázek, …))
Relace (propojení tabulek)
Tabulky (relační databázový systém = databáze tvořená množinou relací, databáze je tvořena množinou tabulek).
Sloupce, atributy (v tabulkách popisuje určitou část dat, kterou má každý záznam, sloupec představuje část tabulky, atribut se vztahuje k reálné entitě)
Domény (popisují typ dat, obor hodnot)
Řádky, záznamy, n-tice (každý řádek v tabulce představuje záznam o jedné entitě)