Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Relacyjny model danych

Podobne prezentacje


Prezentacja na temat: "Relacyjny model danych"— Zapis prezentacji:

1 Relacyjny model danych
Wykład 2 S. Kozielski

2 Relacja X, Y – zbiory, Iloczyn kartezjański X Y = {(x,y): xX  yY}
X, Y – zbiory, Iloczyn kartezjański X Y = {(x,y): xX  yY} Dwuczłonowa relacja w X Y = {(x,y): xX  yY  x  y}  X Y N – członowa relacja: podzbiór iloczynu kartezjańskiego X1  X2  X3  ...  XN

3 Model relacyjny – opis formalny
Atrybuty: A1, A2, A3, np.: nazwisko, nrp, kwota, adres Dziedziny atrybutów: DA1, DA2, DA3, ... Schemat relacji: R = { A1, A2, ..., Ap} – podzbiór zbioru atrybutów Relacja r(R): podzbiór iloczynu kartezjańskiego dziedzin atrybutów tworzących schemat DA1  DA2  ...  DAp r(R)  DA1  DA2  ...  DAp

4 Przykład: R = {nrp, nrt, kwota} Dnrp= {1, 2, 3}, Dnrt= {1, 2, 3}, Dkwota= {150, 200, 300} Dnrp  Dnrt  Dkwota= {1, 1, 150 2, 1, 150 3, 1, 150 3, 3, 150 3, 3, 200 3, 3, 300}

5 Wypłaty  Dnrp  Dnrt  Dkwota
2 300 3 150 1 200 Wypłaty  Dnrp  Dnrt  Dkwota

6 Relacja jako zbiór krotek
r(R) = {t1, t2, t3, …, tk} (A, B, C) ———— a1 b1 c krotka t1 a2 b2 c krotka t2 a3 b3 c krotka t3

7 Różne formy opisu stosowane w modelu relacyjnym
Opis formalny Opis tablicowy Opis fizyczny (fizycznych struktur d.) relacja tablica (tabela) plik krotka wiersz rekord atrybut kolumna pole schemat relacji nagłówek tablicy typ rekordu

8

9 Algebra relacji Dane relacje: r(R), s(S) Selekcja
w – warunek selekcji (wyrażenie logiczne) w(r) = {t : t  r  w(t) = True } = p(R)

10 Przykład selekcji A B C 2 1 C=2

11 Projekcja Niech X  R X = { u : t  r  u = t [X] } = q (X)

12 Przykład projekcji A B C AC

13 Złączenie (naturalne)
r  s = { u : t  r  w  s  t [R  S] = w [R  S]  u[R] = t  u[S] = w} = z (R  S)

14 Przykład złączenia naturalnego
r (A, B, C) s (C, D) z (A, B, C, D) ————  ——— = ————— a1 b1 c c1 d a1 b1 c1 d1 a2 b2 c c5 d a4 b4 c1 d1 a3 b3 c3 a4 b4 c1

15 Ogólna postać złączenia ( - złączenie)
r w s =  w (r  s) lub r  AB s =  AB (r  s) , gdzie A  R, B  S

16 Dzielenie Niech będą dane relacje: r(XY), s(Y)
r  s = { u : w  s t  r t [Y] = w  t [X] = u }

17 Przykład dzielenia w (nrp, nrt) t (nrt) w  t = z (nrp) ———— ——— ———
———— ——— ——— 2 2 2 3 3 1 3 2 3 3

18 Operatory mnogościowe
Niech będą dane relacje: r(R), s(R) Suma: r  s Różnica: r \ s Iloczyn: r  s

19 Pytanie Z1 jako wyrażenie algebry relacji
Z1 = nazwa (nazwisko = ‘Jaworek’ (Pracownicy  Wypłaty  Tematy))

20 Złączenie tabel Pracownicy Wypłaty nrp nrt kwota 2 300 3 150 1 200 nrp
nazwisko adres nrz 1 Lipowski Ruda 2 Grabski Zabrze 3 Jaworek Gliwice

21 Pracownicy  Wypłaty nrp nazwisko adres nrz nrt kwota 2 Grabski
Zabrze 1 300 3 Jaworek Gliwice 150 Lipowski Ruda 200

22 Pracownicy  Wypłaty  Tematy
nrp nazwisko adres nrz nrt kwota nazwa kier. 2 Grabski Zabrze 1 300 Pr. przetwor. 3 Jaworek Gliwice 150 Pr. reaktora Lipowski Ruda Pr. zasilacza 200

23 nazwisko = ‘Jaworek’ (Pracownicy  Wypłaty  Tematy)
nrp nazwisko adres nrz nrt kwota nazwa kier. 3 Jaworek Gliwice 1 150 Pr. reaktora 2 200 Pr. przetwor.

24 nazwa (nazwisko = ‘Jaworek’ (Pracownicy  Wypłaty  Tematy))
Pr. reaktora Pr. przetwor.

25 Własności operatorów algebry relacji
r(R), s(S), z(Z) – dane relacje 1) Przemienność złączeń: r  s = s  r 2) Łączność złączeń: (r  s)  z = r  (s  z)

26 3) Przemienność selekcji i złączeń dla wyrażenia w(r  s)
Niech atr(w) – zbiór atrybutów występujących w w Jeśli atr(w)  R, to w(r  s) = (w(r ))  s Jeśli atr(w)  S, to w(r  s) = r  (w(s )) Jeśli w= w1  w2 oraz atr(w1)  R i atr(w2)  S, to w(r  s) = (w1(r ))  (w2(s))

27 Przykłady równoważnej postaci wyrażeń
P1=nazwisko (nrz=3kwota>2000 (Pracownicy  Wypłaty)) P1= nazwisko ((nrz=3 (Pracownicy))  (kwota>2000 (Wypłaty))) P2= nazwisko (nazwa = ‘Pr.gen.’ (Pracownicy  Wypłaty  Tematy)) P2= nazwisko (Pracownicy  Wypłaty (nazwa = ‘Pr.gen.’ (Tematy)))

28 Drzewo rozbioru wyrażenia algebry relacji – plan realizacji zapytania

29 Optymalizacja wyrażeń algebry relacji

30 P2= nazwisko (nazwa = ‘Pr.gen.’ (Pracownicy  Wypłaty  Tematy))
P2= nazwisko (Pracownicy  Wypłaty (nazwa = ‘Pr.gen.’ (Tematy)))

31

32

33 Proste reguły optymalizacji wyrażeń algebry relacji
Przenieść selekcje (i projekcje) jak najwyżej w drzewie rozbioru wyrażenia Wykonać projekcje razem ze złączeniami lub selekcjami Dobrać kolejność złączeń według selekcji najsilniej redukujących


Pobierz ppt "Relacyjny model danych"

Podobne prezentacje


Reklamy Google