DBMS - Architektura
Projekt DBMS zależy od jego architektury. Może być scentralizowany lub zdecentralizowany lub hierarchiczny. Architektura DBMS może być postrzegana jako pojedyncza lub wielowarstwowa. Architektura wielowarstwowa dzieli cały system na powiązane, ale niezależnen moduły, które można niezależnie modyfikować, zmieniać, zmieniać lub zastępować.
W architekturze jednowarstwowej DBMS jest jedyną jednostką, w której użytkownik bezpośrednio siedzi w DBMS i używa go. Wszelkie zmiany wprowadzone tutaj zostaną wprowadzone bezpośrednio w samym DBMS. Nie zapewnia przydatnych narzędzi dla użytkowników końcowych. Projektanci baz danych i programiści zwykle wolą używać architektury jednowarstwowej.
Jeśli architektura DBMS jest dwuwarstwowa, to musi mieć aplikację, przez którą można uzyskać dostęp do DBMS. Programiści używają architektury dwuwarstwowej, w której uzyskują dostęp do DBMS za pośrednictwem aplikacji. Tutaj warstwa aplikacji jest całkowicie niezależna od bazy danych pod względem działania, projektu i programowania.
Architektura trójwarstwowa
Architektura trójwarstwowa oddziela swoje warstwy od siebie na podstawie złożoności użytkowników i sposobu, w jaki wykorzystują dane obecne w bazie danych. Jest to najczęściej używana architektura do projektowania DBMS.
Database (Data) Tier- W tej warstwie znajduje się baza danych wraz z językami przetwarzania zapytań. Mamy również relacje, które definiują dane i ich ograniczenia na tym poziomie.
Application (Middle) Tier- W tej warstwie znajduje się serwer aplikacji i programy uzyskujące dostęp do bazy danych. Dla użytkownika ta warstwa aplikacji przedstawia abstrakcyjny widok bazy danych. Użytkownicy końcowi nie są świadomi istnienia bazy danych poza aplikacją. Z drugiej strony warstwa bazy danych nie rozpoznaje żadnego innego użytkownika poza warstwą aplikacji. Dlatego warstwa aplikacji znajduje się pośrodku i działa jako pośrednik między użytkownikiem końcowym a bazą danych.
User (Presentation) Tier- Użytkownicy końcowi działają na tej warstwie i nie wiedzą nic o istnieniu bazy danych poza tą warstwą. Na tej warstwie aplikacja może udostępniać wiele widoków bazy danych. Wszystkie widoki są generowane przez aplikacje znajdujące się w warstwie aplikacji.
Architektura wielowarstwowej bazy danych jest wysoce modyfikowalna, ponieważ prawie wszystkie jej komponenty są niezależne i można je zmieniać niezależnie.