Komputerowy montaż dźwięku i obrazu
Transkrypt
Komputerowy montaż dźwięku i obrazu
BAZY DANYCH model związków encji Opracował: dr inż. Piotr Suchomski Świat rzeczywisty a baza danych Świat rzeczywisty Diagram związków encji Model relacji Schemat relacyjnej Bazy danych Model świata rzeczywistego Model danych Definicja danych Baza danych zapytania Założenia, Uproszczenia, ograniczenia Model związków encji (E/R) Jest jednym z najbardziej powszechnych modeli abstrakcyjnie przedstawiającym strukturę bazy danych. W modelu E/R struktura danych jest reprezentowana graficznie w postaci diagramów związków encji, w którym wyróżnia się 3 zasadnicze elementy: – zbiór encji, – atrybuty, – związki Encje Pojęcie encji jest pojęciem podstawowym i niedefiniowalnym. Zasadniczą cechą encji jest to, że jest rozróżnialna od innych encji. Przykłady encji: – samochód, osoba, tablica, książka (rzeczy), – Lot samolotem, wypadek drogowy (zdarzenia), – Uczucie, wyobrazęnia (pojęcia) Zbiór encji Zbiór wszystkich encji, które są do siebie podobne pod względem swoich cech (np. zbiór encji samochodów ciężarowych, zbiór encji uczniów danej klasy itp.). Istnieje pewne podobieństwo między encją i „obiektem” w pojęciu programowania obiektowego. Zbiór encji jest podobny do klasy obiektów. Jednak zbiór encji ma wyłącznie charakter statyczny i dotyczy tylko struktury danych. Atrybuty Atrybuty to cechy, które opisują encję. Encje w zbiorze encji rozróżnialne są ze względu na wartości ich atrybutów. Własności atrybutów: – Liczba atrybutów jest ustalona dla danego zbioru, – Wartości atrybutó są atomowe (niepodzielne), – Nazw atrybutów są jednoznaczne Klucz zbioru encji Atrybut bądź grupa atrybutów, których wartości jednoznacznie identyfikują encję w zbiorze encji. Własności klucza: – Jednoznaczność – nie istnieją w zbiorze encji 2 takie encje, których wartości klucza są takie same. – Minimalność – nie można usunąć z klucza żadnego atrybutu aby zapewnić jednoznaczność klucza. Klucze główne i alternatywne Zdarza się, ze wśród atrybutów zbioru encji można wybrać kilka różnych zbiorów atrybutów, które spełniają warunki klucza. W takiej sytuacji wybiera się jeden klucz jako klucz główny, pozostałe są kluczami alternatywnymi. ISBN tytuł autor ISBN tytuł rok książki autor rok książki Związki Związek REL pomiędzy encjami E1, E2,…En jest to zbiór krotek nelementowych (e1,e2,…,en) takich, że e1E1, e2E2,…, enEn Oznaczenie: NAZWA(E1, E2,…En), Związek może być również między encjami w danym zbiorze. Związki Przykłady: MACIERZYŃSTWO(OSOBA, DZIECKO) – zawiera wszystkie pary (m,d) gdzie osoba m jest matką dziecka d. NAUCZANIE(NAUCZYCIEL, UCZEŃ, PRZEDMIOT) – zawiera wszystkie trójki (n,u,p) gdzie nauczyciel n uczy ucznia u przedmiotu p. Krotność związków 1:1 (jeden do jeden) E1 nazwa E2 1:n (jeden do wiele) E1 E2 m:n (wiele do wiele) E1 nazwa nazwa E2 Krotność związku może być również równa 0, wtedy na połączeniu po stronie zbioru, gdzie może nie być odpowiedniej encji wpisuje się symbol 0) Krotność związku – inna notacja Zero lub jeden E2 Dokładnie jeden E2 Zero lub wiele E2 Jeden lub wiele E2 Role w związku Może się zdarzyć, że dany zbiór encji może wystąpić w danym związku więcej niż jeden raz. W takim przypadku należy narysować tyle krawędzi między związkiem i zbiorem encji ile razy ten zbiór pojawia się w związku. Krawędziom między związkiem a zbiorem encji nadaje się etykiety z nazwami, które nazywa się rolami. Role w związku początek Odcinek-czego Filmy następny Związek zachodzi między dwoma filmami, z których jeden stanowi dalszy ciąg drugiego. Założono, że film może składać się z wielu części, ale tylko jeden z nich jest pierwszy (np. pierwszy odcinek). Krotność związku w tym przypadku jest określona jako 1:n Atrybuty związku Data ślubu Mężczyźni Małżeństwo Kobiety Data PESEL Mężczyźni PES_M PES_K Małżeństwo PESEL Kobiety Związki stopni wyższych Związki nie muszą być binarne (łączenie 2 zbiorów encji). Związki wyższych stopni można zredukować do kilku związków binarnych. Podklasy w modelu E/R Zbiór encji może zawierać pewne encje o specjalnych właściwościach, które nie pasują do wszystkich encji ze zbioru. W takiej sytuacji można stworzyć dodatkowe zbiory encji (podklasy), które zawierają dodatkowe specjalizowane atrybuty i mogą tworzyć inne związki. Zbiór encji łączy się z jego „podklasą” za pomocą związku IS_A Związek IS_A IS_A(E1,E2) – oznacza, że każda encja ze zbioru E1 jest także encją ze zbioru E2. (E1 jest podzbiorem E2). Związek IS_A jest związkiem wbudowanym w model E/R, jest to związek typu 0..1:1; Każda encja należąca do zbioru E1 ma wszystkie atrybuty ze zbioru E2 oraz dodatkowo własne atrybuty. Związek IS_A - przykład Nr rej. Marka rocznik Samochody IS_A Ciężarowe Nacisk ładowność IS_A Osobowe Liczba osób Zbiory słabych encji Zdarza się, że do klucza danego zbioru encji wybiera się część bądź wszystkie atrybuty z innego zbioru encji. Taki zbiór nazywany jest zbiorem słabych encji. Taka sytuacja ma miejsce gdy encje zbioru F są podjednostkami encji zbioru E (zależności hierarchiczne). W takim przypadku jednoznaczne zidentyfikowanie elementów zbioru F jest możliwe pod warunkiem wspólnego rozpatrywania z encjami zbioru E. Zbiory encji słabych Często zbiorami encji słabych stają zbiory powstałe w wyniku rozbijania związków encji wyższego stopnia (wieloargumentowych). Jeśli E jest zbiorem encji słabych to klucz składa się z: – z zero lub jednego atrybutu z tego zbioru, – I atrybutów kluczy zbiorów encji dostępnych ze zbioru E poprzez pewne związki wiele do jeden. Te związki nazywa się zwiazkami wspierającymi E Związki wspierające Aby związek R (n:1) z E do pewnego zbioru Encji F był związkiem wspierającym E muszą być spełnione warunki: – Związek R musi być binarny z E do F, – Dla każdej encji z E musi istnieć powiązana przez związek R encja w zbiorze F, – Atrybuty wchodzące w skład klucza E, a pochodzące ze zbioru F, muszą być częścią klucza F, – Jeżeli zbiór F jest również zbiorem słabych encji to poprzedni warunek musi być spełniony dla innego zbioru G (poszukiwanie przez rekurencyję), Związki wspierające – Jeśli między zbiorami E i F istnieje wiele związków n:1 to dowolny z nich może służyć do przekazania kopii atrybutu kluczowego ze zbioru F do zbioru E i tworzeniu klucza E. Wartości klucza identyfikujące pewną encję e ze zbioru E mogą pochodzić z kilku różnych encji zbioru F. Zasady tworzenia modelu E/R Właściwa identyfikacja encji i zbiorów encji. Definicja właściwych atrybutów i kluczy encji. Identyfikacja wszystkich związków typu IS_A. Wprowadzenie odpowiednich podzbiorów encji i definicja odpowiednich trybutów. Identyfikacja wszystkich związków zachodzących pomiędzy zbiorami. Określenie krotności związków. Redukcja wszystkich związków wieloargumentowych do związków binarnych. Utworzenie odpowiednich zbiorów encji (w miejscu tych związków) i ich atrybutów. Dobra rada! Należy dokładnie sprawdzić czy stworzony model spełnia specyfikację oraz reprezentuje tę rzeczywistość, która jest przedmiotem projektu. Jeśli nie to trzeb cofnąć się do wcześniejszych kroków tworzenia modelu E/R i wprowadzić poprawki. Należy pamiętać, że najwięcej kosztują błędy popełnione na etapie analizy i modelowania. Im bardziej zaawansowana realizacja projektu, tym trudniej poprawić błędy.