bazy_danych_wyk.pdf

(372 KB) Pobierz
Bazy Danych
http://automa.mt.prv.pl/
B AZY D ANYCH .
W YKŁAD 1.
Prowadzący: Madejewski.
Zakres wykładów:
1. Podstawowe pojęcia z dziedziny baz danych.
2. Systemy IDEF0 i modelowanie obiegów danych.
3. Architektura baz danych (model hierarchiczny, sieciowy i relacyjny).
4. Projektowanie schematu relacyjnej bazy danych.
5. Normalizacja.
6. Podstawy języka SQL.
7. Zabezpieczenia systemu baz danych.
Literatura:
- Tadeusz Pankowski „ Podstawy baz danych” PWN 1992r.
- J. Ullman ,,Systemy baz danych” WND 1988r.
Systemy działające na konkretach (na przykładzie firmy zajmującej się wynajmem):
Uzytkownik
Wlasny
interfejs
i raporty
System do
zarzadzania
plikami
Dzial
sprzedazy
Struktura
plikow
Dział sprzedaży:
- nieruchomość do wynajęcia
- właściciel nieruchomości
- osoba która chce wynająć (nazwisko, rodzaj nieruchomości jaka go interesuje)
1
250625125.001.png
http://automa.mt.prv.pl/
Umowy
Wlasny
interfejs
i raporty
System do
zarzadzania
plikami
Dzial umow
Struktura
plikow
Dział umów:
- umowa między wynajmującym (właścicielem)
- nieruchomość
- wynajmujący (gdzie można go znaleźć)
Są to dwa rozdzielne zbiory danych.
Ograniczenie specjalizowanych aplikacji operujących na dedykowanych strukturach plików:
- separacja i izolacja danych – każdy program (aplikacja) operuje na osobnym
zestawie danych, dane te są zapisywane w formacie właściwym dla danej
aplikacji (tym samym każda aplikacja może korzystać z danych zapisanych w
innym formacie), użytkownicy jednej aplikacji nie mają dostępu do danych z
których mogą korzystać inne aplikacje
- powielanie danych – te same dane przechowywane w wielu miejscach
jednocześnie, korzystają z nich różne aplikacje i te same dane mogą być
zapisane w różnych formatach, np.: daty, liczby czy łańcuchy tekstowe
- struktura danych jest zdefiniowana w aplikacji która z niej korzysta tym
samym próba zmiany (rozszerzenia) formatu danych wymaga zmiany aplikacji
- celem gromadzenia danych jest wyszukiwanie informacji drogą zapytań; zbiór
zapytań w dedykowanych aplikacjach jest zbiorem zamkniętym tym samym
próba analizy danych w sposób inny niż zdefiniowane danej aplikacji wymaga
zmiany aplikacji
Bazy danych.
Podejście charakterystyczne dla baz danych.
Uzytkownik
Wlasny
interfejs
i raporty
DBMS
(system
zarzadzania
kazda
baza)
Dane bazy
Umowy
Wlasny
interfejs
i raporty
Property – rzeczy do wynajęcia
Owner – właściciel
2
250625125.002.png
http://automa.mt.prv.pl/
Renter – wynajmujący
Lease – dzierżawca
DBMS – rzeczy do wynajęcia + właściciel + wynajmujący + dzierżawca + struktura plików
W bazach danych jedną z charakterystycznych cech jest oddzielenie opisów struktury
danych od konkretnej aplikacji tym samym opis struktury danych staje się informacją
przechowywaną niezależnie od programu i informacja ta może być przechowywana wraz z
danymi.
Systemy baz danych stanowią odpowiedz na konieczność kontroli dostępu do danych,
ich zawartości wykraczającą poza kontrolę którą mogły zapewnić dedykowane aplikacje.
Def.: Baza danych jest zbiorem logicznie uporządkowanych danych oraz ich opisów.
Stałym elementem baz danych jest katalog systemu w którym znajdują się opisy struktur
danych. W poprawnie zaprojektowanym systemie baz danych możliwe jest modyfikowanie
struktury danych bez naruszenia zawartości danych.
Def.: ENCJA – to każdy przedmiot, zjawiskom, stan lub pojęcie – każdy obiekt który
potrafimy (chcemy) odróżnić od innych obiektów. Encją jest zatem każdy stół, samochód itp..
Encją jest niedźwiedź, jako element składowy życia na ziemi. Encja to każdy obiekt dający
się zidentyfikować na podstawie swoich atrybutów.
Def.: ATRYBUT – cechy encji które dają się wyrażać przez przydanie im pewnych
wartości – są to cechy encji wynikające z ich natury, dające się wyrazić liczbami bądź
prostymi określeniami słownymi. Stół ma np.: liczbę nóg, samochód – marka i pojemność
silnika.
Wywołanie atrybutów wymaga także określenia dziedziny wartości tych atrybutów,
np.: w przypadku dat urodzenia studentów w systemie dziekanat należało by założyć jakiś
minimalny wiek studenta powiedzmy 15 lat w celu uniknięcia błędów przy wprowadzaniu
danych, lub należało by kontrolować długość nazwiska, itp..
W systemach baz danych takie zbiory ograniczeń mogą być przechowywane
niezależnie od danych, nie muszą też stanowić części aplikacji operującej na danych.
W systemach baz danych występują dwa typy języków:
- język DDL (język do definiowania struktury danych; język ten pozwala na
określenie typu danych, ich struktury i dziedziny danych)
- język DML (język do manipulowania na danych, język tworzenia zapytań)
Bazy danych zapewniają następujące usługi:
- system zabezpieczeń – daje on dostęp do danych i informacji tylko określonym
użytkownikom na określonym poziomie szczegółowości
- kontrola integralności danych (ich kompletność i ich poprawność)
- kontrola jednoczesnego dostępu do danych przez wielu użytkowników (w taką
procedurę może być wbudowana hierarchia użytkowników, np.: niektórzy
mogą wprowadzać nowe dane i usuwać stare, inni mogą je tylko przeglądać
- odtwarzanie stanu systemu sprzed awarii
3
http://automa.mt.prv.pl/
Mechanizmy perspektyw.
Użytkownik bazy danych ma zawsze dostęp do informacji zawartych w bazie.
Informacje zaś są pozyskiwane drogą zapytań z danych zapisanych w bazie tym samym
informacja taka jest np.: średnia ze studiów nie musi być nigdzie zapisana w bazie danych
jako dana jest po prostu wyznaczana na podstawie istniejących wpisów w bazie danych. W
ogólnym przypadku użytkownik może w ogóle nie operować na surowych danych
znajdujących się w bazie danych.
Perspektywy to sposób udostępniania użytkownikowi informacji w postaci i zakresie
określonym w czasie projektowania bazy danych. Perspektywy uwzględniają zakres
uprawnień konkretnego użytkownika do korzystania z danych.
Informacje dostępne w ramach danej perspektywy mogą być uzyskane z danych
zebranych i przetworzonych z wielu różnych plików bazy danych, które mogą być ponadto
rozmieszczone w różnych systemach komputerowych.
Kontrola redundacji danych.
Redundacja to jest występowanie wielu zapisów tych samych danych. Kontrola
redundacji w bazach danych zaczyna się już na etapie projektowania bazy danych. W
przypadku relacyjnych baz danych proces który zapewnia uporządkowanie danych w
poszczególnych zbiorach zwany jest normalizacją . Bazy danych zapewniają większą
wydajność pracy programistów.
Role użytkowników systemów baz danych:
- administrator bazy danych (projektuje on strukturę baz danych, przydziela
uprawnienia poszczególnym użytkownikom, określa perspektywy
użytkownika, oraz prowadzi systematyczne kopiowanie zawartości bazy
danych dla umożliwienia odtworzenia stanu bazy danych sprzed awarii, w
niektórych systemach można wyróżnić dwie funkcje: administrator danych,
administrator bazy danych)
- programiści aplikacji(budują oni procedury pozwalające na pozyskiwanie
informacji z danych, a procedury te budowane są w języku DML)
- ,, użytkownicy naiwni „ (są to wszyscy użytkownicy bazy danych którzy
dostęp do danych i informacji uzyskują za pośrednictwem mechanizmu
perspektyw)
Aplikacje dedykowane budowane do operowania na ściśle określonych strukturach danych
mają również zalety do nich należy:
- możliwość bardzo szybkiego dostępu do danych znacznie przekraczająca
parametry bazy danych
Wady baz danych:
- złożoność (korzystanie z bazy danych powoduje że każdorazowo taki system
ma dostęp do szeregu usług nawet takich które w danym zastosowaniu nie są
potrzebne)
- rozmiar
- dodatkowe koszty sprzętu (mogą one wynikać z podwyższonej złożoności
oprogramowania bazy danych, konieczności zabezpieczenia fizycznego
danych, np.: dodatkowe dyski)
4
http://automa.mt.prv.pl/
- koszt konwersji danych (mogą obejmować konieczność przetworzenia
istniejących zapisów do nowego formatu, koszt zamiany struktury istniejących
danych oraz kontroli integralności uzyskanych danych)
- szybkość działania systemu baz danych z wyjątkiem wybranych funkcji tj.
indeksowanie jest z reguły niższa niż systemów dedykacyjnych
W YKŁAD 2.
Architektura ASCI-SPARC jako podstawa budowy systemu zarządzania danymi.
Cele architektury ASCI-SPARC:
- wszyscy użytkownicy powinni mieć dostęp do tych samych danych
- perspektywa konkretnego użytkownika nie powinna odzwierciedlać zmian
wnoszonych do perspektyw innych użytkowników
- użytkownik nie musi znać szczegółów technicznych zapisu danych w bazie
- administrator bazy danych może zmieniać strukturę zapisu danych w systemie
bez naruszania perspektyw poszczególnych użytkowników
- wewnętrzna struktura bazy danych jest niezależna od sposobu jej zapisania w
systemie komputerowym
- administrator bazy danych może modyfikować strukturę pojęciową bazy
danych bez odzwierciedlania tego w perspektywach użytkowników
User 1
User 2
User n
Extermal
level
View1
View2
....
Viewn
Conceptual
level
Conceptuae
schema
Intemal
level
Intemal
schema
Physical
dat
organization
Data base
Powyższy schemat składa się z trzech poziomów, a mianowicie z:
- poziomu zewnętrznego – perspektywy użytkownika, użytkownicy ,,naiwni”
- poziom pojęciowy – schemat logiczny
- poziom wewnętrzny – zapisać w efektywny sposób dane zgodnie z modelem
na którym będą działać założone wcześniej perspektywy
Języki czwartego poziomu (4GL):
- wbudowane języki zapytań – standardowym językiem zapytań jest SQL – a w
Accessie mamy dodatkowo QBE
- wbudowane generatory formularzy
5
250625125.003.png
Zgłoś jeśli naruszono regulamin