Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Wykład III Modelowanie danych opr. Lech Banachowski, Krzysztof Matejewski1.

Podobne prezentacje


Prezentacja na temat: "Wykład III Modelowanie danych opr. Lech Banachowski, Krzysztof Matejewski1."— Zapis prezentacji:

1 Wykład III Modelowanie danych opr. Lech Banachowski, Krzysztof Matejewski1

2 Konwencje notacyjne dla diagramów związków encji opr. Lech Banachowski, Krzysztof Matejewski2

3 Alternatywne notacje modelowania danych Za chwilę zostaną przedstawione dwie kolejne konwencje notacyjne dla diagramów związków encji. Ilustruje to fakt, że w praktyce modelowania danych są używane rozmaite notacje i nie ma jednego, jedynie słusznego standardu. Wszystkie one obejmują te same pojęcia: encja – atrybut - związek. Wybór notacji jest naprawdę drugorzędny i jest często determinowany przez rodzaj narzędzia CASE, którego używa zespół projektowy. opr. Lech Banachowski, Krzysztof Matejewski3

4 Notacja modelowania danych IDEF1X Najpierw przedstawimy notację modelowania IDEF1X. Jest ona dostępna w MS Visio: "Database -> Options ->Document -> Zakładka General -> Symbol set = IDEF1X" (zamiast domyślnego "Relational") opr. Lech Banachowski, Krzysztof Matejewski4

5 Notacja modelowania danych IDEF1X Konwencje notacyjne IDEF1X:  Związek identyfikujący – linia ciągła  Związek nieidentyfikujący – linia przerywana  Strona wiele związku – czarne kółko  Związek opcjonalny – romb przy encji po stronie jeden  Indeks - IE  Prostokąt z zaokrąglonymi narożami - encja zależna (słaba) opr. Lech Banachowski, Krzysztof Matejewski5

6 Notacja IDEF1X - notacja ErWin’a Notacja IDEF1X jest stosowana w Erwinie - narzędziu CASE używanym dawniej w PJWSTK. Erwin modeluje też związki wieloznaczne:  Jeden student uczęszcza na zajęcia z wielu przedmiotów.  Na zajęcia z jednego przedmiotu uczęszcza wielu studentów. Należy pamiętać, że przedstawiony powyżej schemat, to tylko model związku, a nie rozwiązanie problemu, które, niezależnie od notacji, sprowadza się do rozłożenia związku niejednoznacznego na sumę związków jednoznacznych. opr. Lech Banachowski, Krzysztof Matejewski6

7 Notacja modelowania danych Chena Druga z prezentowanych notacji to notacja zaproponowana przez Petera Chena w 1976, jako pierwsza dla diagramów związków encji. Jest ona bardziej uniwersalna od poprzednich, bo umożliwia reprezentację związków wieloargumentowych i wieloznacznych. opr. Lech Banachowski, Krzysztof Matejewski7

8 Notacja modelowania danych Chena Konwencje notacyjne notacji Chena: Encja – prostokąt, Atrybut – koło, Związek – romb Powyższy diagram modeluje zależności: Dla każdej grupy studenckiej prowadzone są zajęcia z różnych przedmiotów przez różnych wykładowców. opr. Lech Banachowski, Krzysztof Matejewski8

9 Notacja modelowania danych Chena W MS Visio o tworzeniu modelu w notacji Chena decydujemy już na etapie otwierania nowego pliku: "File -> New -> Database -> Chen ERD” Dla notacji „Relational” i „IDEF1X: "File -> New -> Database -> Database Model Diagram"). opr. Lech Banachowski, Krzysztof Matejewski9

10 Notacja modelowania danych Chena Należy zwrócić uwagę na fakt, że tylko w notacji Chena przewidziany jest oddzielny symbol reprezentujący związek w taki sposób, który pozwala modelować istniejące niejednoznaczne zależności pomiędzy encjami, gdy liczba encji przekracza 2, bez konieczności wprowadzania do modelu encji asocjacyjnych. opr. Lech Banachowski, Krzysztof Matejewski10

11 Model obiektowo - relacyjny opr. Lech Banachowski, Krzysztof Matejewski11

12 Model obiektowo – relacyjny w MS Visio W obiektowej bazie danych obiekty są instancjami typów obiektowych (klas) z metodami i z dziedziczeniem. Obiekty są gromadzone w tabelach obiektowych. Tabela obiektowa - tabela, której elementami są obiekty ustalonego typu obiektowego (klasy). Przejście od tabeli relacyjnej do obiektowej odbywa się zgodnie z zasadą: wiersz -> obiekt. W wyniku transformacji, wiersz tabeli relacyjnej uzyskuje metody oraz tożsamość obiektową i staje się obiektem. Wartością atrybutu może być wartość złożona, jak np. lista wartości, zbiór wartości, rekord, referencja do innego obiektu. W MS Visio dostęp do narzędzi modelowania obiektowo - relacyjnego uzyskujemy przez włączenie szablonu (stencil) Database -> Object Relational. opr. Lech Banachowski, Krzysztof Matejewski12

13 Model obiektowo – relacyjny w MS Visio Tabela Osoby zawiera zbiór obiektów typu Typ_osoby. opr. Lech Banachowski, Krzysztof Matejewski13

14 Model obiektowo – relacyjny w MS Visio Wprowadzamy dwa typy obiektowe: Typ_adresowy i Typ_osoby. Każdy obiekt typu Typ_osoby ma:  trzy atrybuty typu atomowego (nie - złożonego): Imie, Nazwisko oraz Data_ur oraz  dwa atrybuty typu złożonego: adres – typu Typ_adresowy kierownik – referencja do obiektu typu Typ_osoby. opr. Lech Banachowski, Krzysztof Matejewski14

15 Modelowanie zbiorów wartości  Kolekcja jest modelem zbioru wartości. Oprócz przynależności elementu do zbioru, rozważa się dodatkowe właściwości: ustawienie elementów zbioru w ciąg oraz wielokrotne wystąpienia tego samego elementu zbioru. Oto rodzaje kolekcji:  zbiór - Set – nieuporządkowana kolekcja wartości bez powtórzeń. Np. {4,8,9,3}.  Lista, kolejka - List - uporządkowana kolekcja wartości z powtórzeniami. Np. {1,2,1,5,6,7}.  wielozbiór - MultiSet - nieuporządkowana kolekcja wartości z powtórzeniami. Np. {4,8,4,8,8,9}. W modelu obiektowo-relacyjnym przy pomocy kolekcji można w prosty sposób modelować pewne zjawiska, z którymi spotkaliśmy się już uprzednio, takie jak: atrybuty typów nieatomowych, oraz atrybuty, których wartości są zmienne w czasie. Można również modelować związki zmienne w czasie, ale pod warunkiem zastosowania typów referencyjnych i więzów spójności ograniczających zakres referencji. Sposoby te zostaną omówione na wykładzie „Systemy baz danych” przy przedstawianiu obiektowo - relacyjnych baz danych. opr. Lech Banachowski, Krzysztof Matejewski15

16 Przykłady kolekcji osób: Grupa, Kolejka, Zapisy Kolejne typy obiektowe modelujące odpowiednio:  zbiór(set),  kolejkę (List),  wielozbiór (MultiSet) opr. Lech Banachowski, Krzysztof Matejewski16

17 Kolekcja w modelu relacyjnym grupa W ramach pojedynczej grupy osoby nie są uporządkowane i nie powtarzają się (Id_osoby i Id_grupy tworzą klucz główny). Dla podanego przykładu grupę możemy interpretować jako np. koło naukowe studentów PJWSTK – studenci mogą należeć do wielu kół (kolekcji). Kolejność tej przynależności nie jest istotna. opr. Lech Banachowski, Krzysztof Matejewski17

18 Kolekcja w modelu relacyjnym kolejka W ramach kolejki osoby są uporządkowane (przez wartość atrybutu Pozycja). W jednej kolejce ta sama osoba może wystąpić wielokrotnie. Gdybyśmy chcieli zapewnić, że w kolejce każda osoba może się pojawić co najwyżej jeden raz, należałoby określić jednoznaczny indeks na parze atrybutów: Id_kolejki i Id_osoby. Tutaj przykładem kolejki może być harmonogram referatów wygłaszanych na seminariach katedr. opr. Lech Banachowski, Krzysztof Matejewski18

19 Kolekcja w modelu relacyjnym zapisy (wielozbiór) W ramach pojedynczego zestawu zapisów (wielozbioru), jedna osoba może mieć więcej niż jedno wystąpienie. Uzyskujemy to przez wprowadzenie atrybutu "Wystąpienie" do klucza głównego encji Wpis. Kolejność wpisów jest nieistotna. opr. Lech Banachowski, Krzysztof Matejewski19

20 Kolekcja w modelu relacyjnym zapisy (wielozbiór) W zastosowaniach, w encji Wpis znalazłaby się prawdopodobnie dodatkowa informacja reprezentująca treść wpisu. Gdybyśmy nie potrzebowali takiej informacji, moglibyśmy model zapisów (wielozbioru) uprościć przesuwając atrybut Wystąpienie do części niekluczowej encji Wpis, interpretując go jako liczbę wystąpień osoby identyfikowanej przez wartość atrybutu Id_osoby. Przykładem wielozbioru może być lista cytowań prac naukowych. opr. Lech Banachowski, Krzysztof Matejewski20

21 Słownik notacja Chena - notacja dla diagramów związków encji, w której encja jest rysowana jako prostokąt, atrybut jako kółko, związek jako romb. Umożliwia graficzną reprezentację diagramów ze związkami wieloznacznymi i związkami wielo-argumentowymi. hierarchia encji - ustawienie zbioru encji w hierarchię; w hierarchii encja podrzędna (podencja) stanowi rozszerzenie właściwości encji nadrzędnej (nadencji) – poprzez związek jednojednoznaczny. związek kategorii - związek encji nadrzędnej ze zbiorem encji podrzędnych rozszerzających jej właściwości. Kategoria może być pełna, gdy zbiór instancji encji podrzędnych jest równy zbiorowi instancji nadrzędnej; w przeciwnym razie niepełna. dane hierarchiczne - dane powiązane ze sobą hierarchicznymi powiązaniami takimi jak struktura organizacyjna firmy. czas - aspekt danych uwzględniający ich zmienność w czasie. Dotyczy zmienności wartości atrybutów, instancji encji i instancji związków. model obiektowo-relacyjny - model danych, w którym oprócz "płaskiej" struktury danych relacyjnego modelu danych – tabeli, używa się złożonych struktur danych definiowanych przez typy obiektowe bądź klasy jak w obiektowych jezykach programowania. opr. Lech Banachowski, Krzysztof Matejewski21

22 Słownik c.d. tabela obiektowa - tabela, której elementami są obiekty ustalonego typu obiektowego (klasy). Przejście od tabeli relacyjnej do obiektowej odbywa się zgodnie z zasadą: wiersz - > obiekt tzn. wiersz tabeli relacyjnej uzyskuje metody i tożsamość obiektową i staje się obiektem typ obiektowy - definicja klasy obiektów, wzorzec dla obiektów obejmujący takie konstrukcje jak atrybuty typów złożonych i metody. kolekcja - model zbioru wartości. Oprócz przynależności elementu do zbioru rozważa się dodatkowe właściwości: ustawienie elementów zbioru w ciąg, wielokrotne wystąpienia tego samego elementu zbioru. ODL - język modelowania obiektowo-relacyjnego. związek odwrotny - związek reprezentujący odwrotną relację na zbiorach obiektów do danego związku. opr. Lech Banachowski, Krzysztof Matejewski22

23 Koniec wykładu III Do zobaczenia na wykładzie IV opr. Lech Banachowski, Krzysztof Matejewski23


Pobierz ppt "Wykład III Modelowanie danych opr. Lech Banachowski, Krzysztof Matejewski1."

Podobne prezentacje


Reklamy Google