Databáze

Databáze

Databáze je v TDKIV definovaná jako „systém sloužící k modelování objektů a vztahů reálného světa (včetně abstraktních nebo fiktivních) prostřednictvím digitálních dat uspořádaných tak, aby se s nimi dalo efektivně manipulovat, tj. rychle vyhledat, načíst do paměti a provádět s nimi potřebné operace – zobrazení, přidání nových nebo aktualizace stávajících údajů, matematické výpočty, uspořádání do pohledů a sestav apod. …“ [1]

Typ dat, které databáze zpravuje ovlivňuje také její uspořádání. U dat v elektronické podobě jsou databáze spravovány systémem řízení báze dat (SŘBD = DBMS – database management systém). [2] Registraci, zpřístupňování a vyhledávání databází zaručují databáze databází. [3]

Historie

V kontextu organizace a uchovávání dat se pojem databáze užívá od konce 60. let 20. století, s rozvojem potřeby snazší správy stále větších dat o občanech státu. Jako další přelom je možné vidět zasahování soukromých firem do financování těchto databází. [2]

Prvopočátky databází můžeme vidět v antice, která už pracovala s archívy, tedy místy, kde se shromažďovaly úřední dokumenty. Přímým předchůdcem pak je třeba papírová kartotéka. Ta umožňovala 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 [4] 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[5], který byl po mnoho dalších let nejrozšířenějším jazykem pro hromadné zpracování dat. S rozvojem technologií se rozvíjely také databáze. Stávají se složitější a vytváří čím dál propojenější síť.[2]

Třídění

Databáze můžeme dělit různě, například [2]:

- podle obsahu:

  • Všeobecné databáze – obsahují informace nezařaditelné do malého množství oborů (encyklopedie).
  • Specifické databáze – jejich obsahem jsou informace patřící do nějakého úseku lidských vědomostí (jednooborové)

- podle formy

  • Elektronické databáze – musíme zde vidět rozdíl mezi databází a softwarem (počítačovým programem), který ji zpřístupňuje (SŘBD)
  • Analogové databáze (př. papírové kartotéky)

- podle způsobu ukládání dat a vazeb mezi nimi:

  • Hierarchické databáze (hierarchical) – Zde jsou data uspořádaná do stromové struktury. [2] Každý prvek tvoří jeden uzel. Uzly pak mají mezi sebou vztahy nadřazené a podřazené. Pokud mají dva prvky tentýž nadřazený prvek, jsou si nějakým způsobem podobné (patří do stejné třídy). [6] 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 (network) – vycházejí z hierarchické struktury, ke které ale připojují četné jiné než hierarchické vztahy mezi jednotlivými prvky. [2] V této databázi je umožněno vytvářet obousměrné vztahy mezi prvky v libovolném počtu. [6] 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.
  • Objektově-orientované databáze (object oriented) – Hitem posledních let jsou tzv. NoSQL databáze, tedy databáze, které nejsou relační. Zastánci NoSQL databází vyzdvihují jejich škálovatelnost. Pro obrovské objemy dat je využívají společnosti jako Google, Amazon apod. Podtypem NoSQL databází jsou databáze objektové. Mají rozhraní pro objektově orientované jazyky a ukládají transparentně celé hierarchie objektů. Vzniky v 90. letech 20. století a jejich základním prvkem je objekt. Ten je jednoznačně identifikovatelný, má předepsanou sadu metod, podle kterých se chová, a díky svým interním datům můžeme také zjistit jeho současný stav. [7]
  • Relační databáze (relational) – v současnosti nepoužívanější díky jejich jednodušší struktuře, jejíž základy představil v roce 1970 Ted Codd. [7] Snadněji se zde provádí změny než u databází hierarchických nebo síťových. Data jsou zde zařazena do tabulek, které zjednodušují jejich další zpracování. [2] Bawden a Robinson tuto tabulku vysvětluje: „Každá tabulka představuje druh položky, každý řádek jeden výskyt položky a každý sloupec jeden atribut výskytu položky.“ [8] Vychází z matematické teorie relací a množin. Relace pak je „kartézským součinem nad množinami údajů, tzv. doménami.“ Využívají jazyka SQL (Structured Query Language) a entitně-relačního modelování.[6]

- podle architektury

  • Distribuovaná databáze (distributed) – tvoří ji soustava datových archívů, které jsou fyzicky na různých místech. Což pro uživatele však nehraje roli, protože tuto skutečnost nevnímá.

- podle autora

  • Dílo skupiny
  • Dílo jednotlivce
  • Nekomerční databáze – Například se může jednat o úřední databáze nebo databáze knihovních fondů. [2]

- podle práv

  • Původní databáze (originální) – tedy takové, které mají autorská práva.
  • Nepůvodní databáze (neoriginální) – autorská práva sice nemají, ale stejně jako databáze původní má tzv. práva sui generis. [2]

- podle Marty E. Williamsové dělíme databáze podle typu informace, které spravují, na databáze: [3]

  • Textové
  • bibliografické
  • plnotextové
  • typu adresářů
  • Numerické
  • faktové
  • časových řad
  • statistických informací.
  • Obrazové
  • Multimediální

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

Objekt, který uživatlei poskytuje data ve stejné podobě jako tabulka, ale na rozdíl od tabulky neobsahuje data, ale pouze předpis pro získání dat z tabulek jiných pohledů.

Indexy/Klíče

Definovány nad jednotlivými sloupci tabulek. Jejich funkce je vést si v tabulkách rychlé LUT [9]na sloupce, nad nimiž byly definovány, vyloučit duplicitu v záznamech nebo zajišťovat fulltextové vyhledávání.

Triggery/Spouště

Mechanismus mezi řádky dvou tabulek.

Uživatelem definované procedury a funkce

Ukládání pojmenovaných kusů kódu, které provedou v databázi nad danými tabulkami určitou sekvenci příkazů nebo navíc vrátí nějaký výsledek.

Události/Events

Procedury spouštěné v určitý datum a čas nebo opakovaně s definovatelnou periodou.

Formuláře

Některé databázové systémy umožňují uživatelům vytvářet vstupní formuláře pro vizuálně přívětivé zadávání hodnot.

Sestavy/Reporty

Umožňují uživateli definovat layout[10] s políčky dané tabulky, do kterého se při použití doplní aktuální hodnoty.

Uživatelská oprávnění

U lepších databázových systémů je možnost oddělit jednotlivé úrovně přístupu uživatelů k databázi.

Partitioning

Způsob, jak rozdělit data v tabulce na více pevných disků.

Procesy

Databázové stroje umí podat přehled o procesech, které jejich služeb aktuálně využívají.

Vizuální E-R schéma

Vizuální reprezentace vztahů (relací) na sobě závislých polí mezi tabulkami.

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. Integritní omezení se mohou týkat jednotlivých hodnot vkládaných do polí databáze, či může jít o podmínku na kombinaci hodnot v některých polích jednoho záznamu. Integritní omezení se může týkat i celé množiny záznamů daného typu. [11]

Odkazy

Reference

  1. KUČEROVÁ, Helena. Databáze. In: KTD: Česká terminologická databáze knihovnictví a informační vědy (TDKIV) [online]. Praha : Národní knihovna ČR, 2003- [cit. 2018-05-30]. Dostupné z: http://aleph.nkp.cz/F/?func=direct&doc_number=000000089&local_base=KTD.
  2. 2,0 2,1 2,2 2,3 2,4 2,5 2,6 2,7 2,8 CONNELLY KOHUTOVÁ, Radka. Databáze ve věku informační společnosti a jejich právní ochrana. V Praze: C.H. Beck, 2013. Beckova edice právní instituty. ISBN 9788074004933.
  3. 3,0 3,1 BRATKOVÁ, Eva. Databáze databází: Verze 1.0. [online]. 2007, Ústav informačních studií a knihovnictví: FF UK v Praze, 41 [cit. 2018-05-30]. Dostupné z: https://sites.ff.cuni.cz/uisk/wp-content/uploads/sites/62/2016/01/Datab%C3%A1ze-datab%C3%A1z%C3%AD_Bratkov%C3%A1.pdf
  4. Děrný štítek je médium pro záznam dat pro pozdější zpracování automaty nebo počítač.
  5. COBOL je programovací jazyk vyvinutý v 60. letech 20. století zejména pro obchodní a později i databázové aplikace.
  6. 6,0 6,1 6,2 KUČEROVÁ, Helena. Organizace znalostí: klíčová témata. Praha: Univerzita Karlova, nakladatelství Karolinum, 2017. ISBN 9788024635873.
  7. 7,0 7,1 POLÁK, Robert. Posouzení výhod a nevýhod OOP databází vzhledem k relačním databázím [online]. Praha, 2009. Diplomová práce. Univerzita Karlova, Filozofická fakulta, Katedra Logiky. Vedoucí práce Petr Jirků. [cit. 2018-05-28].
  8. BAWDEN, David a Lyn ROBINSON. Úvod do informační vědy. Doubravník: Flow, 2017. ISBN 9788088123101.
  9. LUT = look-up tables - "pořadníky"
  10. Layout znamená grafické rozvržení tiskové nebo elektronické stránky, případně i jiné plochy.
  11. https://cs.wikipedia.org/wiki/Datab%C3%A1zov%C3%A1_integrita

Použitá literatura

  • BAWDEN, David a Lyn ROBINSON. Úvod do informační vědy. Doubravník: Flow, 2017. ISBN 9788088123101.
  • BRATKOVÁ, Eva. Databáze databází: Verze 1.0. [online]. 2007, Ústav informačních studií a knihovnictví: FF UK v Praze, 41 [cit. 2018-05-30]. Dostupné z: https://sites.ff.cuni.cz/uisk/wp-content/uploads/sites/62/2016/01/Datab%C3%A1ze-datab%C3%A1z%C3%AD_Bratkov%C3%A1.pdf
  • CONNELLY KOHUTOVÁ, Radka. Databáze ve věku informační společnosti a jejich právní ochrana. V Praze: C.H. Beck, 2013. Beckova edice právní instituty. ISBN 9788074004933.
  • KUČEROVÁ, Helena. Organizace znalostí: klíčová témata. Praha: Univerzita Karlova, nakladatelství Karolinum, 2017. ISBN 9788024635873.
  • POLÁK, Robert. Posouzení výhod a nevýhod OOP databází vzhledem k relačním databázím [online]. Praha, 2009. Diplomová práce. Univerzita Karlova, Filozofická fakulta, Katedra Logiky. Vedoucí práce Petr Jirků. [cit. 2018-05-28].

Externí odkazy

TDKIV

Databáze [online]. [cit. 2017-01-09]. Dostupné z: http://www.databaze.chytrak.cz/

Objektové databáze [online]. [cit. 2017-01-19]. Dostupné z: https://blog.root.cz/babel/objektove-databaze/

Související články

Klíčová slova

databáze, databázové modely, historie databází, databázové objekty