Databázové systémy Architektury DBS
Architektury databázových systémů DBS zahrnuje dvě základní vrstvy: SŘBD – procesy na pozadí – backend - server – procesy realizující všechny základní funkce Aplikace – procesy na popředí – frontend - klient – aplikace využívající služeb SŘBD
Základ kooperace: Faktory ovlivňující architekturu - požadavky na interoperabilitu zdrojů - růst velikosti zdrojů - růst počtu klientů
Základ kooperace: Typy služeb v databázové technologii - prezentační služby – příjem vstupů, zobrazování výsledků - prezentační logika – řízení interakce (menu, obrazovek) - logika aplikace – operace realizující algoritmus aplikace - logika dat – podpora operací s daty (integritní omezení) - datové služby – akce s DB (definice, manipulace)
Typy architektur: Architektura typu „mainframe“ Systémy file-server Systémy klient-server Distribuované databázové systémy
Architektura typu „mainframe“ 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.
Architektura file-server SŘBD a příslušné databázové aplikace jsou provozovány na jednotlivých počítačích, data jsou umístěna na file-serveru a mohou být sdílena . Souvisí zejména s rozšířením osobních počítačů a sítí LAN. Aby nedocházelo ke kolizím při přístupu více uživatelů k jedněm datům, musí SŘBD používat vhodný systém zamykání.
Architektura klient-server Je založena na lokální síti (LAN), PC a databázovém serveru. Na personálních počítačích běží klientská aplikace. Dotaz se předává pomocí jazyka SQL na databázový server, který jej vykoná a vrátí výsledky zpět na personální počítač. Architektura klient-server redukuje přenos dat po síti. Architektura klient-server může být: dvouvrstvá vícevrstvá
dvouvrstvá architektura
vícevrstvá architektura
Přínos vícevrstvé architektury - pružnější rozdělení práce - lze použít horizontální(více serverů) i vertikální(výkonnější server) škálování - aplikace mohou běžet na levnějších zařízeních - na klientských stanicích lze používat oblíbený prezentační software - standardizovaný přístup umožňuje zpřístupnit další zdroje - centralizace dat podporuje účinnější ochranu - u třívrstvé architektury centralizace údržby aplikace, možnost využití sdílených objektů (business objects) několika aplikacemi
Distribuované databázové systémy Distribuovaná databáze je 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. Klient Dotaz Odpověď Server Vzdálený dotaz a odpověď Databázový server 1 Databázový server 2
Výhody a nevýhody distribuovaných DBS Efektivita zpracování - data můžou být uložena blízko místa nejčastějšího používání Zvýšená dostupnost Vyšší výkonnost Rozšiřitelnost Nevýhody Složitost Distribuce řízení Bezpečnost
Požadavky na „ideální” DDBS uživateli se jeví distribuovaný systém přesně jako nedistribuovaný lokální autonomie nespoléhání se na centrální uzel nepřetržitá činnost nezávislost na umístění dat (transparentnost) nezávislost na fragmentaci nezávislost na replikaci dat distribuované zpracování dotazu distribuovaná správa transakcí nezávislost na HW, OS, SŘBD, komunikační síti
Některé problémy DDBS Správa systémového katalogu přenos v síti je pomalý ⇒ minimalizace počtu a objemu zpráv Zpracování dotazů - globální/lokální optimalizace Správa systémového katalogu Šíření aktualizace při replikaci - schéma s primární kopií, …
- schéma s primární kopií - nebezpečí globálního uváznutí Zotavení po chybách a poruchách – dvoufázový potvrzovací protokol (2PC) Souběžnost - schéma s primární kopií - nebezpečí globálního uváznutí
Architektura kompozitního DBS Kompozitní – logicky centralizované