Chapter 2
Database Environment
Transparencies
1
© Pearson Education Limited 1995, 2005
Chapter 2 - Objectives
Purpose of three-level database architecture.
Contents of external, conceptual, and internal levels.
Purpose of external/conceptual and
conceptual/internal mappings.
Meaning of logical and physical data independence.
Distinction between DDL and DML.
A classification of data models.
2
© Pearson Education Limited 1995, 2005
Chapter 2 - Objectives
Purpose/importance of conceptual
modeling.
Typical functions and services a DBMS
should provide.
Function and importance of system
catalog.
Software components of a DBMS.
Meaning of client–server architecture and
advantages of this type of architecture for a
DBMS.
Function and uses of Transaction
3
© Pearson Education Limited 1995, 2005
Objectives of Three-Level
Architecture
All users should be able to access same
data.
A user’s view is immune to changes made
in other views.
Users should not need to know physical
database storage details.
4
© Pearson Education Limited 1995, 2005
Objectives of Three-Level
Architecture
DBA should be able to change database
storage structures without affecting the
users’ views.
Internal structure of database should be
unaffected by changes to physical aspects
of storage.
DBA should be able to change conceptual
structure of database without affecting all
users.
5
© Pearson Education Limited 1995, 2005
ANSI-SPARC
Three-Level
Architecture
6
© Pearson Education Limited 1995, 2005
ANSI-SPARC Three-Level
Architecture
External Level
Users’ view of the database.
Describes that part of database that is
relevant to a particular user.
Conceptual Level
Community view of the database.
Describes what data is stored in database
and relationships among the data.
7
© Pearson Education Limited 1995, 2005
ANSI-SPARC Three-Level
Architecture
Internal Level
Physical representation of the database on
the computer.
Describes how the data is stored in the
database.
8
© Pearson Education Limited 1995, 2005
Differences between Three Levels
of ANSI-SPARC Architecture
9
© Pearson Education Limited 1995, 2005
Data Independence
Logical Data Independence
Refers to immunity of external schemas to
changes in conceptual schema.
Conceptual schema changes (e.g.
addition/removal of entities).
Should not require changes to external
schema or rewrites of application programs.
10
© Pearson Education Limited 1995, 2005
Data Independence
Physical Data Independence
Refers to immunity of conceptual schema to
changes in the internal schema.
Internal schema changes (e.g. using different
file organizations, storage structures/devices).
Should not require change to conceptual or
external schemas.
11
© Pearson Education Limited 1995, 2005
Data Independence and the
ANSI-SPARC Three-Level
Architecture
12
© Pearson Education Limited 1995, 2005
Database Languages
Data Definition Language (DDL)
Allows the DBA or user to describe and
name entities, attributes, and relationships
required for the application
plus any associated integrity and security
constraints.
13
© Pearson Education Limited 1995, 2005
Database Languages
Data Manipulation Language (DML)
Provides basic data manipulation operations
on data held in the database.
Procedural DML
allows user to tell system exactly how to
manipulate data.
Non-Procedural DML
allows user to state what data is needed
rather than how it is to be retrieved.
Fourth Generation Languages (4GLs)
14
© Pearson Education Limited 1995, 2005
15
Model danych
Spójny zestaw pojęć służący do opisywania
danych i związków między nimi oraz do
manipulowania danymi i ich związkami, a
także do wyrażania więzów nałożonych na
dane.
Składniki modelu danych:
Część strukturalna;
Część wykonawca;
Opcjonalny zbiór zasad integralności.
16
© Pearson Education Limited 1995, 2005
Model danych
Cel
Reprezentacja struktury danych.
Kategorie modeli danych:
Obiektowe
Rekordowe
Fizyczne.
17
© Pearson Education Limited 1995, 2005
Model danych
Modele danych bazujące na obiektach
Model związków encji
Model semantyczny
Model funkcjonalny
Model obiektowy.
Modele danych bazujące na rekordach
Relacyjny model danych,
Sieciowy model danych,
Hierarchiczny model danych.
Fizyczne modele danych
18
© Pearson Education Limited 1995, 2005
Schemat relacyjny
19
© Pearson Education Limited 1995, 2005
Przykład schematu sieciowego
20
© Pearson Education Limited 1995, 2005
Przykład schematu hierarchicznego
21
© Pearson Education Limited 1995, 2005
Modelowanie konceptualne (logiczne)
Modelowanie konceptualne stanowi
podstawę systemu, na którym oparte są
wszystkie perspektywy użytkowników.
Model taki powinien w pełni i wiernie
odzwierciedlać dane rozważanej organizacji.
Modelowanie konceptualne jest procesem
opracowywania modelu wykorzystania
informacji niezależnego od szczegółów
implementacyjnych.
Wynikiem jest model logiczny danych.
22
© Pearson Education Limited 1995, 2005
Funkcje DBMS
Zapis, odczyt i aktualizacja danych.
Katalog dostępny dla użytkowników.
Obsługa transakcji.
Sterowanie współbieżnością.
Obsługa odtwarzania bazy.
23
© Pearson Education Limited 1995, 2005
Funkcje DBMS
Obsługa autoryzacji.
Obsługa transmisji danych.
Obsługa integralności danych.
Usługi wspierające niezależność danych.
Programy narzędziowe.
24
© Pearson Education Limited 1995, 2005
Katalog systemowy
Repozytorium informacji opisujących dane
przechowywane w bazie, nazywanych inaczej
metadanymi.
Jest to jeden z podstawowych składników DBMS.
Zazwyczaj zawiera:
Nazwy, typy i rozmiary elementów danych;
Więzy przypisane do elementów danych;
Nazwy uprawnionych użytkowników;
Nazwy elementów danych, do których dany
użytkownik ma dostęp, wraz z typami dozwolonego
dostępu;
Statystykę aktywności.
25
© Pearson Education Limited 1995, 2005
Składniki DBMS
26
© Pearson Education Limited 1995, 2005
Składniki zarządcy bazy danych (DM)
27
© Pearson Education Limited 1995, 2005
Architektury wielodostępnego
DBMS (SZBD)
Przetwarzanie zdalne
Serwer plików
Klient-serwer
28
© Pearson Education Limited 1995, 2005
Przetwarzanie zdalne
Architektura tradycyjna.
Komputer centralny z wieloma terminalami.
Architektura zanikająca.
29
© Pearson Education Limited 1995, 2005
Serwer plików
Do serwera plików podłączonych jest poprzez
sieć wiele stacji roboczych.
Baza danych rezyduje na serwerze plików.
DBMS i aplikacje są zainstalowane na każdej ze
stacji roboczych.
Wady:
Duże natężenie ruchu w sieci.
Dla każdej stacji roboczej potrzeban jest pełna kopia
DBMS.
Trudniejsze w realizacji są: współbieżność,
odzyskiwanie danych po awari i kontrola
integralności danych.
30
© Pearson Education Limited 1995, 2005
Architektura serwera plików
31
© Pearson Education Limited 1995, 2005
Tradycyjna dwuwarstwowa architektura
Klient-Serwer
Klient (warstwa 1) zarządza interfejsem
użytkownika i obsługuje aplikacje.
Serwer (warstwa 2) przechowuje bazę danych i
DBMS.
Zalety:
Szerszy dostęp do istniejących baz danych;
Wyższa wydajność systemu;
Możliwa redukcja kosztów sprzętu;
Redukuje koszty komunikacji;
Rozszerza zakres niesprzeczności danych.
32
© Pearson Education Limited 1995, 2005
33
© Pearson Education Limited 1995, 2005
Tradycyjna dwuwarstwowa architektura
Klient-Serwer
34
© Pearson Education Limited 1995, 2005
Tradycyjna dwuwarstwowa architektura
Klient-Serwer
W tradycyjnej architekturze istniały dwa problemy
unimożliwiające skalowalność systemu:
‘Gruby’ klient wymagał znaczących zasobów do
efektywnej obsługi na komputerze klienta.
Znaczące nakłady na administrację po stronie klienta.
W 1995 zaproponowano wersję trójwarstwową
(np. dla intranetu), z której każda może być
obsługiwana przez inną platformę – np.
przeglądarka internetowa może być klientem.
35
1995, 2005
Trójwarstwowa architektura Klient-
Serwer
Zalety:
‘Cienki’ klient, wymaga mniej kosztownego sprzętu.
Konserwacja aplikacji jest scentralizowana.
Łatwiejsza w modyfikacji, czy zastąpieniu jednej
warstwy inną bez efektów ubocznych.
Rozdzielenie sterowania aplikacją od funkcji bazy
danych ułatwia zarządzanie obciążeniem.
Łatwa migracja do środowiska internetowego.
36
© Pearson Education Limited 1995, 2005
Trójwarstwowa architektura Klient-
Serwer
37
© Pearson Education Limited 1995, 2005
Trójwarstwowa architektura Klient-
Serwer
Monitory przetwarzania transakcji (TPM)
Monitor przetwarzania transakcji to program,
który steruje przepływem danych pomiędzy
klientami, z serwerem. Musi udostępniać
niesprzeczne środowisko, służące w
szczególności do przetwarzania transakcji on-
line (Online Transaction Processing - OLTP).
38
© Pearson Education Limited 1995, 2005
TPM jako środkowa warstwa architektury
trójpoziomowej klient-serwer
39
© Pearson Education Limited 1995, 2005