Relacyjny model bazy danych

Transkrypt

Relacyjny model bazy danych
Model relacyjny.
Relacyjny model bazy danych
Relacyjny model bazy danych oparty jest na kilku prostych zasadach:
1.
2.
3.
4.
Wszystkie dane w bazie przedstawiane są w formie tabel.
Każda tabela reprezentuje zbiór podobnych obiektów ze świata rzeczywistego.
Każda tabela zawiera jedną lub więcej kolumn (atrybutów reprezentowanych obiektów).
Każda tabela zawiera zero lub więcej wierszy (krotki, rekordy). Wiersze reprazentują
egzemplarze obiektów.
5. Każdy rekord ma identyczną strukturę, lecz może zawierać różne wartości.
Przykładem tabeli relacyjnej bazy danych jest książka telefoniczna.
Tabela 1. Przykładowa książka telefoniczna
Abonent
Telefon
pogotowie ratunkowe
999
straż pożarna
998
policja
997
pogotowie energetyczne 991
Ćwiczenie 1:
Ile tabela przykładowej książki telefonicznej (Tabela 1) ma atrybutów? Ile rekordów?
W modelu relacyjnym dane przechowywane są w wielu odrębnych, ale powiązanych ze sobą
tabelach. Na potrzeby porównania model baz danych możemy przyjąć, że w jednej tabeli
powinno się zapisywać dane o obiektach jednego typu, np. wyłącznie informacje o znajomych
czy firmach.
Przekształcone do modelu relacyjnego informacje o zakupach pokazane zostały w tabelach
poniżej:
Nazwa
sandały
sznurowadła
tanisówki
Cena
120 zł
12 zł
57 zł
ilość
data_zakupu
2 12-11-2015
3 12-10-2014
1 03-09-2015
Dostawca
ulica
kod_pocztowy
Dobry S.A.
Handlowej 35-211
But S. A.
Podkarpacka 35-200
Antek & Bazyl Lwowska
35-210
miejscowość
Rzeszów
Sanok
Reszów
telefon
178 525 252
172 525 252
178 256 465
Nazwa
Cena
sandały
ilość
data_zakupu
Dostawca
ulica
kod_pocztowy miejscowość
35-211
120 zł
2 12-11-2015
Dobry S.A.
Handlowej
sznurowadła
12 zł
3 12-10-2014
But S. A.
Podkarpacka 35-200
Sanok
tanisówki
57 zł
1 03-09-2015
Antek & Bazyl
Lwowska
Reszów
35-210
Zaletą modelu relacyjnego jest zapobieganie tworzeniu duplikatów- teraz dane o
poszczególnych sprzedawcach i nazwy towarów zapisane są tylko raz. Nie tylko zmniejsza to
ilość przechowywanych w bazie informacji, ale również ułatwia ich modyfikowanie i
wstawianie.
Wadą modelu relacyjnego jest skomplikowane i wolne odczytywanie danych. Chcąc
poznać komplet informacji na temat sprzedaży określonego produktu, musimy odczytać aż
trzy tabele. W dodatku dane odczytywane z jednej tabeli należy właściwie połączyć z danymi
odczytanymi z poszczególnych tabel – inaczej nie dowiemy się, u kogo i za ile kupiliśmy
dany towar.
W ten sposób otrzymaliśmy drugą charakterystyczną cechę modelu relacyjnego: dane są
przechowywane w osobnych, ale powiązanych ze sobą tabelach. Te łączące tabele
powiązania nazywa się relacjami.
Żeby relacje były jednoznaczne, połączone nimi tabele muszą mieć klucze podstawowe, z
zapisane w nich identyfikatory muszą być powtórzone w każdej z połączonych tabel. W
innym przypadku nie byliśmy w stanie stwierdzić, u jakiego dostawcy, kiedy i za ile
kupiliśmy dany towar. Kolumna, która zawiera identyfikator rekordu innej tabeli,
nazywa się kluczem obcym.
http://www.neurosoft.edu.pl/jbartman/BD-W2.pdf
Model związków encji.
Diagram związków encji lub Diagram ERD (od ang. Entity-Relationship Diagram) – rodzaj
graficznego przedstawienia związków pomiędzy encjami używany w projektowaniu
systemów informacyjnych do przedstawienia konceptualnych modeli danych używanych w
systemie.
Diagram pokazuje logiczne związki pomiędzy różnymi encjami, związki te mają dwie cechy:
1. Opcjonalność – która mówi o tym, czy każda encja musi, czy też może wystąpić równocześnie
z inną. Np. TOWAR musi zostać zakupiony przez co najmniej jednego KLIENTA, ale KLIENT
może być nabywcą TOWARU. W reprezentacji graficznej linia przerywana oznacza
opcjonalność związku, natomiast ciągła wymóg związku.
2. Krotność – określającą ile encji wchodzi w skład związku:
a. 1:1 ("jeden do jeden") – encji odpowiada dokładnie jedna encja,
Rzeszów
b. 1:N ("jeden do wielu") – encji odpowiada jedna lub więcej encji,
c. M:N ("wiele do wielu") – jednej lub więcej encjom odpowiada jedna lub więcej encji.
Więcej materiału:
http://math.uni.lodz.pl/~antczak/bazy/pwsz/ERD.pdf
Diagram Związków Encji - CELE 1



Zrozumienie struktury danych przetwarzanych w organizacji;
Dostarczenie dokładnego modelu potrzeb informacyjnych przedsiębiorstwa, który
stanowiłby podstawę do konstruowania nowych lub ulepszonych systemów;
Dostarczenie modelu niezależnego od sposobu przetwarzania, przechowywania
danych i dostępu do nich, umożliwiającego podejmowanie celowych decyzji, jeśli
chodzi o metody implementacyjne i współdziałanie z istniejącymi systemami;
Diagram Związków Encji - CHARAKTERYSTYKA
Kolejnym krokiem w tworzeniu specyfikacji systemowej jest analiza i modelowanie
struktury informacji. Do tej pory tworząc diagramy przepływu danych interesował nas
jedynie sposób przepływu danych. Po pobraniu danych od obiektu zewnętrznego proces
przetwarzał je a następnie buforował zapisując istotne z perspektywy działalności firmy
dane do magazynów danych. Na diagramie DFD nie braliśmy pod uwagę struktury
danych.
Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów
pojęciowych (konceptualnych).
Najpopularniejszym konceptualnym modelem danych jest tzw. model związków encji
(ERM - entity relationship model), którego graficznym odpowiednikiem jest diagram
związków encji (ERD - entity relationship diagram). Diagram ten spotyka się w różnych
notacjach, do których zaliczamy m.in. notacje Chena, Martina, Bachmana, IDEF1X.
Diagram Związków Encji - Podstawowe bloki składowe i
reguły konstrukcji
Diagram ERD przedstawia:
1. obiekty, o których informacje są istotne z punktu widzenia realizacji celów
strategicznych firmy;
2. atrybuty obiektów;
3. związki pomiędzy obiektami.
Wyodrębnione obiekty mogą być rzeczywiste lub mogą być pojęciami abstrakcyjnymi.
Obiekty mające te same atrybuty łączy się w typy obiektów np. Towar, Klient, Dostawca,
Zamówienie.
1
http://jjakiela.prz.edu.pl/erd.htm
ENCJA
ENCJA jest rzeczą lub obiektem mającym dla nas znaczenie, rzeczywistym bądź
wyobrażonym, o którym informacje muszą być znane lub przechowywane.
Graficzną reprezentacją ENCJI jest prostokąt z nazwą ENCJI zapisaną w liczbie
pojedynczej.
ZWIĄZEK
ZWIĄZEK jest nazwanym, istotnym powiązaniem pomiędzy
dwiema encjami. Związki przedstawiają zależności zachodzące
pomiędzy obiektami.
Każdy zwiazek ma dwa końce, z których każdy ma przypisane
następujące artybuty



nazwę;
liczebność (jak wiele);
opcjonalność (opcjonalny czy wymagany).
Związek jest reprezentowany za pomocą linii łączącej dwie
encje.
Na powyższym schemacie jest przedstawiony najczęściej
występujący związek jeden-do-wiele.
PRZYKŁADY ZWIĄZKÓW
KLIENT składa ZAMÓWIENIE
Arność: Jeden do Jeden-lub-Wiele
DOSTAWCA dostarcza TOWAR
Arność: Wiele do Wiele
KLIENT posiada NIP
Arność: Jeden do Jeden (opcjonalnie)
Związek NADTYP-PODTYP
Związek nadtyp-podtyp obejmuje zwykle typ obiektu oraz
jedną lub więcej podkategorii. Atrybuty nadtypu odnoszą się
do wszystkich podtypów, natomiast atrybuty podtypów są
unikalne w zakresie podtypu.
Poniżej znajduje się przykład związku nadtyp-podtyp
opisujący klienta w rozbiciu na klienta indywidualnego oraz
instytucjonalnego.
ATRYBUTY
ATRYBUT jest dowolnym szczegółem służącym do kwalifikowania,
identyfikowania, klasyfikowania, określania ilości lub wyrażania stanu ENCJI.
Lub
ATRYBUT jest dowolnym opisem mającym znaczenie dla ENCJI. ATRYBUT może
być tekstem, liczbą, wartością logiczną lub obrazem.
Przykład atrybutów ENCJI klient.
Zasady tworzenia diagramów ERD
Poniżej przedstawiona jest metoda tworzenia diagramów ERD jako proces
składający się z pięciu kroków:


Identyfikacja zbioru obiektów, o których informacje są istotne;
o Identyfikację obiektów rozpoczynamy od wyodrębnienia kluczy
głównych poszczególnych obiektów, czyli identyfikatorów
jednoznacznie identyfikujących obiekt. Wyróżnione identyfikatory
pozwalają na uformowanie wstępnej listy obiektów;
Określenie związków zachodzących pomiędzy obiektami oraz rodzaju
związków;
Identyfikacja bezpośrednich zależności pomiędzy obiektami, które
odzwierciedlają pewne reguły przyjęte w firmie. Należy zbadać
istnienie bezpośrednich powiązań między wszystkimi parami
obiektów w systemie;
Identyfikacja atrybutów obiektów;
o Po wyodrębnieniu istotnych obiektów oraz związków zachodzących
pomiędzy nimi można uzupełnić opis obiektów identyfikując
potrzebne atrybuty tzn. dane istotne dla firmy opisujące konkretny
obiekt;
Stworzenie wstępnego modelu pojęciowego;
Sprawdzenie poprawności otrzymanej struktury.
o



Na podstawie zidentyfikowanych obiektów oraz powiązań między nimi możemy
narysować wstępny diagram związków encji.
PRZYKŁAD
Weryfikacja

WERYFIKACJA POD KĄTEM WYMAGAŃ
UŻYTKOWNIKA
Otrzymany na podstawie opisu organizacji model należy
zweryfikować, pod kątem spełnienia wymagań użytkownika.
Jest to oczywiście wstępna weryfikacja, gdyż na etapie analizy
próbujemy formalnie naszkicować część modelowanej
rzeczywistości, natomiast podczas etapu projektowania
modele te zostaną rozwinięte i uszczegółowione.
Jeżeli utworzony model danych nie spełnia wymagań
użytkownika, to należy uzupełnić go o dodatkowe obiekty i
powiązania.

WERYFIKACJA POD KĄTEM SPÓJNOŚCI
PERSPEKTYW PRZEDSIĘBIORSTWA
Jeżeli modelujemy kilka fragmentów firmy, zawarcie
wszystkiego w jednym diagramie jest właściwie niemożliwe.
Nawet w przypadku stworzenia takiego diagramu jest on
nieczytelny i trudny do analizy. W takich przypadkach można
zastosować rozbicie wg perspektyw przedsiębiorstwa.
Perspektywa przedsiębiorstwa jest to zbiór obiektów
zawartych w polu zainteresowań wybranej grupy pracowników
firmy. Oczywiście perspektywy mogą się częściowo nakładać.
Wynika to z faktu, że różne grupy pracowników mogą
korzystać z podobnych informacji.