background image

Baza   danych   jest   modelem   pewnej   rzeczywistości,   tą   rzeczywistość   realną   nazywamy
obszarem analizy.
Istotne obiekty analizy:
-

bloki przedmiotowe- moduły

-

studenci

Istotne obiekty analizy nazywamy  klasami lub encjami. Związki, które zachodzą między
klasami (encjami) są częścią obszaru analizy. Każda klasa posiada właściwości (atrybuty).
Mówimy, że klasy są zidentyfikowane poprzez pewne informacje przechowywane na temat
obiektów tej klasy, np.: student identyfikowany jest poprzez nazwisko, imię, numer albumu.
Baza danych jest zbiorem danych reprezentujących pewien obszar analizy. Jednostka danych
(lub potocznie dana) jest symbolem lub zbiorem symboli reprezentujących jakiś fakt, jakąś
rzecz. Aby fakt był użyteczny musi zostać zinterpretowany. Zinterpretowane dane nazywa się
często  informacjami. Informacje mają przypisane znaczenie, np.: liczba 23 może oznaczać
wiek, numer albumu; bez interpretacji nie wiemy co ona oznacza. Mówimy, że baza danych
jest   zbiorem   faktów   (pozytywnych)   o   pewnym   obszarze   analizy.   Baza   danych,   w   ściśle
określonej chwili, jest w pewnym stanie, czyli jest to zbiór faktów dotyczących bazy, zbiór
faktów prawdziwych w danej chwili.
Baza zawiera dwa podstawowe elementy:
- zbiór definicji opisujących strukturę – schemat bazy danych tworzenie schematu – projekt
bazy lub projektowaniem bazy
- łączny – całkowity zbiór danych w bazie danych.
Integralność oznacza, że baza jest dokładnym odbiciem swojego obszaru analizy.
Proces   integralności   powinien   zapewnić   przejście   zmianę   bazy   danych   poprzez   stany
poprawne.
Integralna   baza   nie   powinna   posiadać   powtarzających   się   faktów   lub   przejść,   czyli   nie
powinna posiadać replikacji 
Transakcje są to zdarzenia powodujące zmianę stanu bazy danych.
Integralność   jest   realizowana   poprzez    więzy   integralności    -   reguły   określające   w   jaki
sposób baza ma pozostać dokładnym odbiciem swojego obszaru analizy.
Więzy dzielimy na:
-  więzy   statyczne   (niezmienniki   stanu)-  są   używane   do   sprawdzania   czy   wykonywana
transakcja nie zmienia stanu bazy w stan niepoprawny.
więzy przejść- są to reguły wiążące ze sobą stany bazy. Więzy przejść są ograniczeniami
nakładanymi na same przejścia.
Podstawowe funkcje bazy danych
Do wykonywania operacji na bazie używamy dwóch rodzajów funkcji:
- funkcje aktualizujące – dokonują one fizycznie zmiany w bazie – np. zaliczamy transakcje
zmieniające bazę z jednego stanu w drugi , wiąże się z nimi ciąg warunków reprezentujących
więzy integralności oraz ciąg akcji określających co powinno się zdarzyć, jeżeli warunki będą
prawdziwe.
- funkcje zapytań  – za ich pomocą wydobywa się dane z bazy danych - nie modyfikują
samej bazy, głównie sprawdzają czy fakt lub grupa faktów jest spełniona w danym stanie
bazy danych. Funkcje te zwracają nie określenie czy zachodzi prawda lub fałsz, ale zwracają
pewien zbiór wartości.

Każdy system bazy danych, używa pewnych formalizmów nazywanych  modelem danych,
inaczej są to ściśle określone reguły za pomocą, których można konstruować system bazy
danych. Baza danych  może być  używana przez jednego użytkownika, jednak często baza
danych jest wielodostępna. Ważne jest zachowanie spójności bazy danych, żeby nie zawiodła
w przypadku, gdy korzysta z niej dwóch użytkowników.

background image

Bazą   danych   nazywamy   zbiór   danych   o   określonej   strukturze   zapisany   na   zewnętrznym
nośniku   pamięci   komputera   mogącym   zaspokoić   potrzeby   wielu   użytkowników
korzystających z niego w sposób selektywny w dogodnym dla siebie czasie.
Baza danych jest to zbiór danych zorganizowanych przez system zarządzania bazą danych 
System zarządzania bazą danych SZBD
SZBD 

 DBMS

DBMS – DATABASE MANAGEMENT SYSTEM
SZBD   –   zorganizowany   zbiór   narzędzi   umożliwiających   dostęp   i   zarządzanie   bazą   lub
wieloma bazami danych.
Elementarne zadania SZBD
1.Umożliwienie użytkownikowi utworzenia nowej bazy danych  i określenie jej schematu,
czyli logicznej struktury danych za pomocą specjalizowanego języka definiowania danych.
2.Udostępnianie   użytkownikowi   możliwości   tworzenia   zapytań   o   dane   –   query
(kwerend-zapytania)   oraz   aktualizowania   danych   za   pomocą   języka   zapytań   –   języka
operowania danymi = język zapytań.
3.Zapewnienie   możliwości   przechowywania   ogromnej   ilości   danych   przez   dłuższy   czas
chroniąc je przed przypadkowym, nieprawidłowym dostępem oraz umożliwianie efektywnego
dostępu do danych z poziomu języka zapytań i operacji na danych.
4.Sterowanie   jednoznacznym   dostępem   do   danych   przez   wielu   użytkowników   z
zapewnieniem bezkolizyjności oraz ochrony danych przed przypadkowym uszkodzeniem
Funkcje systemu SZBD
1. Zarządzanie plikami
-

dodawanie nowych plików do bazy danych

-

usuwanie plików z bazy danych

-

modyfikowanie struktury istniejących plików

-

wstawianie nowych danych do istniejących plików

-

modyfikowanie danych w istniejących plikach

-

usuwanie danych z istniejących plików

2. Wyszukiwanie informacji

-

wydobywanie danych z istniejących plików do   stosowania przez użytkowników

-

wydobywanie danych z istniejących plików przez programy użytkowe  

3. Zarządzanie bazą danych
-

tworzenie i monitorowanie użytkowników bazy danych

-

ograniczanie dostępu do plików w bazie danych

-

monitorowanie działania samej bazy danych.

Właściwości SZBD
1.Współdzielenie   danych,   przez   niektórych   nazywane   współbieżnością   dostępu   lub
korzystanie z bazy.
2.Integracja danych – jeden logiczny element w bazie powinien być przechowywany tylko w
jednym miejscu.
3.Integralność danych – zmiany danych winny być odzwierciedlone w wielu miejscach, gdzie
następuje   odwołanie   do   tych   zmiennych   lub   „możliwość   stwarzania   użytkownikowi
definiowania reguł pozwalających zachować warunki integralności”.
4.Poufność i bezpieczeństwo danych.
5.Abstrakcja   i   opis   danych   –   określenie,   wydzielenie   niektórych   właściwości   obiektów
przechowywanych w bazie. 

Poziom opisu danych:

-

opis logiczny (z punktu widzenia użytkownika)

-

opis fizyczny

background image

6.Niezależność danych – oddzielenie danych od procesów, które te dane będą używać.
7.Niezawodność – awaria sprzętowa lub programowanie powinna wpłynąć na integralność
bazy po usunięciu awarii. 
Właściwości powyżej wymienione są w danej bazie osiągnięte tylko częściowo.
Zapytania mogą być sformułowane dwojako:
-poprzez interfejs zapytań bezpośrednich
-poprzez interfejs programów użytkowych
Aktualizacja – dotyczy operacji zmiany danych dwoma drogami:
-poprzez interfejs zapytań bezpośrednich
-poprzez interfejs programów użytkowych
Modyfikacje (modyfikacja samego schematu DBMS) dotyczy administratora bazy.
Moduł   Zarządzania   Pamięcią  w   prostych   systemach   zarządzania   może   bezpośrednio
odpowiadać systemowi plików z podstawowego systemu operacyjnego. 
Moduł Zarządzania Plików  przechowuje dane o miejscu zapisania pliku na dysku i jest
odpowiedzialny za ich przesyłanie w postaci blokowej.
Moduł   Zarządzania   Buforami  obsługuje   pamięć   operacyjną   i   jest   odpowiedzialny   za
przydzielanie odpowiednich obszarów pamięci operacyjnej i przydzielenie ich blokom.
Procesor   Zapytań   nazywany   jest  Modułem   Zarządzania   Zapytaniami,   przekształca
zapytania   lub   operacje   na   bazie   formułowane   zazwyczaj   w   języku   „bardzo   wysokiego
poziomu”

 

(np. SQL) w ciąg poleceń żądających dostarczenia odpowiednich danych. Najtrudniej jest
optymalizować zapytania, czyli generować odpowiedzi w najkrótszym możliwie czasie.
Moduł   Zarządzania   Transakcjami  ma   gwarantować   pewność   i   kompletność
przeprowadzania   wszystkich   operacji   „w   jednym   ciągu”.   Opisuje   się   to   za   pomocą
właściwości   poprawności   przeprowadzenia   transakcji  ACID  (Atomicity  Consistency
Isolation Durability – Niepodzielność Spójność Izolacja Trwałość).
1. Atomicity – jest wykonywana albo cała transakcja, albo nic
2.   Consistency  –   po   zakończeniu   transakcji   baza   musi   zachowywać   spójność   –
niesprzeczność
3. Isolation – przy jednoczesnym przeprowadzaniu kilku transakcji ich działania nie mogą na
siebie wpływać
4. Durability – wynik transakcji nie może być utracony z powodu awarii systemu
Do realizacji tych 4 własności wykorzystuje się:
- blokady MZT blokuje elementy, których dotyczy wykonywana transakcja
- logi – MZT dokonuje zapisu na dysku takich danych jak:

- rozpoczęcie transakcji
- zmiany w bazie przez transakcję
- zakończenie transakcji

-  zatwierdzenie   transakcji  –  w  chwili  gdy  transakcja  kończy  działanie     jest  gotowa  do
zatwierdzenia   (zmiany  są kopiowane  do  logu, log  jest  zapisywany  na  HDD, aktualizacja
samych danych)
Modele danych
Relacyjny Model Danych

-

Klasyczny

-

Hierarchiczny

-

Sieciowy

-

Obiektowy Model Danych

RMD– jest tylko jedna struktura danych – relacja. Relacja to tabela, dla której jest spełniony
zbiór 7 zasad.
ZASADY:

KWWSQRWDWHNSOED]\GDQ\FKMDNRPRGHOU]HF]\ZLVWRVFL"QRWDWND