Databáze Bc. Veronika Tomsová
Databázové schéma Mapování konceptuálního modelu do (relačního) databázového schématu. 2/21
Fyzické ik schéma databáze Určuje č jakým způsobem ů jsou data v databázi ukládána a zpracována v počítači. či Data jsou ukládána na médiích s přímým přístupem (disky) nebo na mediích se sekvenčním přístupem (pásky) - pásky obvykle slouží k zálohování databáze. Data jsou zpracovávána v operační paměti. Jednotkou přenosu mezi vnější pamětí a operační pamětí je blok. Bloky jsou operativně ukládány ve vyrovnávací paměti bufferu. SŘBD má vyhrazeno několik stránek v operační paměti pro kopie dat z vnější paměti, snimiž iž probíhá zpracování. Správu přenosu mezi vnější pamětí a buffery v běžných aplikacích dělá operační systém, v databázovém zpracování však modul řízení vyrovnávacích pamětí a modul řízení souborů jsou součástí SŘBD. Databáze tedy v tomto směru nevyužívá služeb operačního systému, používá vlastní algoritmy. Na základě definice schématu databáze v jazyce definice dat si SŘBD vytváří schéma organizace souboru sám, moderní silné SŘBD mohou toto schéma upravovat na základě provozních charakteristik databáze. Databázový administrátor, neboli správce databáze, může schéma organizace souboru ovlivňovat pouze velmi omezeně. Typická možnost administrátorovy volby je vymezení adresního prostoru pro databázi a zadání příkazů pro vytvoření indexů. 3/21
Pro připomenutí ř - Index databázová entita slouží ke zrychlení vyhledávacích a dotazovacích procesů v databázi definování unikátní hodnoty sloupce tabulky nebo optimalizaci fulltextového vyhledávání Vytvořením indexu databázový server zarezervuje pro požadovaný index určitou část paměťového prostoru a uloží do něj informace o rozmístění hodnot indexovaných sloupců v tabulce v podobě, která závisí na použitých vnitřních algoritmech indexace. Pokud později dojde k dotazu, který se týká indexovaných sloupců, není tabulka prohledávána podle toho, jak jsou za sebou řádky uloženy, ale pomocí informací uložených v paměťovém prostoru indexu je přistupováno přímo k relevantním řádkům tabulky funguje trochu podobně jako rejstřík v knize, kde místo odkazu na příslušnou stránky knihy je ukazatel na paměťové místo s týženými daty. 4/21
Normalizace databáze Normalizace je odstranění ě redundantních d (opakujících) í se dat, omezení složitosti (rozložit složité relace na dvojrozměrné tabulky) a zabránění tzv. aktualizačním anomáliím (např. abychom smazáním všech knih autora nepřišli o data o autorovi). Normalizace by měla vést k tomu, aby databáze byla přehlednější, rozšiřitelnější a výkonnější. Normalizace by měla vést k vzniku tabulek, které lze snadno udržovat a efektivně se na ně dotazovat. Normalizované schéma musí zachovat všechny závislosti původního schémat a relace musí zachovat původní data, což znamená, že se musíme pomocí přirozeného spojení dostat k původním datům. 5/21
Normalizace databáze II. Existují formálně ě popsané stupně ě míry normalizace, nazývané normální formy. Někteří zadavatelé projektů IS výslovně požadují, aby navržené tabulky databáze byly v určité normální formě. 6/21
První normální forma Tato normální forma se vymyká předloze ř ostatních normálních forem, nejde v ní o odstraňování nežádoucích závislostí mezi poli. Tato forma je pouze výslovným zopakováním požadavku relačního databázového modelu, že atributy jsou atomické. Při normalizaci databáze se v tomto kroku myslí hlavně to, aby pole tabulek nebyla sémanticky dělitelná, jako např. textový řetězec W. Churchilla 4, Praha 3, který sice můžeme uložit do jediného pole tabulky, ale nejspíš tím zanedbáváme to, že později budeme vyhledávat jeho jednotlivé významové složky. 7/21
Druhá normální forma Žádný neklíčový atribut není funkčně č ě závislý na pouhé části klíče. Tím se myslí, že v případě složeného klíče tabulky nejsou některá z ostatních polí tabulky funkčně závislá pouze na některé složce tohoto složeného klíče. 8/21
Třetí normální forma Není ížádná áfunkční č závislost mimo klíč. Tím se myslí, že v tabulce není funkční závislost nějakých polí na jiných polích, jež nejsou součástí žádného klíče. 9/21
Boyce Coddova normální forma V tabulkách není žádná á netriviální funkční č závislost. Tím se myslí, že jediné netriviální funkční závislosti v tabulkách jsou závislosti na celém klíči 10/21
Čtvrtá normální forma týká odstranění ě přebytečných ř č tzv. multizávislostí. 11/21
Architektury DB zpracování
Business Intelligence sada postupů, ů procesů ů a technologií, jejímž cílem je účinně a účelně podporovat rozhodovací procesy ve firmě. ě Představuje komplex aplikací, které podporují analytické a plánovací činnosti podniků a organizací a jsou postaveny na specifických, tzv. OLAP (On-Line Analytical Processing) technologiích a jejich modifikacích. 13/21
OLAP technologie uložení dat v databázi, která umožňuje uspořádat velké objemy dat tak, aby byla data přístupná a srozumitelná uživatelům zabývajícím se analýzou obchodních trendů ů a výsledků. ů LAP je část širšího pojmu s názvem Business Inteligence, který zahrnuje oblasti jako relační reporting a data mining. Je navržen hlavně pro manažery, který nemají IT zkušenosti s SQL. Způsob ů uložení dat se svým zaměřením liší od běžněji ěji užívaného OLTP (Online Transaction Processing), kde je důraz kladen především na snadné a bezpečné ukládání změn v datech v konkurenčním (mnohauživatelském) prostředí. 14/21
OLTP okamžité zpracování transakcí Systém uchovávající záznamy o jednotlivých uskutečněných č ě (typicky obchodních) h) transakcích a je obvykle realizován pomocí dnes nejběžnější relační databázové technologie. Data uchovávaná v OLTP databázovém systému jsou (zpravidla periodicky) agregována (typicky sumarizována) a poté ukládána do datového skladu, nad nímž se posléze podle potřeb provádí okamžité zpracování analýz pomocí vrstvy OLAP. 15/21
Základní rozdíly mezi OLAP a OLTP vyplývají z rozdílného použití -u OLAP se jedná o jednorázově nahrávaná data, nad kterými jsou prováděny ě složité dotazy, u OLTP jsou data průběžně a často modifikována a přidávána ř á a to obvykle mnoha uživateli zároveň. 16/21
Základní rozdíly mezi OLAP a OLTP II. OLAP nepoužívá na rozdíl od OLTP normalizované uložení dat v 3.NF formě - data jsou v uložena tak, aby umožňovala rychlou realizaci složitých dotazů, časté je zdvojené (redundantní) uložení, které by v případě p OLTP komplikovalo provádění změn v datech OLAP používá podstatně více indexů než OLTP - opět to souvisí se zaměřením, kde indexy umožňují rychlé provedení složitých dotazů OLAP na rozdíl od OLTP často používá předpočítané agregované a odvozené hodnoty 17/21
Datový sklad
Datový sklad (anglicky Data Warehouse) ) je zvláštní typ relační č databáze, která umožňuje řešit úlohy zaměřené převážně na analytické dotazování nad rozsáhlými soubory dat. Z požadavků na datový sklad vyplývají jeho technologické charakteristiky: Datový sklad musí obsahovat nástroj pro nahrávání dat z různých datových zdrojů, tyto zdroje mohou mít různé datové formáty a různé fyzické umístění, nemusí se zdaleka jednat pouze o relační databáze. Datový sklad ukládá data nikoliv s ohledem na co nejlepší podmínky pro editaci, ale s ohledem na co nejlepší a nejrychlejší provádění složitých dotazů - proto je pro uložení dat používána často technologie OLAP. Nelze předem vědět, jaké dotazy a jaké úlohy budou chtít uživatelé nad datovým skladem v budoucnosti řešit. (V době budování datového skladu je obvykle známý pouze typ úloh, nikoliv všechny jednotlivé dotazy a úlohy.) Z toho vyplývá potřeba dostatečně flexibilních a přitom uživatelsky přívětivých analytických nástrojů. 19/21
Datový sklad Data v datovém skladu jsou z logického (uživatelského) pohledu členěna do schémat - každé schéma odpovídá jedné analyzované funkční oblasti. Jádro každého schématu tvoří jedna nebo několik ě faktových tabulek. V nich jsou uložena vlastní analyzovaná data - číselné a finanční hodnoty, které jsou použity k analytickým výpočtům ů - agregacím, třídění apod. Většina paměťového místa v datovém skladu zabírají faktové tabulky, které obsahují detailní údaje ze všech zdrojů -tedy řádově více údajů než ostatní tabulky. Faktové tabulky yjsou pomocí cizích klíčů spojeny s dimenzemi. Dimenze jsou tabulky, které obsahují seznamy hodnot sloužících ke kategorizaci a třídění dat ve faktových tabulkách. 20/21
Datové pumpy ETL nástroje se starají o plnění ě dat do databáze. Tyto nástroje získávají data ze vzájemně nekompatibilních zdrojů, kterými jsou provozní systémy podniku a jiné externí zdroje, a také je transformují do nových odpovídajících í í struktur a následně ě ukládají do datového skladu. Data jsou tak připravena k pozdějším analýzám. Celý proces zabezpečuje také "čištění" dat, což představuje nejdůležitější úkol. Kvalita ETL nástrojů tedy přímo ovlivňuje kvalitu dat uložených v datovém skladu, a tím pádem také kvalitu informací, které z něj můžeme získat. Z výše uvedených důvodů je nutné této problematice věnovat velkou pozornost, neboť vynaložené náklady (někdy až 3/4 nákladů) se v krátkém časovém horizontu vrátí. 21/21