background image

Powszechność baz danych 30-10-

2012

• Bazy danych są obecnie szeroko stosowane i 

znaleźć je można w firmach lub organizacjach o 
różnej wielkości, wykorzystuje się je również w 
zastosowaniach domowych.

• Życie codzienne często przynosi kontakt  z bazami 

danych:

– Konto w banku
– Kod towaru w sklepie
– Rozkład jazdy PKP, PKS, MPK
– Spis pracowników przedsiębiorstwa
– Wizyta u lekarza, pobyt w szpitalu
– Wizyta w bibliotece, wypożyczalni kaset

background image

Definicja bazy danych

• Bazę danych można zdefiniować jako zbiór 

wzajemnie powiązanych danych pamiętanych bez 
zbędnej redundancji (nadmiarowości), służących 
jednemu lub wielu zastosowaniom w sposób 
optymalny;

• Dane pamiętane są w taki sposób, że są niezależne 

od programów, które z nich korzystają; przy 
dołączeniu i modyfikacji oraz wyszukiwaniu danych 
stosuje się wspólną metodę umożliwiającą 
sprawdzenie poprawności wykonywanych operacji;

• System zawiera zbiór baz danych, jeżeli są one 

całkowicie rozłączne pod względem struktury;

background image

Inna definicja baz danych

• Baza danych jest zbiorem 

powiązanych danych.

• Baza danych jest abstrakcyjnym 

informatycznym odzwierciedleniem 
wybranego fragmentu rzeczywistości 
nazywanego „miniświatem”. Zmiany 
w tym świecie są odzwierciedlane w 
bazie danych.

background image

Baza danych – odzwierciedlenie 

miniświata

• Mówiąc o wybranym fragmencie rzeczywistości mamy 

na myśli rzeczywistość dwojakiego rodzaju: fizyczną i 
konceptualną (abstrakcyjną).

• Rzeczywistość fizyczna – to ta, którą postrzegamy na 

co dzień wokół nas naszymi zmysłami. Przykładem może 
być rzeczywistość Politechniki, w której dostrzegamy, z 
jednej strony studentów i pracowników, z drugiej indeksy, 
podręczniki akademickie, sale dydaktyczne.

• Rzeczywistość konceptualna – to ta, która istnieje 

zwykle w wyobraźni osób. Przykładem takiej 
rzeczywistości jest projekt nowej wersji obrabiarki, której 
wizja istnieje jedynie w sferze dyskusji i wyobraźni 
zespołu projektantów.

background image

Baza danych – wiernie 

odzwierciedlenie miniświata

• Baza danych jest logicznie spójnym zbiorem 

danych posiadających określone znaczenie.

• Logiczna spójność jest tu rozumiana jako 

wierność odwzorowania miniświata. Innymi 
słowy, baza danych nie może być w stanie, 
który nigdy nie zachodzi w modelowanych 
miniświecie.

• Przykładowo, baza danych, w której 

ewidencjonowani są studenci Politechniki nie 
może zawierać informacji o osobach, które na 
tej uczelni nie studiują.

background image

Baza danych - cel

• Baza danych jest logicznie spójnym zbiorem 

danych posiadających określone znaczenie.

• Reprezentuje pewien ragment rzeczywistości 

zwanego „miniświatem”. Zmiany w 
„miniświecie” odzwierciedlane są w bazie 
danych.

• Baza danych jest projektowana, budowana i 

wypełniana danymi dla określonych celów. Ma 
określoną grupę użytkowników korzystających 
w określony sposób z zawartej w niej 
informacji.

background image

Baza danych - użytkownicy

• Projektant bazy danych

– Określa strukturę bazy danych, przygotowuje 

programy (aplikacje) ułatwiające korzystanie z bazy 
danych przez innych użytkowników

• Użytkownik końcowy bazy danych wypełnia i 

przetwarza bazę danych

– Użytkownik zaawansowany
– Użytkownik początkujący (naiwny)

• Administrator bazy danych

– Posiada narzędzia diagnostyczne
– Stroi bazę danych (strojenie – „dobieranie 

parametrów”)

background image

Baza danych - 

podsumowanie

• Baza danych

– Ma swoje źródło danych
– Posiada określony krąg użytkowników
– Odnosi się do pewnego fragmentu 

rzeczywistości (np. przedsiębiorstwo, 
biblioteka, uczelnia).

background image

System zarządzania bazą 

danych

• System zarządzania bazą danych (SZBD) 

jest zbiorem programów umożliwiających 
tworzenie i eksploatację bazy danych.

• Na funkcje te składa się:
1. Definiowanie bazy danych ( określenie 

typów i struktur danych)

2. Konstruowanie bazy danych (zapamiętanie 

danych na nośniku)

3. Przetwarzanie bazy danych 

(manipulowanie, operowanie danymi)

background image

System bazy danych

• System bazy danych składa się z bazy 

danych i systemu zarządzani bazą danych.

• Użytkownicy
• Transakcje(zapytania)
• SZBD 

– Moduł zarządzania transakcjami
– Moduł zarządzania dostępem do danych

• Baza danych
• Przykłady systemów baz danych : Oracle, 

BD2, Informix.

background image

Systemy baz danych

• Wśród podstawowych korzyści wynikających ze stosowania 

systemów baz danych wyróżnia się:

1. Zmniejszenie nadmiarowości przechowywanych 

danych. Polega na tym, że dane wykorzystywane przez 
różne aplikacje nie są nigdy duplikowane. W konsekwencji 
ułatwia to zachowanie ich poprawności.

2. Współdzielenie danych. Dane składowane w bazie 

danych nie są zazwyczaj trzymane do użytku jednej osoby. 
Oczekuje się zwykle, że baza danych będzie używana przez 
więcej niż jedną osobę, możliwe, że w tym samym czasie.

3. Bezpieczeństwo danych. Tylko uprawnieni użytkownicy 

mogą odczytywać i przetwarzać dane w bazie danych. 
(Określanie praw dostępu dla grup użytkowników).

background image

System baz danych -cd

4. Różnorodność sposobów widzenia danych. Te same 

dane mogą być widziane wróżny sposób przez różnych 
użytkowników. Dotyczy to zarówno zakresu, jak i 
sposobu przedstawiania danych.

5. Reprezentacja złożonych związków pomiędzy 

danymi. Polega na tym, że za pomocą prostych, 
intuicyjnie dobrze zrozumiałych mechanizmów można 
modelować związki pomiędzy różnymi danymi.

6. Kopia zapasowa & odtwarzanie. Ochrona przed 

awariami systemu polegająca na automatycznym 
tworzeniu przez SBD kopii zapasowej oraz możliwości 
odtworzenia poprawnego stanu bazy danych w 
przypadku nieprzewidzianej awarii (np. brak zasilania).

background image

Języki baz danych

• Użytkownik (projektant) bazy danych ma do dyspozycji 

różne języki, za pomocą których porozumiewa się z bazą 
danych:

• Język zapytań (ang. SQL – Structured Query 

Language), który umożliwia pobieranie z bazy danych 
informacji zgodnych z wyspecyfikowanymi warunkami.

• 1. języki definiowania danych (ang. DDL- Data 

Definition Language), który umożliwia definiowanie 
struktury danych przechowywanych w bazie danych.

• 2.Język manipulowania danymi (ang. DML – Data 

Manipulation Language), który umożliwia 
wypełnianie bazy nowymi danymi, ich aktualizację lub 
usuwanie.

background image

Klasyfikacja systemów baz 

danych

• SBD można klasyfikować według 

różnych kryteriów:

• 1. Ze względu na stosowany model 

danych (podstawowe kryterium)

• Model sieciowy (1961 Bachman)
• Model hierarchiczny (1965-1970)
• Model relacyjny (1970 Codd)
• Model obiektowy (1985, 1990)

background image

Klasyfikacja systemów baz 

danych

• 2. Ze względu na liczbę 

użytkowników (system jedno – lub 
wielodostępny)

• Systemy jednoużytkowe obsługują w 

danej chwili tylko jednego 
użytkownika.

• Systemy wieloużytkowe dotyczą 

większości systemów baz danych, 
obsługują jednocześnie wielu 
użytkowników.

background image

Klasyfikacja systemów baz 

danych

• 3.Ze względu na liczbę węzłów (ang. Site) 

(system scentralizowany lub rozproszony)

• Baza danych scentralizowana – dane 

pamiętane są w jednym komputerze (na 
pojedynczym węźle); może obsługiwać wielu 
użytkowników, ale rezyduje na jednym 
komputerze.

• Rozproszona baza danych – dane 

pamiętane są na kilku węzłach (komputerach), 
połączonych siecią komputerową;

background image

Kiedy nie stosować SBD?

• Stosowanie systemów baz danych nie zawsze jest 

uzasadnione. Nie zaleca się stosowania SBD:

• W przypadku ograniczonych możliwości finansowych 

SZBD (z prawdziwego zdarzenia) jest drogi, najczęściej 
wymaga kupna lub rozbudowy sprzętu.

• w przypadku gdy mechanizmy SBD, w zakresie 

współbieżności dostępu, bezpieczeństwa, odtwarzania po 
awarii są nadmiarowe.

Jeden użytkownik kilku użytkowników pracujących w ściśle 
skoordynowany sposób (np. sekwencyjnie).

• w przypadku  przechowywania prostych danych o niskim 

stopniu wzajemnego powiązania oraz używania prostych 
programów
, które nie będą rozwijane w przyszłości.

background image

Model danych

• Fundamentalną cechą systemów baz danych jest to, że 

zapewniają one pewien poziom abstrakcji widzenia 
danych
 przez użytkowników, przesłaniając szczegóły 
dotyczące fizycznej organizacji danych.

• Uzyskuje się to dzięki oferowanym przez bazy danych 

modelom danych.

• Model danych to zbiór koncepcji stosowanych do 

opisu struktury bazy danych (typy danych, związki 
pomiędzy nimi i ograniczenia nałożone na dane).

• Model ma za zadanie wprowadzić pośrednią warstwę 

abstrakcyjną, która pozwala łatwiej analizować obiekty 
świata rzeczywistego.

background image

Model danych

• Wśród modeli danych wyróżniamy następujące kategorie:

– Konceptualne modele danych ( koncepcyjne, semantyczne) są to 

modele najbardziej zbliżone poziomem abstrakcji do wymagań 
projektantów baz danych, stosowane w pierwszych etapach projektów w 
celu weryfikacji wyróżnionych w miniświecie obiektów i związków między 
nimi.

– Implementacyjne modele danych stosowane do transformacji 

wcześniej przygotowanego modelu konceptualnego do konkretnego 
modelu danych bazy danych, a więc do postaci, która jest zgodna z 
wymaganiami określonego SZBD. Wśród modeli implementacyjnych 
wyróżniamy: hierarchiczny, sieciowy, relacyjny i obiektowy.

– Fizyczne modele danych określają sposoby organizacji danych w 

pamięci zewnętrznej komputera. Modele te można rozpatrywać w sposób 
bardziej lub mniej szczegółowy. Przy najwyższym stopniu szczegółowości 
rozważa się poszczególne bity przechowywane w pamięci, ich znaczenie i 
adres. Natomiast na najniższym stopniu szczegółowości, operuje się 
pojęciami takimi jak rekord i plik.

background image

Model danych

• Model konceptualny poziom 

konceptualny

• Model implementacyjny poziom 

implementacyjny

• Poziom fizyczny

background image

Metodyka projektowania baz danych

1.

Pierwszym krokiem projektowania jest wyróżnienie fragmentu 
rzeczywistości – miniświata
, który chcemy odzworować w 
bazie danych. Następnie przeprowadzamy precyzyjną analizę 
tego miniświata, wyniku której otrzymujemy model 
konceptualny
 reprezentowany przez tzw. Diagramy obiektowo-
związkowe.

2.

Drugim krokiem jest transformacja modelu konceptualnego 
do wybranego modelu implementacyjnego
 (najczęściej 
relacyjnego), której wynikiem są tzw. Schematy relacji.

3.

Schematy relacji muszą następnie zostać poddane tzw. Procesowi 
normalizacji, który prowadzi do ich ulepszenia, polegającego na 
usunięciu niepożądanych własności.

4.

Następnym etapem jest dobór właściwych struktur 
fizycznych
 baz danych.

5.

(strojenie bazy danych).

background image

Metodyka projektowania baz danych

• Analiza miniświata – konstrukcja 

modelu konceptualnego 
miniświata,

• Transformacja modelu 

konceptualnego do modelu 
relacyjnego,

•  Normalizacja,
• Wybór struktur fizycznych,


Document Outline