normálne formy i v

61
Normálne formy I Normálne formy I V V Július Štuller www.cs.cas.cz /~ stuller

Upload: jolie-vargas

Post on 03-Jan-2016

38 views

Category:

Documents


3 download

DESCRIPTION

Normálne formy I V. Július Štuller www.cs.cas.cz/~stuller. Závislosti. Silná závislosť (~ funkčná závislosť) triviálne FZ ( FD - Functional dependency / ies ) Úplná FZ (~ kľuč …) 2NF (o2NF, z2NF) Tranzitívna 3NF (o3NF, z3NF) BCNF 1NF 2NF 3NF - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Normálne formy I V

Normálne formy INormálne formy IVV

Július Štuller

www.cs.cas.cz/~stuller

Page 2: Normálne formy I V

30. novembra 2006 Normálne formy 2

ZávislostiZávislosti

Silná závislosť (~ funkčná závislosť) triviálne FZ (FD - Functional dependency/ies)

– Úplná FZ (~ kľuč …) 2NF (o2NF, z2NF)

– Tranzitívna 3NF (o3NF, z3NF) BCNF

– 1NF 2NF 3NF– 1NF 2NF 3NF BCNF– 1NF 2NF z2NF 3NF z3NF = BCNF

Page 3: Normálne formy I V

30. novembra 2006 Normálne formy 3

ZávislostiZávislosti

(1NF) Silná závislosť

~ funkčná závislosť (FZ / FD) Úplná FZ

~ klúč 2NF Tranzitívna FZ 3NF Mnohoznačná závislosť 4NF (MZ / MVD) Závislosti spojenia 5NF (JD)

Page 4: Normálne formy I V

30. novembra 2006 Normálne formy 4

Príklad 1Príklad 1

Prednáška Prednášajúci Skripta

Analýza Lojzo Posloupnosti

Analýza Lojzo Řady

Analýza Lojzo Funkce

Mechanika Legová Mechanika I

Mechanika Havránková Mechanika I

Mechanika Legová Mechanika II

Mechanika Havránková Mechanika II

Page 5: Normálne formy I V

30. novembra 2006 Normálne formy 5

Príklad 1Príklad 1

Prednáška Prednášajúci Skripta

Analýza Lojzo Posloupnosti

Analýza Lojzo Řady

Analýza Lojzo Funkce

Mechanika Legová Mechanika I

Mechanika Havránková Mechanika I

Mechanika Legová Mechanika II

Mechanika Havránková Mechanika II

Page 6: Normálne formy I V

30. novembra 2006 Normálne formy 6

Príklad 1Príklad 1

Prednáška Prednášajúci Skripta

Nemá nekľúčové atribúty:– → :

2. NF 3. NF

Neexistujú „netriviálne“ FZ – → :

BCNF

Page 7: Normálne formy I V

30. novembra 2006 Normálne formy 7

Príklad 1Príklad 1

Prednáška Prednášajúci Skripta

Analýza Lojzo Posloupnosti

Analýza Lojzo Řady

Analýza Lojzo Funkce

Mechanika Legová Mechanika I

Mechanika Havránková Mechanika I

Mechanika Legová Mechanika II

Mechanika Havránková Mechanika II

Page 8: Normálne formy I V

30. novembra 2006 Normálne formy 8

PoznámkyPoznámky

Redundancia– Update/delete anomálie …

Prednášajúci a skripta sú „nezávislé“ …– Množina hodnôt „Prednášajúcich“

odpovedajúcich určitej hodnote „Prednášky“ (napríklad „Mechanika“) nezávisí na (hodnote) ostatných atribútov („Skriptá“)

Page 9: Normálne formy I V

30. novembra 2006 Normálne formy 9

Príklad 1Príklad 1

Prednáška Prednášajúci Skripta

Analýza Lojzo Posloupnosti

Analýza Lojzo Řady

Analýza Lojzo Funkce

Mechanika Legová Mechanika I

Mechanika Havránková Mechanika I

Mechanika Legová Mechanika II

Mechanika Havránková Mechanika II

Page 10: Normálne formy I V

30. novembra 2006 Normálne formy 10

Príklad 2Príklad 2

Prednáška Prednášajúci

Analýza Lojzo

Mechanika Legová

Mechanika Havránková

Prednáška Skripta

Analýza Posloupnosti

Analýza Řady

Analýza Funkce

Mechanika Mechanika I

Mechanika Mechanika II

Page 11: Normálne formy I V

30. novembra 2006 Normálne formy 11

4. Normálna forma 4. Normálna forma

Značenie

1. xy = ( x , y )

2. Majme:– reláciu R =– a množinu atribútov X, Y A . Označme:

YR ( x ) = { y ; ( u T )

( u [ X ] = x ) & ( u [ Y ] = y ) ] }

T D, A,

Page 12: Normálne formy I V

30. novembra 2006 Normálne formy 12

Príklad 1Príklad 1

Prednáška Prednášajúci Skripta

Analýza Lojzo Posloupnosti

Analýza Lojzo Řady

Analýza Lojzo Funkce

Mechanika Legová Mechanika I

Mechanika Havránková Mechanika I

Mechanika Legová Mechanika II

Mechanika Havránková Mechanika II

Page 13: Normálne formy I V

30. novembra 2006 Normálne formy 13

YYRR ( x ) ( x )

YR ( x ) = { y ; ( u T ) ( u [ X ] = x ) & ( u [ Y ] =

y ) ] }

Prednášajúci R ( Analýza ) = { y ; ( u T )

( u [ Prednáška ] = Analýza ) &

( u [ Prednášajúci ] = y ) ] }

Page 14: Normálne formy I V

30. novembra 2006 Normálne formy 14

Príklad 1Príklad 1

Prednáška Prednášajúci Skripta

Analýza Lojzo Posloupnosti

Analýza Lojzo Řady

Analýza Lojzo Funkce

Mechanika Legová Mechanika I

Mechanika Havránková Mechanika I

Mechanika Legová Mechanika II

Mechanika Havránková Mechanika II

Page 15: Normálne formy I V

30. novembra 2006 Normálne formy 15

Prednášajúci Prednášajúci RR ( Analýza ) ( Analýza )

Prednášajúci R ( Analýza ) =

{ y ; ( u T )( u [ Prednáška ] =

Analýza ) &

( u [ Prednášajúci ] = y ) ] }

= { Lojzo}

Page 16: Normálne formy I V

30. novembra 2006 Normálne formy 16

Prednášajúci Prednášajúci RR ( Mechanika ) ( Mechanika )

Prednášajúci R ( Mechanika ) =

{ y ; ( u T )( u [ Prednáška ] =

Mechanika ) &

( u [ Prednášajúci ] = y ) ] }

Page 17: Normálne formy I V

30. novembra 2006 Normálne formy 17

Príklad 1Príklad 1

Prednáška Prednášajúci Skripta

Analýza Lojzo Posloupnosti

Analýza Lojzo Řady

Analýza Lojzo Funkce

Mechanika Legová Mechanika I

Mechanika Havránková Mechanika I

Mechanika Legová Mechanika II

Mechanika Havránková Mechanika II

Page 18: Normálne formy I V

30. novembra 2006 Normálne formy 18

Prednášajúci Prednášajúci RR ( Mechanika ) ( Mechanika )

Prednášajúci R ( Mechanika ) =

{ y ; ( u T )( u [ Prednáška ] = Mechanika ) & ( u [ Prednášajúci ] = y ) ] }

= { Legová, Havránková }

Page 19: Normálne formy I V

30. novembra 2006 Normálne formy 19

Mnohoznačná závislosťMnohoznačná závislosť

Definícia 1 Majme:

– reláciu R = – a množinu atribútov X, Y A .

Označme: – Z = A – ( X U Y )– XZ = X U Z ( ~ A – Y )

T D, A,

Page 20: Normálne formy I V

30. novembra 2006 Normálne formy 20

MZMZ

Množina atribútov Y v R

mnohoznačne závisí

na množine atribútov X

(v R platí mnohoznačná závislosť Y na X )

ak pre ľubovolné hodnoty

xz množiny atribútov XZ platí:

YR ( xz ) = YR ( x )

Page 21: Normálne formy I V

30. novembra 2006 Normálne formy 21

Príklad 1Príklad 1

Prednáška Prednášajúci Skripta

Analýza Lojzo Posloupnosti

Analýza Lojzo Řady

Analýza Lojzo Funkce

Mechanika Legová Mechanika I

Mechanika Havránková Mechanika I

Mechanika Legová Mechanika II

Mechanika Havránková Mechanika II

Page 22: Normálne formy I V

30. novembra 2006 Normálne formy 22

Multi-valued dependenciesMulti-valued dependencies

Značenie: X →→R Y

Prednáška →→ R Prednášajúci

Prednáška →→ R Skriptá

Page 23: Normálne formy I V

30. novembra 2006 Normálne formy 23

MVDMVD

X →→ R Y ↔ X →→ R Z

→X →→ R Y │ Z

X → R Y ? X →→ R Y

Page 24: Normálne formy I V

30. novembra 2006 Normálne formy 24

Príklad 1Príklad 1

Let Deň Pilot Dráha

112 6 Apríla Ivan 7

112 7 Apríla Emil 7

203 9 Apríla Jirka 3

Page 25: Normálne formy I V

30. novembra 2006 Normálne formy 25

Príklad 1Príklad 1

Let Deň Pilot Dráha

Let → Dráha

Page 26: Normálne formy I V

30. novembra 2006 Normálne formy 26

Príklad 1Príklad 1

Prednáška Prednášajúci Skripta

Analýza Lojzo Posloupnosti

Analýza Lojzo Řady

Analýza Lojzo Funkce

Mechanika Legová Mechanika I

Mechanika Havránková Mechanika I

Mechanika Legová Mechanika II

Mechanika Havránková Mechanika II

Page 27: Normálne formy I V

30. novembra 2006 Normálne formy 27

MVDMVD

X → R Y → X →→ R Y

Page 28: Normálne formy I V

30. novembra 2006 Normálne formy 28

Triviálna MZTriviálna MZ

Definícia 2

Nech X U Y = A .Potom:

– X →→ R – X →→ R Y

nazveme triviálnymi MZ.

Page 29: Normálne formy I V

30. novembra 2006 Normálne formy 29

MVDMVD

X → R Y → X →→ R Y

Page 30: Normálne formy I V

30. novembra 2006 Normálne formy 30

4. Normálna forma4. Normálna forma

Definícia 3

Relácia R =

sa nachádza v 4. normálnej forme (4. NF)

ak z existencie

netriviálnej mnohoznačnej závislosti

X →→ R Y

plynie, že X je nadkľúč relácie R.

T D, A,

Page 31: Normálne formy I V

30. novembra 2006 Normálne formy 31

Triviálna MVDTriviálna MVD

Y = Y = X Y X 4. NF:

X →→ R Y → K X

Page 32: Normálne formy I V

30. novembra 2006 Normálne formy 32

Príklad 1Príklad 1

Prednáška Prednášajúci Skripta

Analýza Lojzo Posloupnosti

Analýza Lojzo Řady

Analýza Lojzo Funkce

Mechanika Legová Mechanika I

Mechanika Havránková Mechanika I

Mechanika Legová Mechanika II

Mechanika Havránková Mechanika II

Page 33: Normálne formy I V

30. novembra 2006 Normálne formy 33

Príklad 2Príklad 2

Prednáška Prednášajúci

Analýza Lojzo

Mechanika Legová

Mechanika Havránková

Prednáška Skripta

Analýza Posloupnosti

Analýza Řady

Analýza Funkce

Mechanika Mechanika I

Mechanika Mechanika II

Page 34: Normálne formy I V

30. novembra 2006 Normálne formy 34

VetaVeta

Majme:– reláciu R =– a množinu atribútov X, Y A .

Označme: Z = A – ( X U Y ) .

X →→ R Y ↔ R = R[XY] * R[XZ]

T D, A,

Page 35: Normálne formy I V

30. novembra 2006 Normálne formy 35

5. Normálna forma5. Normálna forma

Degustátor Víno Výrobca

Jano Chablis Jean Claude

Jano Beaujolais Nicolas

Peter Chablis Nicolas

Jano Chablis Nicolas

Page 36: Normálne formy I V

30. novembra 2006 Normálne formy 36

KlúčeKlúče

Degustátor Víno Výrobca

Jano Chablis Jean Claude

Jano Beaujolais Nicolas

Peter Chablis Nicolas

Jano Chablis Nicolas

Page 37: Normálne formy I V

30. novembra 2006 Normálne formy 37

Join dependenciesJoin dependencies

Neexistujú:

Degustátor →→ R Víno

Víno →→ R Výrobca

Výrobca →→ R Degustátor

Page 38: Normálne formy I V

30. novembra 2006 Normálne formy 38

KlúčeKlúče

Degustátor Víno Výrobca

Jano Chablis Jean Claude

Jano Beaujolais Nicolas

Peter Chablis Nicolas

Jano Chablis Nicolas

Page 39: Normálne formy I V

30. novembra 2006 Normálne formy 39

Join dependenciesJoin dependencies

Neexistujú: Degustátor →→ R Víno

Víno →→ R Výrobca

Výrobca →→ R Degustátor

Nie je možné rozložiť na dve relácie bez straty informácie

Page 40: Normálne formy I V

30. novembra 2006 Normálne formy 40

Platí …Platí …

R R [ Degustátor , Vino ]

* R [ Vino , Výrobca ]R R [ Degustátor , Vino ]

* R [ Degustátor , Výrobca ]R R [ Degustátor , Výrobca ]

* R [ Vino , Výrobca ]

Page 41: Normálne formy I V

30. novembra 2006 Normálne formy 41

Ale tiež platí …Ale tiež platí …

R = R [ Degustátor , Vino ]

* R [ Vino , Výrobca ]

* R [ Degustátor , Výrobca ]

Page 42: Normálne formy I V

30. novembra 2006 Normálne formy 42

Závislosť spojeniaZávislosť spojenia

Definícia 4Majme:

– reláciu R =

– a množinu atribútov X1, …, Xk A .

Povieme, že existuje závislosť spojenia

ak

R = * R [ Xi ]

T D, A,

Page 43: Normálne formy I V

30. novembra 2006 Normálne formy 43

5. NF5. NF

Definícia 5

Relácia je v 5. normálnej forme

ak každá (netriviálna) závislosť spojenie

je implikovaná nejakým (potenciálnym)

kľúčom.

ZS

Multi-valued dependency (MVD)

Page 44: Normálne formy I V

30. novembra 2006 Normálne formy 44

Integritné obmedzeniaIntegritné obmedzenia

Všetky prebrané závislosti:– Silná závislosť

~ funkčná závislosť (FZ) triviálne FZ (FD - Functional dependency/ies)

– Úplná FZ (~ klúč …)– Tranzitívna FZ – Mnohoznačná závislosť (MZ / MVD )– Zavislosť spojenia (JD)

Page 45: Normálne formy I V

30. novembra 2006 Normálne formy 45

Integrity ConstraintsIntegrity Constraints

predstavujú určité o b m e d z e n i a ,ktoré musia splňovať jednotlivé relácie, ak majú patriť do skupiny relácií v tej-ktorej normálnej forme …

Obecne budeme pod pojmom obmedzenie chápať ľubovoľné podmienky kladené na relácie.

Page 46: Normálne formy I V

30. novembra 2006 Normálne formy 46

ICIC

Budeme predpokladať, že:

1. Je možné určiť pre každú reláciu, či vyhovuje alebo nie danému obmedzeniu

2. Máme danú množinu obmedzení– Označenú IC (Integrity Constraints)

Page 47: Normálne formy I V

30. novembra 2006 Normálne formy 47

Relačná schémaRelačná schéma

Definícia 6 Nech je dané:

– Konečná množina mien atribútov A– Zobrazenie D priraďujúce každému menu atribútu a

z A doménu tohoto atribútu D(a)– Množina obmedzení IC .

Trojicu < A, D, IC > označíme symbolom S a nazveme relačnou schémou.

Značenie: S = < A, D, IC > .

Page 48: Normálne formy I V

30. novembra 2006 Normálne formy 48

Inštancia schémyInštancia schémy

Definícia 7 Majme danú relačnú schému

S = . Povieme, že relácia R = je

tzv. inštanciou relačnej schémy S

(alebo typu S ),

ak R vyhovuje všetkým obmedzeneniam IC . Značenie: R S .

T D, A,

IC D, A,

Page 49: Normálne formy I V

30. novembra 2006 Normálne formy 49

Logická schémaLogická schéma

Definícia 8

Logickou schémou (databázovou schémou)

relačného modelu dát budeme rozumieť

(konečnú) množinu takých relačných schém,

ktoré definujú všetky relácie nad danou

množinou mien atribútov,

ktoré potrebujeme k popísaniu určitého

výseku reality.

Page 50: Normálne formy I V

30. novembra 2006 Normálne formy 50

Značenie:

Σ = { Si ; i , k N; Si je relačná schéma }

Page 51: Normálne formy I V

30. novembra 2006 Normálne formy 51

Relačný model realityRelačný model reality

Definícia 9

Relačným modelom reality budeme rozumieť

stav všetkých relácií z danej logickej schémy

v čase t ako funkciu premennej t

{ R(t) ; [ R(t) S ] & ( S Σ ) }

Page 52: Normálne formy I V

30. novembra 2006 Normálne formy 52

ŠtruktúryŠtruktúry

Výsledkom vačšiny procesov modelovania skutočnosti je obyčajne nejaká štruktúra:– najčastejšie nejaký graf– prípadne štrutúra prevediteľná na nejaký graf.

ktorá by sa mala vo vhodnej forme uložiť v počítači tak, ako to vyžaduje koncepcia konceptuálnej schémy (, ktorá má byť reálnou súčasťou DBS a preto musí byť prezentovaná v explicitnej, počítačom prijatelnej forme ... )

Page 53: Normálne formy I V

30. novembra 2006 Normálne formy 53

Hierarchická štruktúraHierarchická štruktúra

možné znázorniť pomocou stromu– riadiace– & organizačné jednotky

(založené na princípu centralizácie …)

~ hierarchická štruktúra modelu skutočnosti

Page 54: Normálne formy I V

30. novembra 2006 Normálne formy 54

Spojenie množínSpojenie množín

Definícia 1

Majme dve množiny A , B a nech funkcia f má jeden z

následujúcich tvarov:1. totálna z A do B

2. parciálna z A do B

3. totálna z A do Π(B) -

4. parciálna z A do Π(B) -

Page 55: Normálne formy I V

30. novembra 2006 Normálne formy 55

Spojenie množínSpojenie množín

Potom povieme, že

z množiny A do množiny B je

vzhľadom k funkcii spojenie typu: 1 (v prípade 1.) c (c = 0 alebo 1) (v prípade 2.) m (m N) (v prípade 3.) mc (v prípade 4.)

Page 56: Normálne formy I V

30. novembra 2006 Normálne formy 56

Spojenie typuSpojenie typu

Definícia 2

Povieme, že

z množiny A do množiny B je spojenie typu x

ak existuje taká funkcia f , že z množiny A do množiny B je vzhľadom k tejto funkcii f spojenie typu x .

Page 57: Normálne formy I V

30. novembra 2006 Normálne formy 57

Typ spojeniaTyp spojenia

Definícia 3

Majme:– dve množiny A , B– dve funkcie f , g ,

ktoré vytvárajú spojenie z A do B ( funkcia f ) a z B do A ( funkcia g ).

Označme:– x typ spojenia z A do B vzhľadom k funkcii f– y typ spojenia z B do A vzhľadom k funkcii g

Page 58: Normálne formy I V

30. novembra 2006 Normálne formy 58

Typ spojeniaTyp spojenia

Dvojicu ( x , y ) nazveme

typ spojenia medzi množinami A a B vzhľadom k funkciám f a g .

Page 59: Normálne formy I V

30. novembra 2006 Normálne formy 59

Spojenie typuSpojenie typu

Definícia 4

Povieme, že

medzi množinami A a B je spojenie typu ( x , y )

ak existujú také dve funkcie f a g , že medzi množinami A a B je spojenie typu ( x , y ) vzhľadom k funkciám f a g .

Page 60: Normálne formy I V

30. novembra 2006 Normálne formy 60

Poznámka:– E xistuje celkove 16 typov spojenia medzi

dvoma množinami.– Avšak iba 10 je roznych:

( 1 , 1 ) ( 1 , c ) ( c , c ) ( 1 , m ) ( c , m ) ( m , m ) ( 1, mc ) ( c , mc ) ( m , mc ) ( mc ,

mc )

Page 61: Normálne formy I V

30. novembra 2006 Normálne formy 61

Definícia 5:

Pokiaľ funkcia g ( z definície 3 ) je inverznou funkciou k funkcii f,

prípadne je z inverznej funkcii odvodená,

budeme hovoriť o

type spojenia medzi A a B vzhľadom k funkcii f .