1
Co zrobić z „informacją” ?
Człowiek wykazuje naturalne skłonności do
gromadzenia różnych rzeczy (informacji)
Po przekroczeniu pewnej liczby zgromadzonych
rzeczy nie jesteśmy w stanie zapanować nad
gromadzonymi rzeczami
BAŁAGAN
POWIELANIE INFORMACJI
TRUDNOŚCI Z ODNALEZIENIEM PRZEDMIOTÓW
2
Jak rozwiązać problem ?
Spis przedmiotów
●
Spis przedmiotów
●
Pozwala wykryć przedmioty które się powtarzają
●
Przykład: spis wszystkich przepisów kulinarnych
●
Każdy przepis otrzymuje inną nazwę
●
Co zrobić w przypadku podobnych przepisów ?
●
Wydłużyć nazwę
●
Po pewnym czasie nazwy będą tak długie, że zawierać będą
cały przepis
●
Każdy nowy przepis dodawany jest na końcu listy
●
Przed dodaniem należy przejrzeć cały spis czy przepis się nie
powtarza
●
Znalezienie konkretnego przepisu wymaga przeszukania prawie
całego spisu
3
Podział na kategorie
●
Kategorie pozwalają pogrupować zbiór na
podzbiory
●
Przepisy kulinarne
●
Kategoria: zupy
●
Kategoria: przystawki
●
Co się dzieje gdy przepis może być zaliczony do
kilku kategorii
●
Informacja o przepisie musi się pojawić w każdej
kategorii
●
Powielenie informacji
●
Dodanie nowego przepisu wymaga sprawdzenia
wszystkich kategorii
4
Katalog rzeczowy
●
Katalog rzeczowy pozwala znaleźć dany przepis
posługując się słowami kluczowymi
●
Odnalezienie wszystkich przepisów zawierających
jeden składnik nie jest trudne
●
Problemy pojawiają się gdy chcemy odnaleźć przepisy
zawierające kilka składników
●
Znalezienie przepisu zawierającego wybrany składnik i
jednocześnie niezawierający innego składnika jest
dużym wyzwaniem
●
Katalog rzeczowy musi być na bieżąco aktualizowany
5
Spis przedmiotów
Numer
Opis
Kategoria
Przepis
Składniki
1 Kotlet w
panierce
Drugie danie
......
......
2 Zupa
pomidorowa
Zupa
......
......
3 Koktajl
Napoje
......
......
4 Pasztet
Pieczenie
......
......
......
........
.......
......
......
Kategorie
Zupy Napoje Pieczenie ......
2
3
4
......
......
........
.......
......
Katalog rzeczowy
Numer
Nazwa
Przepis
1 Jajko
1,4
2 Pomidor
2
3 Maślanka
3
4 Schab
1
5 Śmietana
2
......
........
.......
6
Prosta baza danych – arkusz kalkulacyjny
●
Wszystkie informacje będziemy przechowywać w
arkuszach
●
Liczba arkuszy
–
Spis przepisów
–
Katalog rzeczowy
–
Po jednym arkuszu na każdą kategorię
–
Arkusze zawierające opisy
●
Opis każdego arkusza
●
Sposobu dodawania informacji
●
Sposobu w jaki usuwa się dane
7
Problemy z arkuszami
●
Dopisywanie informacji
–
Inna osoba nie wykona wszystkich kroków
●
Usuwanie informacji
–
Nie wszystkie informacje zostaną usunięte
–
Arkusze będą zawierały informacje niepowiązane
●
Dzielenie się informacjami
–
Dwie lub więcej osób wymienia się informacjami
–
Dodanie nowej porcji wymaga przepisania
wszystkich informacji
8
Zbiór danych
Jak rozumieć dane
Przez dane rozumiemy
znane i potwierdzone fakty
Czym jest BAZA DANYCH ?
Cechy danych
Musi istnieć sposób
zarejestrowania
faktów
Rejestrowane fakty
muszą mieć
konkretne znaczenie
Właściwości
Dane muszą
być ze sobą
logicznie
powiązane
Podstawowa cecha
Szybki
dostęp
do informacji
Baza danych reprezentuje
pewien wycinek
rzeczywistości
Dziedzina
Spójność danych
9
Czym jest baza danych ?
●
Duża kolekcja (zbiór) danych
–
Zorganizowana w celu szybkiego przeszukiwania i
dostępu do informacji
●
Przez dane rozumiemy znane fakty
–
Fakty muszą być rejestrowalne i sprawdzone
–
Muszą mieć konkretne znaczenie (odpowiadać
konkretnym sytuacjom, zdarzeniom lub stanom)
●
Między przechowywanymi danymi muszą
istnieć logiczne zależności
10
Własności
●
Baza danych reprezentuje wybrany aspekt
świata rzeczywistego
–
Przykład: Zbiór przepisów kulinarnych
–
Podając przepis kulinarny posługujemy się pewnym
skończonym zbiorem pojęć
●
Zbiór tych pojęć tworzy dziedzinę
●
W każdym przepisie mogą pojawić się pojęcia tylko
należące do dziedziny
●
Wszystkie dane znajdujące się w bazie muszą
być spójne z jakimś znaczeniem
11
System zarządzania bazą danych - SZBD
●
SZBD – jest zbiorem programów umożliwiających
–
Definiowanie bazy danych
●
Określenie typów i struktur danych oraz ograniczeń dla
przechowywanych informacji
–
Konstruowanie bazy danych
●
Proces umieszczania w bazie danych właściwych
informacji
–
Manipulowanie
●
Ogół czynności związanych z przetwarzaniem oraz
aktualizowaniem informacjami zawartymi w bazie
12
Jak zbudowana jest baza danych
Baza danych
Schemat
wewnętrzny
Perspektywa
Perspektywa
Fizyczna organizacja
bazy danych
Schemat
Konceptualny
Warstwa
wewnętrzna
Warstwa
konceptualna
Warstwa
zewnętrzna
13
Warstwa zewnętrzna
●
Opisuje sposób w jaki użytkownicy widzą bazę
danych i w jaki sposób uzyskują do niej dostęp
–
Podział użytkowników na grupy
–
Każda grupa użytkowników widzi dane zawarte w
bazie w inny sposób
–
Poszczególne grupy różnią się uprawnieniami
●
Zbiór reguł prezentujących dane użytkownikowi
zawarty jest w perspektywie
–
Różne perspektywy mogą prezentować te same
dane w odmienny sposób
14
Warstwa konceptualna
●
Zbiorowy sposób widzenia bazy danych
–
Opisuje jakie dane są przechowywane w bazie
–
Powiązania między danymi
–
Zakres dopuszczalnych wartości dla danych
●
Definicje wszystkich dziedzin
–
Sposób w jaki zorganizowane są dane
–
Nazwy wszystkich obiektów
●
Na podstawie tych informacji budowane są
perspektywy
15
Warstwa wewnętrzna i fizyczna
●
Fizyczna reprezentacja bazy danych w komputerze
–
Opisuje sposób przechowywania danych w bazie
●
Obejmuje struktury danych i organizację plików
używanych do przechowywania danych
–
Rozmieszczenie danych w pamięci fizycznej
–
Przydział pamięci
●
Warstwa fizyczna
–
Realizacja tych zadań następuje za pomocą systemu
operacyjnego
–
Zapis/odczyt danych w pamięci
16
Schematy
●
Całkowity opis bazy danych nazywany jest
schematem
bazy danych
–
Sposób prezentacji danych
–
Definicje danych (rodzaj przechowywanych informacji)
–
Powiązania między danymi
–
Ograniczenia nałożone na informacje (dziedziny danych)
–
Organizację danych
–
Przywileje i ograniczenia
●
Schemat bazy danych ulega zmianie tylko w momencie zmiany
przeznaczenia bazy (zmiana koncepcji projektu)
–
Zmianie ulegają jedynie przechowywane informacje
17
Niezależność danych
●
Zmiany dokonywane w niższych warstwach nie powinny
mieć wpływu na warstwy wyższe
–
Poszerzenie funkcjonalności bazy
–
Zawężenie funkcjonalności
●
Logiczna niezależność danych
–
Dodanie lub usunięcie informacji
–
Zmiana sposobu opisu informacji
●
Fizyczna niezależność danych
–
Wymiana
sprzętu,
systemu
plików,
systemu
operacyjnego
18
Języki baz danych
●
Zarządzanie bazą danych
–
Zbiór instrukcji (poleceń) służących do zarządzania SZBD
–
Dodawanie użytkowników, składowanie i odtwarzanie bazy
danych, itd...
●
Zarządzanie danymi (Język definicji danych)
–
Tworzenie struktur związanych z przechowywaniem danych
–
Opisywanie danych (nadawanie nazw, określanie dziedzin)
–
Modyfikacje istniejących struktur danych
–
Katalog systemowy (słownik danych, katalog danych)
●
Metadane – informacje o obiektach do przechowywania informacji
(schemat bazy danych)
●
Modyfikowanie danych (Język manipulacji danymi)
–
Dopisywanie nowych informacji, modyfikacja, wyszukiwanie
informacji, usuwanie informacji
19
Języki czwartej generacji (4GL)
●
Użytkownik zapisuje co ma być zrobione nie podając w jaki
sposób ma to być zrobione
–
Ograniczenie funkcjonalności do zawężonego problemu
●
Języki SQL, Query-By-Example (Access, OpenOffice Base)
●
Formularze
–
Interaktywne narzędzie służące do szybkiego tworzenia
formularzy wprowadzania danych
●
Raporty
–
Tworzenie zestawień z danych przechowywanych w bazie
●
Wykresy
–
Pobieranie i prezentacja danych w postaci wykresów
●
Aplikacje
–
Tworzenie programów współpracujących z bazą danych
20
Model danych
●
Opis schematu bazy danych zrozumiały dla różnych
użytkowników
●
Zestaw pojęć służący do opisu:
–
Danych
–
Związków między danymi
–
Sposobu manipulacji danymi oraz zależnościami
między nimi
–
Ograniczeń nałożonych na schemat bazy danych
●
Model danych jest abstrakcyjnym opisem fragmentu
rzeczywistości
●
Każda baza danych oparta jest na odrębnym modelu
danych
21
Elementy modelu danych
●
Reprezentacja struktury danych w taki sposób aby była
powszechnie rozumiana
●
Część strukturalna
–
Zbiór zasad zgodnie z którymi powinny być konstruowane
bazy danych
●
Część wykonawczą
–
Opisuje typy dopuszczalnych operacji na danych
–
Zakres operacji wykonywanych na strukturze danych
●
Zbiór zasad integralności
–
Ograniczenia nałożone na dane
22
Relacyjny model danych
●
Bazuje na matematycznym pojęciu relacji
●
Dane i relacje reprezentowane są za pomocą tabel
–
Każda tabela zawiera pewną liczbę kolumn o unikalnych
identyfikatorach
●
Relacja: (Spis przedmiotów)(Numer) <=> (Katalog rzeczowy)(Przepis)
Spis przedmiotów
Numer
Opis
Kategoria
Przepis
Składniki
1 Kotlet w
panierce
Drugie danie
......
......
2 Zupa
pomidorowa
Zupa
......
......
3 Koktajl
Napoje
......
......
4 Pasztet
Pieczenie
......
......
......
........
.......
......
......
Katalog rzeczowy
Numer
Nazwa
Przepis
1 Jajko
1,4
2 Pomidor
2
3 Maślanka
3
4 Schab
1
5 Śmietana
2
......
........
.......
23
Sieciowy model danych
●
Dane reprezentowane są jako kolekcje rekordów
●
Związki pomiędzy rekordami prezentowane są w postaci
zbiorów
●
Rekordy zorganizowane są w postaci grafów – rekordy są
węzłami, zbiory (relacje) – krawędzie grafu
1Kotlet w panierce Drugie danie
....... .......
4Pasztet
Pieczenie
....... .......
1Jajko
4Schab
2Zupa pomidorowa Zupy
....... .......
2Pomidor
5Śmietana
24
Hierarchiczny model danych
●
Ograniczony model sieciowy
–
Dane reprezentowane są jako rekordy
–
Związki między rekordami jako zbiory
●
W tym modelu węzeł może posiadać tylko jednego ojca
4Schab
1Jajko
2Pomidor
5Śmietana
1Kotlet w panierce Drugie danie
....... .......
4Pasztet
Pieczenie
....... .......
2Zupa pomidorowa Zupy
....... .......
25
Funkcje
Systemu Zarządzania
Bazą Danych
Zapis, odczyt
i
aktualizacja
danych
Udostępnianie
katalogu
dla
użytkowników
Obsługa
transakcji
Usługi
wspierające
niezależność
danych
Sterowanie
współbieżnością
Obsługa
odtwarzania
bazy
Obsługa
autoryzacji
Obsługa
transmisji
danych
Obsługa
integralności
danych
Programy
narzędziowe
26
Serwer plików
●
Terminale są niezdolne do
samodzielnego
przetwarzania danych
●
Komunikaty z terminali są
przesyłane do jednostki
centralnej
●
Jednostka centralna
przetwarza komunikat i
zwraca rezultat do
terminala
27
Serwer plików
●
Serwer plików służy do
przechowywania plików
bazy danych
●
Stacje robocze wykonują
aplikacje SZBD
●
Na żądanie stacji
roboczych dane są
przesyłane przez serwer
●
Nawet proste zapytania
wymagają przesłania
dużej ilości danych
28
Klient - Serwer
●
Klient
–
Obsługuje interfejs użytkownika
–
Wprowadzanie danych, sprawdzenie
składni
–
Sterowanie aplikacją
–
Tworzy zapytanie i przesyła do bazy
danych
–
Przekazuje odpowiedź do
użytkownika
●
Serwer
–
Przetwarza zapytania do bazy od
klientów
–
Sprawdza uprawnienia
–
Zapewnia nienaruszalność więzów
–
Realizuje przetwarzanie zapytań i
przekazuje odpowiedzi klientom
–
Konserwuje katalog systemowy
–
Obsługuje współbieżność
–
Realizuje odzyskiwanie po awarii