zpět: Bakalářská státnice - Informatika - Základy informatiky - obor Správa počítačových systémů
zdroje:
slidy k přednáškám datázové systémy (Tomáš Skopal)
článek Databáze a jazyk SQL (Interval.cz)
Podstata a architektury DB systémů
?? co přesně zde má být? ER a relační model možná ne?
databáze, systém řízení báze dat (SŘDB)
ER modelování
entity a vztahy, entitní typy, vztahové typy, slabý entitní typ, atributy, identifikátory
relační model
integritní omezení
nadklíč, klíč, cizí klíč
tabulky, řádky, sloupce, schéma tabulky, schéma relační databáze
převod ER -> relační model
relace, domény (typy atributů)
funkční závislosti
klíčový atribut, neklíčový atribut
Armstrongova pravidla
funkční uzávěr
pokrytí, minimální pokrytí, redundantní atribut, atributový uzávěr
Normální formy
cílem je především odstranění redundance dat a tím zajištění jejich integrity
1NF - každý atribut schématu je elementárního typu a je nestrukturovaný
tj. tabulka je plochá - dvourozměrné pole, žádné stromy ani grafy
2NF - neexistují částečné závislosti neklíčových atributů na klíči
tj. nějaký atribut nesmí záviset pouze na části klíče -> rozdělit tabulku na dvě
3NF - žádný neklíčový atribut není tranzitivně závislý na žádném klíči
typická závislost: Firma -> PSČ -> Sídlo (rozdělíme dle tranzitivity na tabulky Firma+PSČ a PSČ+Sídlo)
BCNF (Boyce-Coddova NF) - každý atribut je závislý na klíči
tj. žádný samostatný atribut nesmí záviset na něčem jiném než na celém klíči
Další info: Database normalization (Wiki en) - kdyby někdo trval na tom, že chce znát 4NF, 5NF, 6NF a další :-)
Referenční integrita
pomáhá udržovat vztahy v relačně propojených databázových tabulkách, zabraňuje vzniku nekonzistentních dat
kontrola přípustných hodnot
kontrole existence položky s daným klíčem v druhé tabulce (podle cizího klíče)
chování při porušení integrity:
hlášení chyby, pokud není nastavena jiná akce
ON UPDATE, ON DELETE - podmínka spuštění akce
CASCADE - kaskádová aktualizace/smazání
SET NULL
SET DEFAULT
NO ACTION
zdroje:
Referenční integrita (Wiki cs)
Transakční zpracování, vlastnosti transakcí, uzamykací protokoly, zablokování
Požadované vlastnosti transakcí (ACID):
Atomicity - transakce se provede buď celá nebo vůbec
Consistency - databáze je před i po transakci konzistentní
Isolation - souběžné transakce o sobě neví, navzájem se neovlivňují
Durability - změny jsou po skončení transakce trvale uloženy v databázi
úspěšné ukončení transakce - COMMIT
neúspěšné
uživatelský ABORT
vynucený ABORT (porušení integrity, neexistující objekt, ...)
pád systému
architektura transakcí v SŘBD:
aplikační program
manažer transakcí
rozvrhovač transakcí (scheduler)
manažer dat
sériový rozvrh
prokládání transakcí
uspořádatelný rozvrh (serializovatelný)
konflikty WR (čtení nepotvrzených dat), RW (neopakovatelné čtení), WW (přepsání nepotvrzených dat)
konfliktově uspořádatelný rozvrh, precedenční graf
(ne)zotavitelný rozvrh
exkluzivní a sdílené zámky
uváznutí (deadlock, zablokování), detekce uvzáznutí (waits-for graf), konverze zámků, prevence uváznutí
fantom
ARIES - algoritmus pro zotavení po havárii - analysis, redo, undo
uzamykací protokoly:
2PL (dvoufázový) - nelze požadovat zámek na entitu, pokud již nějaký zámek na ni transakce měla
S2PL (striktní dvoufázový) - všechny zámky uvolněny až při ukončení transakce
konzervativní 2PL - všechny zámky na začátku transakce - nepoužívané
optimistické řízení - třífázový optimistický protokol (lokální datový prostor)
časová razítka
There are some fascinating clnsiog dates in this article however I don't know if I see all of them middle to heart. Theres some validity however I will take hold opinion till I look into it further. Good article , thanks and we would like extra! Added to FeedBurner as properly
Vícevrstevné architektury
(bez záruky, nenalezeny pořádné zdroje)
centralizované systémy
klient/server monoliticky - všechny služby soustředěny na serveru, klient pouze terminál
klient/server s rozdělenou logikou - prezentační služby a logika u klienta
třívrstvá architektura:
klient - prezentační služby
aplikační server - logika aplikace a dat
databázový server - datové služby
výhody/nevýhody: pružnější rozdělení práce, škálování (více serverů), klientský SW může být hloupější (snadný upgrade nebo není vůbec nutný), centralizace dat -> lepší ochrana
n-vrstvá architektura: ještě podrobnější rozdělení logických celků
distribuované systémy
fyzické uložení na více počítačích, replikace
zdroje:
Architektura klient/server a třívrstvá architektura (J. Zendulka, VUTBR)
fQj7pj , [url=http://ribgfsuijtkf.com/]ribgfsuijtkf[/url], [link=http://ssrikaribwee.com/]ssrikaribwee[/link], http://rdoxqezyubbk.com/
k9d2Y5 , [url=http://ophrmxdmutjl.com/]ophrmxdmutjl[/url], [link=http://cxnjiivzqtxu.com/]cxnjiivzqtxu[/link], http://ldtayvtzspcs.com/