1 / 33

Relační datový model Základní ideje

Relační datový model Základní ideje. RMD důsledně odděluje data, která jsou chápána jako relace , od jejich implementace. Pro manipulaci s daty jsou k dispozici dva silné prostředky - relační kalkul a relační algebra .

harry
Download Presentation

Relační datový model Základní ideje

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Relační datový modelZákladní ideje RMD důsledně odděluje data, která jsou chápána jako relace, od jejich implementace. Pro manipulaci s daty jsou k dispozici dva silné prostředky - relační kalkul a relační algebra. Pro omezení redundance dat v relační databázi jsou navrženy pojmy umožňující normalizovat relace.

  2. Definice RMD Mějme množiny D1, D2, D3,....... Dn. Z každé vybereme 1 prvek → vytvoříme uspořádanou n-tici. Množina všech n-tic tvoří kartézský součin. Relace je každá podmnožina kartézského součinu. Z hlediska databázových systémů jsou množiny D1, D2, D3,....... Dn množiny hodnot atributů a označují se jako domény.

  3. RMD má jediný konstrukt - databázovou relaci. Celá složitá realita je transformována do relací. Toto je jedno z velkých omezení relační databázové technologie. Otázka: Je to možné, je to únosné? Jak dál…

  4. V čem se databázová relace liší od matematické? • Databázová relace je vybavena pomocnou strukturou, které se říká schéma relace. Schéma relace se skládá ze jména relace, jmen atributů a domén. • Prvky domén, ze kterých se berou jednotlivé komponenty prvků relace, jsou atomické hodnoty. Tomuto omezení se říká 1.normální forma relací (1NF).

  5. Zápis schématu relace Schéma relace lze zapsat: R(A1:D1,....An:Dn) Prvkům relace se říká n-tice (také instance) n určuje řád relace Počet n-tic udává kardinalita relace

  6. Zápis schématu relační databáze Schéma relační databáze je dvojice (R,I), kde R je množina schémat relací, I je množina integritních omezení.

  7. Integritní omezení Doménové Entitní Referenční

  8. Doménové IO Doménové IO přiřazuje pro každý atribut relace předem definovanou doménu jeho hodnot. Doménové IO je definováno: • datovým typem atributu • podmínkami platnosti (logickými formulemi)

  9. Entitní IO Entitní IO zabezpečuje Primární klíč (PK) relace. • Primární klíč je množina atributů KA, kde A je množina všech atributů relace R, jejichž hodnoty jednoznačně určují n-tice (instance) relace R. • K je minimální v tom smyslu, že nelze z K odebrat žádný atribut, aniž by to narušilo identifikační vlastnost. • Z podstaty RMD vyplývá, že každá relace má primární klíč. Protože relace jsou množiny, nesmí relace obsahovat duplicitní n-tice (instance).

  10. Referenční IO Referenční integrita je omezení, které omezuje vztahy mezi daty ve dvou relacích. Atribut, kterého se referenční integrita týká se nazývá cizí klíč (foreign key - FK). Jestliže relace obsahuje cizí klíč, její n-tice jsou závislé na existenci n-tic v nadřazené relaci.Hodnota FK se musí vyskytovat jako hodnota PK v nadřazené relaci.

  11. Podmínky pro relační tabulky • Všechny hodnoty v tabulce musí být elementární (podmínka 1.NF). • Sloupce mohou být v libovolném pořadí. • Řádky mohou být v libovolném pořadí. • Sloupce musí být homogenní = ve sloupci musí být údaje stejného typu (doménové integritní omezení). • Každému sloupci musí být přiřazeno jednoznačné jméno (tzv. atribut). • V relační tabulce nesmí být dva zcela stejné řádky. tzn., že každý řádek je jednoznačně rozlišitelný (entitní integritní omezení).

  12. Funkční závislosti atributů Nechť R(A:D) je relační schéma, X A, Y A jsou jednoduché nebo složené atributy. Y je funkčně závislý na atributu X, značíme ( XY ), platí-li pro každou instanci relace R, že pro každou hodnotu atributu X existuje nejvýše jedna hodnota atributu Y.

  13. Funkční závislosti atributů Atribut Y je úplně funkčně závislý na složeném atributu X, je-li na X funkčně závislý a zároveň není funkčně závislý na žádné z jeho složek.

  14. Funkční závislosti atributů Nechť X, Y, Z jsou atributy (jednoduché nebo složené) daného relačního schématu a nechť mezi dvojicemi atributů platí: X  Y  Y  Z (Y  X). Pak je atribut Ztranzitivně závislý na atributu X.

  15. Normální formy relací Relace R je v1 NF, jestliže jsou všechny její atributy atomické, tj. dále nedělitelné. Toto omezení je příliš silné a stává se hlavní nevýhodou relačních databází.

  16. Normální formy relací Relace R je v 2 NF, je-li v první normální formě (1 NF) a jestliže pro každý neklíčový atribut platí, že je úplně funkčně závislý na primárním klíči.

  17. Normální formy relací Relace R je v 3 NF, je-li ve 2 NF a platí-li, že žádný neklíčový atribut není tranzitivně závislý na žádném klíči relace R.

  18. Normální formy relací Relace R je v Boyce-Coddově NF ( BCNF), je-li v 1 NF a platí-li pro každou funkční závislost X  A , která není triviální, že X je klíčem v R a A je neklíčový atribut.

  19. Příklady normálních forem (1NF)

  20. Příklady normálních forem (2NF)

  21. Příklady normálních forem (2NF)

  22. Příklady normálních forem (2NF) Funkční závislosti atributů: • Číslo  Typ • Číslo Druh • Číslo  Výška • Typ  Druh Číslo  Typ & Typ  Druh ↔Číslo Druh Relace není v 3NF – tranzitivní závislost Aby byla relace v 3NF: • Dekompozicí relace v 2NF dostaneme relace v 3NF.

  23. Příklady normálních forem (3NF)

  24. Příklady normálních forem (3NF)

  25. Příklady normálních forem (BCNF) Odstraňuje závislosti kandidátů primárního klíče. Zaměstnanec (Číslo_zam, RČ, Jméno, Příjmení, Funkce) Kandidáti PK: Číslo_zam a RČ Funkční závislosti: Kromě všech závislostí neklíčových atributů na kandidátech PK, ex. i závislost kandidátů PK navzájem. Relace není v CBNF. Dekompozice: Zaměstnanec (Číslo_zam, Jméno, Příjmení, Funkce) a RČ_zaměstnanců (Číslo_zam, RČ) Obě relace jsou v BCNF

  26. Dedukce funkčních závislostí Nechť R je relační schéma a A, B, C je podmnožina jeho atributů. Dále předpokládejme funkční závislosti: A  B a B  C. Z těchto závislostí lze předpokládat A  C (tranzitivita). Označme F jako množinu funkčních závislostí pro R (A  B a B  C) a X  Y jako libovolnou funkční závislost. Řekneme-li, že F logicky implikuje X  Y, pak každý prvek relačního schématu R, který splňuje závislosti v F, splňuje i závislost X  Y a zapisujeme F = X  Y V našem případě relačního schématu R pak tuto skutečnost zapíšeme:  A  B, B  C= A  C

  27. Uzávěr množiny funkčních závislostí F+ je uzávěrem F tehdy, platí-li, že všechny závislosti v F+ jsou logickými důsledky v F. A zapisujeme: F+ =  X  Y  F = X  Y

  28. Kandidáti primárního klíče a funkční závislosti Mějme schéma R(A1,A2,....,An) a funkční závislosti F. Nechť X je podmnožina {A1,A2,....,An}. Pak o X lze říci, že je kandidátem primárního klíče v R, jestliže: 1. X  A1A2....,An je v F+ Závislost všech atributů A1,A2,....,Anna atributu X je daná nebo logicky vyplývá. 2. Neexistuje Y  X, pro které by platilo Y  A1A2....,An v F+.

  29. Armstrongovy axiomy 1. Reflexivita Jestliže Y  X  U, pak závislost X  Y je logicky implikována. Na složeném atributu A1A2,....An je funkčně závislý každý atribut Ai, který je jeho složkou. 2. Augmentace Jestliže platí X  Y ve schématu R a Z je podmnožinou atributů U, pak taky platí: XZ  YZ (XZ je zkrácené označení X  Z). 3. Tranzitivita Jestliže platí X  Y a zároveň Y  Z, pak taky platí X  Z

  30. Armstrongovy axiomy Příklad: Mějme schéma R(A,B,C,D) s funkčními závislostmi AC, B  D.Zvolme primárním klíčem složený atribut AB jako jediný. Dokažte, že AB je jediným kandidátem primárního klíče. 1. A  C daná závislost 2. AB  ABC augmentace atributy AB 3. B  D daná závislost 4. ABC  ABCD augmentace atributy ABC 5. AB  ABCD tranzitivita Všechny atributy relačního schématu R jsou závislé na klíči AB a přitom nejsou závislé na jeho složkách A, B.

  31. Dodatečná deduktivní pravidla 1. Pravidlo spojení  X  Y, X  Z= X  YZ 2. Pravidlo pseudotranzitivity  X  Y, WY  Z= WX  Z 3. Dekompoziční pravidlo Jestliže X  Y & Z  Y, pak X  Z

  32. Dodatečná deduktivní pravidla - důkaz Pravidlo 1 X  Y daná závislost X  XY augmentace X X  Z daná závislost XY  YZ augmentace Y X  XY & X Y YZ implikuje X  YZ Pravidlo 2 X  Y daná závislost WX  WY augmentace W WY  Z daná závislost WX  Z tranzitivita Pravidlo 3 Y  Z vyplývá z reflexivity X  Y daná závislost X  Z tranzitivita

  33. Dodatečná deduktivní pravidla Příklad: Mějme schéma R(A,B,C) a F =  A  B, B  C. Určete F+. Řešení: 1. Za X dosaďte postupně všechny atributy, obsahující A. ABC  AB dekompoziční pravidlo A  C tranzitivita, vyplývající z F AB BC augmentace B ABC BC tranzitivita 2. Za X dosaďte postupně všechny atributy, které obsahují B, ale neobsahují A. BC  B dekompoziční pravidlo B  C předpoklad B  0 reflexivita 3. Za X dosaďte všechny atributy, které obsahují C, ale neobsahují ani A, ani B. C  C reflexivita C  0 reflexivita 0  0 reflexivita

More Related