Presentation is loading. Please wait.

Presentation is loading. Please wait.

Architektura systemów baz danych SYSTEMY BAZ DANYCH.

Similar presentations


Presentation on theme: "Architektura systemów baz danych SYSTEMY BAZ DANYCH."— Presentation transcript:

1 Architektura systemów baz danych SYSTEMY BAZ DANYCH

2 Terminologia  Baza danych jest to zbiór danych trwałych, które są wykorzystywane przez system aplikacji danej organizacji.  Baza danych, rozumiana jako zbiór danych, wraz z aplikacją bazy danych stanowią system bazy danych.

3 Aplikacja bazy danych  Aplikacja bazy danych jest to program lub zespół programów, które pomagają użytkownikowi pracować z bazą danych.  Celem aplikacji jest:  odizolowanie samej bazy od użytkownika  zabezpiecza zbiór danych przed przypadkowym bądź celowym uszkodzeniem

4 Systemy baz danych  Można wyróżnić pięć zasadniczych komponentów tworzących systemy z bazą danych:  sprzęt  oprogramowanie  dane  procedury  ludzie

5 Systemy baz danych  Sprzęt:  Zakres wymagań sprzętowych zależy od potrzeb użytkownika, konkretnych rozwiązań czy wreszcie wymagań samego DBMS  Oprogramowanie:  Składowymi oprogramowania są zarówno same Systemy Zarządzania Bazą Danych jak i aplikacje i programy użytkowe, systemy operacyjne oraz oprogramowanie sieciowe

6 Systemy baz danych  Dane:  Pod pojęciem danych rozumieć należy zarówno dane operacyjne, jak i meta dane, czyli „dane o danych”. Strukturę danych określa schemat bazy danych  Procedury:  Procedury precyzują zasady projektowania i użytkowania bazy danych

7 Systemy baz danych  Ludzie:  administratorzy baz danych  projektanci baz danych  projektanci i programiści aplikacji bazodanowych  użytkownicy końcowi.

8 Architektura systemów baz danych  Opis elementów stanowiących system baz danych, sposób w jaki są one ze sobą powiązane oraz logika tej organizacji składają się na architekturę systemu baz danych.  Architektura systemów baz danych rozwijała się od tzw. architektury jednowarstwowej, w kierunku architektury wielowarstwowej.

9 Systemy baz danych - rozwój  Cztery ważne, z punktu widzenia ewolucji systemów baz danych zdarzenia:  pojawienie się sieci komputerowych  Internet  System WWW  Intranet

10 Architektura jednowarstwowa  Model jednowarstwowy stanowi samodzielny system lub pojedyncza aplikacja, nie wymagające żadnej zewnętrznej komunikacji do wykonywania zadań.  Szczególnym przypadkiem architektury jednowarstwowej są niesamodzielne maszyny terminalowe, pozbawione mocy obliczeniowej, połączone do serwera. W takim przypadku system serwera razem z terminalami jest najczęściej definiowany jako jedna warstwa.

11 Architektura klient-serwer  Termin architektura typu klient serwer wywodzi się od sposobu interakcji komponentów softwarowych z systemem:  klient jest procesem który potrzebuje pewnych zasobów  proces serwera tych zasobów dostarcza

12

13 Architektura klient-serwer  Na aplikację bazy danych można spojrzeć jako na zestaw kilku warstw, wykonujących ściśle określone zadania  Warstwa jest pojęciem logicznym, umożliwiającym zaprojektowanie programu prostszego w budowie i obsłudze

14 Architektura komunikacyjna klient - serwer

15 Architektura dwuwarstwowa  Dwie warstwy oprogramowania:  warstwa serwera –proces serwera  warstwa klienta - proces klienta  Lokalizacja obu procesów:  mogą one znajdować się na jednym komputerze (baza lokalna)  zazwyczaj serwer umieszczany jest na innym komputerze niż procesy klienta, komunikując się poprzez LAN

16 Architektura dwuwarstwowa  Podział zadań w architekturze klient serwer:  na serwerze znajdują się dane oraz oprogramowanie zapewniające dostęp do danych, tzw. SZBD  po stronie serwera następuje również realizacja zapytań, realizacja ograniczeń oraz przetwarzanie danych  klient natomiast jest odpowiedzialny za prezentację danych – po stronie klienta jest umieszczony interfejs użytkownika.  klient realizuje logikę aplikacji oraz również jest odpowiedzialny za przetwarzanie danych

17 Architektura dwuwarstwowa  Zalety:  bezpieczeństwo serwera  minimalizacja ruchu w sieci  możliwość przetwarzania danych bezpośrednio na serwerze  odciążenie centralnego komputera od obsługi interfejsu użytkownika  budowa sporych systemów bez użycia wielkich komputerów

18 Architektura dwuwarstwowa  Wady:  utrudnienia związane z administrowaniem: o konieczność administrowania wieloma komputerami  utrudnione administrowanie aplikacjami  duże koszty eksploatacji PC-tów  niski poziomem bezpieczeństwa  brak kontroli nad działaniami użytkowników

19 Przykłady  Program napisany w języku ogólnego przeznaczenia (np.: Delphi, C#) komunikujący się bezpośrednio z serwerem SQL (np.: PostgreSQL, Oracle),DelphiC#SQL  Kontrolka COM/ActiveX z podłączonymi klientami usługi,  Przeglądarka internetowa współpracująca z serwerem HTTP, oferującym statyczne strony.

20 Architektura trójwarstwowa  Dzieli aplikację bazy danych na trzy, współpracujące ze sobą części:  Warstwę dolną, realizującą dostęp do bazy danych,  Warstwę środkową, zawierającą reguły dziedziczenia danych,  Warstwę górną, stanowiącą interfejs użytkownika

21 Stacja kliencka Warstwa pierwsza * Interfejs u ż ytkownika

22 Architektura trójwarstwowa

23  Schemat działania:  Warstwa klienta jest odpowiedzialna za wizualizację graficznego interfejsu użytkownika oraz wysyłanie żądań do serwera. Klient komunikuje się z serwerem poprzez protokół HTTP.  Serwer obsługuje żądania, uruchamiając aplikację przetwarzającą żądania klientów i generującą dynamiczne dokumenty.  Warstwa danych poprzez język SQL umożliwia aplikacji dostęp do danych oraz ich zapisywanie lub usuwanie.  Serwer wysyła przeglądarce odpowiedź w postaci pliku HTML i dołączonych plików graficznych, skryptów oraz arkuszy CSS.

24 Architektura trójwarstwowa  Warstwa dolna to prawie zawsze programy wykonywane na serwerze, obsługujące zlecenia warstwy środkowej  Warstwy górna i środkowa mogą być scalone w jeden program bądź rozdzielone  Warstwa środkowa może być klientem lub serwerem  Warstwa górna jest zawsze klientem

25 Architektura trójwarstwowa  Gdy w warstwie klienta lokowany jest jedynie interfejs użytkownika, który realizuje prezentację danych i przekazywanie danych do warstwy aplikacji mówi się o tzw. „chudym (cienkim) kliencie” ze względu na małą ilość funkcji, jaką w tej technologii realizuje strona klienta.

26 Warstwa górna interfejs u( ż ytkownika) Warstwa ś rodkowa )oprogramowanie bazy danych( Dost ę p do bazy danych Baza danych U ż ytkownik Warstwa dolna (serwer baz danych) Klient Serwer Baza danych sie ć ć

27 Architektura trójwarstwowa  Cienki klient:  interfejs użytkownika jest stroną WWW, którą obsługuje przeglądarka internetowa  Warstwa druga realizuje funkcje systemu oraz przetwarzanie danych o kontaktuje się z warstwą klienta i serwerem lub serwerami bazy danych poprzez sieć lokalną LAN lub WAN  Warstwa trzecia jest odpowiedzialna za fizyczne przetwarzanie i magazynowanie informacji i najczęściej stanowią ją serwery baz danych

28 Architektura trójwarstwowa  Bardziej złożone interfejsy mogą realizować zarówno interfejs użytkownika jak i część logiki aplikacji.  Oznacza to, że klient zawiera więcej niż jedną warstwę, czyli jest klientem wielowarstwowym. Mamy wtedy do czynienia z tzw. „grubym klientem”

29 Architektura trójwarstwowa  Korzyści:  większość zalet architektury klient serwer  prostsze projektowanie  prostsza implementacja  możliwość powtórnego wykorzystania komponentów po stronie serwera  łatwość rozprowadzania w sieci (równomierne obciążenie i odporność na awarie)

30 Przykłady architektury 3-warstwowej  przeglądarka internetowa współpracująca z serwerem aplikacji (HTTP ze wsparciem PHP, ASP, JSP, XSQL lub innych narzędzi), korzystającym z bazy SQL - klasyczny model trójwarstwowy,PHPASPJSPXSQLSQL  hierarchiczny system synchronizacji czasu - NTP (network time protocol).


Download ppt "Architektura systemów baz danych SYSTEMY BAZ DANYCH."

Similar presentations


Ads by Google