Databáze
Databáze je uspořádaná množina informací (dat), uložená na paměťovém médiu. Dle pojetí textu se pojmem databáze myslím jak uložená data tak i systém řízení databáze.
Obsah
Historie
Předchůdcem databází byly papírové kartotéky. Umožňovaly uspořádání dat podle různých kritérií a zatřiďování nových položek. Veškeré operace s nimi prováděl přímo člověk. Správa takových kartoték byla v mnohém podobná správě dnešních databází. Dalším krokem bylo převedení zpracování dat na stroje. Za první velké strojové zpracování dat lze asi považovat sčítání lidu ve Spojených státech v roce 1890. Paměťovým médiem byl děrný štítek[1] a zpracování sebraných informací probíhalo na elektromechanických strojích. Elektromechanické stroje se využívaly pro účely zpracování dat další půlstoletí. Velkým impulsem pro další rozvoj databází byl překotný vývoj počítačů v padesátých letech 20. století. V roce 1959 se konala konference zástupců firem, uživatelů a amerického ministerstva obrany, jejímž záměrem byl požadavek na univerzální databázový jazyk. Výsledkem byla o rok později na konferenci CODASYL publikovaná první verze jazyka COBOL[2], který byl po mnoho dalších let nejrozšířenějším jazykem pro hromadné zpracování dat.
Databázové modely
Z hlediska způsobu ukládání dat a vazeb mezi nimi dělíme databáze do základních typů:
Hierarchická databáze
Data jsou organizována do stromové struktury[3]. Každý záznam představuje uzel ve stromové struktuře, 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 na potomka, zpět na rodiče nebo do strany na dalšího potomka. Největšími nevýhodami hierarchického uspořádání je složitá operace vkládání a rušení záznamů a v některých případech i nepřirozená organizace dat.
Síťová databáze
Síťový model dat je v podstatě zobecněním hierarchického modelu, který doplňuje o mnohonásobné vztahy (sety). Tyto sety propojují záznamy různého či stejného typu, přičemž spojení může být realizováno na jeden nebo více záznamů. Přístup k propojeným záznamům je přímý bez dalšího vyhledávání, k dispozici jsou operace: nalezení záznamu podle klíče, posun na prvního potomka v dílčím setu, posun stranou na dalšího potomka v setu, posun nahoru z potomka na jeho rodiče v jiném setu. Nevýhodou síťové databáze je zejména nepružnost a obtížná změna její struktury.
Relační databáze
Relační databázový model je z uvedených nejmladší a zároveň nejpoužívanější. V roce 1970 byl popsán Dr. Coddem[4]. V současnosti je nejčastěji využíván u komerčních SŘBD Systém řízení báze dat. Model má jednoduchou strukturu, data jsou organizována v tabulkách, které se skládají z řádků a sloupců. V těchto tabulkách jsou prováděny všechny databázové operace.
Objektová databáze
Objektově orientované systémy databází
Objektově relační databáze
Dokumentově orientovaná databáze
Databázové objekty
Tabulky jsou jen jedny z mnoha databázových objektů (entit). Pokročilejší databázové systémy dále obsahují:
- Pohled/View
- Indexy/Klíče
- Triggery/Spouště[5]
- Uživatelem definované procedury a funkce
- Události/Events
- Formuláře
- Sestavy/Reporty
- Uživatelská oprávnění
- Partitioning[6]
- Procesy
- Vizuální E-R schéma[7]
Databázová integrita
Integrita databáze znamená, že 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 řazení báze dat.
Související články
Odkazy
Databáze [online]. [cit. 2017-01-09]. Dostupné z: http://www.databaze.chytrak.cz/
Reference
- ↑ Děrný štítek je médium pro záznam dat pro pozdější zpracování automaty nebo počítač.
- ↑ COBOL je programovací jazyk vyvinutý v 60. letech 20. století zejména pro obchodní a později i databázové aplikace.
- ↑ Struktura označuje způsob složení, vnitřního uspořádání nějakého objektu, zejména pokud vykazuje nějaké pravidelnosti a zákonitosti.
- ↑ Dostupné také z: https://en.wikipedia.org/wiki/Edgar_F._Codd
- ↑ Mechanismus mezi řádky dvou tabulek.
- ↑ Způsob, jak rozdělit data v tabulce na více pevných disků.
- ↑ Vizuální reprezentace vztahů (relací) na sobě závislých polí mezi tabulkami.