Prof. Dr. H. Faeskorn-Woyke u.a.1 Relationaler Datenbankentwurf (II) Normalformenlehre.

20
of. Dr. H. Faeskorn-Woyke u.a. 1 Relationaler Datenbankentwurf (II) Normalformenlehre

Transcript of Prof. Dr. H. Faeskorn-Woyke u.a.1 Relationaler Datenbankentwurf (II) Normalformenlehre.

Page 1: Prof. Dr. H. Faeskorn-Woyke u.a.1 Relationaler Datenbankentwurf (II) Normalformenlehre.

Prof. Dr. H. Faeskorn-Woyke u.a. 1

Relationaler Datenbankentwurf (II)

Normalformenlehre

Page 2: Prof. Dr. H. Faeskorn-Woyke u.a.1 Relationaler Datenbankentwurf (II) Normalformenlehre.

Prof. Dr. H. Faeskorn-Woyke u.a. 2

X, Y Teilmengen von Attributen einer Relation R.

Y heißt funktional abhängig von X, wenn für alle Tupel r, s aus R gilt

aus ProjX(s) = ProjX(r) folgt stets: ProjY(s) = ProjY(r)

oder anders:Alle Zeilen, deren Wert in X übereinstimmt, stimmen auch bezüglich ihres Wertes in Y überein.

X Y liest man “X bestimmt Y”, Y ist funktional abhängig von X

ProjX(s) bezeichnet die Projektion von s auf X.

Funktionale Abhängigkeiten (1)

Page 3: Prof. Dr. H. Faeskorn-Woyke u.a.1 Relationaler Datenbankentwurf (II) Normalformenlehre.

Prof. Dr. H. Faeskorn-Woyke u.a. 3

Kun_Nr Nachname Vorname G. Ort Strasse TelefonNr

1 Tholler Andreas m Köln Belaweg 0221/956788

2 Falk Bernhardt m Köln Auf dem Hügel 0221/2345690

3 Müller Tobias m Köln Bennstr 0221/5566123

4 Franz Helga w Köln Bahnhofstr. 0221/5566901

5 Sündbald Hannelore w Gummersbach Luisenstr 02261/4588

6 Wal Birgit w Gummersbach Löh 02261/4471

7 Tisch Hartmut m Gladbeck Agathastr. 02271/75613

Funktionale Abhängigkeiten (2)

Page 4: Prof. Dr. H. Faeskorn-Woyke u.a.1 Relationaler Datenbankentwurf (II) Normalformenlehre.

Prof. Dr. H. Faeskorn-Woyke u.a. 4

Eine Attributkombination K wird eindeutiger Schlüssel

der Relation AAR n,...,11 genannt, wenn

1) AA nK ,...,

1

2) AA n,...,

1 ist von keiner Teilmenge von K

funktional abhängig ist.

Eindeutiger Schlüssel

Page 5: Prof. Dr. H. Faeskorn-Woyke u.a.1 Relationaler Datenbankentwurf (II) Normalformenlehre.

Prof. Dr. H. Faeskorn-Woyke u.a. 5

Eindeutiger Schlüssel

EindeutigerSchlüssel

EindeutigerSchlüssel

EindeutigerSchlüssel

Kun_Nr Vorname G. Ort Strasse TelefonNr

1 Tholler Andreas m Köln Belaweg 0221/956788

2 Falk Bernhardt m Köln Auf dem Hügel 0221/2345690

3 Müller Tobias m Köln Bennstr 0221/5566123

4 Franz Helga w Köln Bahnhofstr. 0221/5566901

5 Sündbald Hannelore w Gummersbach Luisenstr. 02261/4588

6 Wal Birgit w Gummersbach Löh 02261/4471

7 Tisch Hartmut m Gladbeck Agathastr. 02271/75613

Nachname

Page 6: Prof. Dr. H. Faeskorn-Woyke u.a.1 Relationaler Datenbankentwurf (II) Normalformenlehre.

Prof. Dr. H. Faeskorn-Woyke u.a. 6

Eindeutiger Schlüssel 2. Beispiel: Relation Auftragspositionen

TNr AuftragsNr Menge

1 1 1

31 1 2

31 2 2

57 2 1

60 2 1

31 3 10

55 3 1

58 4 1

56 5 1

57 5 12

58 5 18

1 6 120

31 6 130

Page 7: Prof. Dr. H. Faeskorn-Woyke u.a.1 Relationaler Datenbankentwurf (II) Normalformenlehre.

Prof. Dr. H. Faeskorn-Woyke u.a. 7

• Eindeutiger Schlüssel

• Primärschlüssel– Jede Relation besitzt genau einen Primärschlüssel

– ein eindeutiger Schlüssel wird auserwählt• Fremdschlüssel

– ist Primärschlüssel in einer anderen Relation

• Zweitschlüssel– dienen zum schnellen Zugriff über Spalten, die nicht zum

Primärschlüssel gehören– Suchbedingungen– Join-Spalten

Andere Schlüsselbegriffe (1)

Page 8: Prof. Dr. H. Faeskorn-Woyke u.a.1 Relationaler Datenbankentwurf (II) Normalformenlehre.

Prof. Dr. H. Faeskorn-Woyke u.a. 8

AuftragsNr Typ Kun_Nr Ang_Nr Bereitsgezahlt

Bestell-datum

Liefer-datum

..........

1 Auftrag 1 3 30.11.06 07.10.06 06.11.06

2 Auftrag 2 12 30.11.06 07.10.06 27.10.06

3 5 12 30.11.06 07.10.06 27.10.06

4 Auftrag 2 13 30.11.06 07.10.06 27.10.06

5 e 3 27 30.11.06 07.10.06 27.10.06

6 Auftrag 2 3 30.11.06 07.10.06 27.10.06

Primärschlüssel Zweitschlüssel Fremdschlüssel

Ang bot

Angebot

Andere Schlüsselbegriffe (2)

Page 9: Prof. Dr. H. Faeskorn-Woyke u.a.1 Relationaler Datenbankentwurf (II) Normalformenlehre.

Prof. Dr. H. Faeskorn-Woyke u.a. 9

• Künstliche Schlüssel- Surrogate Keys

• Performancegewinne und Verluste durch Zweitschlüssel– Gewinne beim Lesen

– Verluste beim Schreiben

• Größe der Tabellen bei Zweitschlüsseln: > 10.000 Tupel

• Fremdschlüssel oft Zweitschlüssel

Erläuterungen zu den Schlüsseln

Page 10: Prof. Dr. H. Faeskorn-Woyke u.a.1 Relationaler Datenbankentwurf (II) Normalformenlehre.

Prof. Dr. H. Faeskorn-Woyke u.a. 10

• Viele Redundanzen

• Unübersichtlichkeit

• Potentielle Inkonsistenz

• schwer zu handhaben

• Einfügeanomalien

• Löschanomalien

Normalformen

Schlechte Datenbankschemas sind gekennzeichnet durch:

Page 11: Prof. Dr. H. Faeskorn-Woyke u.a.1 Relationaler Datenbankentwurf (II) Normalformenlehre.

Prof. Dr. H. Faeskorn-Woyke u.a. 11

1. Normalform

2. Normalform

3. Normalform

weitereNormalformen

Normalformen (2)

Page 12: Prof. Dr. H. Faeskorn-Woyke u.a.1 Relationaler Datenbankentwurf (II) Normalformenlehre.

Prof. Dr. H. Faeskorn-Woyke u.a. 12

Eine RelationR ist (1NF), wenn alle Attributenur atomare Werteenthalten.

TNr Bezeichnung Artikel_Typ Verkaufs-

Preis

Jahres-

Umsatz

Lief_Nr Zeit-

Stempel

1 Rocky Mountain Element Race Typ Mountainbike 3500 200 1, 2 06.10.06

31 Herrenrad GT-LTS 18 Rennrad 3500 400 1, 2, 3 06.10.06

54 Klapprad Prompton P3 Klapprad 1600 180 2 06.10.06

55 CANNONDALE FSL Mountainbike 3700 80 3 06.10.06

56 HERCULES NEPA Trekkingrad 1700 80 1 06.10.06

57 Steppenwolf TAO Mountainbike 1900 80 2 06.10.06

58 SWITCHBACK AGENT Jugendrad 806 80 2, 3 06.10.06

59 STEVENS R.P.R.2 RX100 8FACH Rennmaschine 1800 80 1,3 06.10.06

60 Scott ATACAMA TOUR Crossrad 2306 80 1 06.10.06

61 ROTWILD RCC-03 Mountainbike 3406 80 2 06.10.06

1. Normalform (1NF)

Page 13: Prof. Dr. H. Faeskorn-Woyke u.a.1 Relationaler Datenbankentwurf (II) Normalformenlehre.

Prof. Dr. H. Faeskorn-Woyke u.a. 13

Eine Relation R mit Primärschlüssel S ist (2NF), wenn sie (1NF) ist und jedes Nicht-Schlüssel-Attribut funktionalabhängig vom Primärschlüssel S ist.

Zer

legu

ng

PrimärschlüsselTeilschlüssel 2Teilschlüssel 1 Nichtschlüsselattribute

Teilschlüssel 1Nichtschlüssel-

attributeTeilschlüssel 2Teilschlüssel 1 Teilschlüssel 2

2. Normalform (2NF)

Page 14: Prof. Dr. H. Faeskorn-Woyke u.a.1 Relationaler Datenbankentwurf (II) Normalformenlehre.

Prof. Dr. H. Faeskorn-Woyke u.a. 14

Ang_

Nr

Name Ort Abt_

Nr

Abt_

Name

TNr Bezeich-

nung

Zeit

101 Paul Bonn 1 Chemie 11 Kali 60

101 Paul Bonn 1 Chemie 12 Farbe 40

102 Hugo Köln 2 Kunst-

stoff

13 PVC 20

Ang_Nr Name Ort Abt_Nr Abt_Name

101 Paul Bonn 1 Chemie

102 Hugo Köln 2 Kunststoff

Ang_Nr TNr Zeit

101 11 60

101 12 40

102 13 20

TNr Bezeichnung

11 Kali

12 Farbe

13 PVC

Beispiel zu 2NF

Page 15: Prof. Dr. H. Faeskorn-Woyke u.a.1 Relationaler Datenbankentwurf (II) Normalformenlehre.

Prof. Dr. H. Faeskorn-Woyke u.a. 15

X, Y und Z paarweise verschiedeneAttributkombinationen einer Relation

Z heißt transitiv abhängig von X, wenn Y funktionalabhängig von X und Z funktional abhängig von Y ist, aber X nicht funktional abhängig von Y ist.

Also X Y Z, aber nicht Y X.

Ang_Nr Name Ort Abt_Nr Abt_Name

101 Paul Bonn 1 Chemie

102 Hugo Köln 2 Kunststoff

Ang_Nr Abt_Nr Abt_Name

Transitive Abhängigkeit

Page 16: Prof. Dr. H. Faeskorn-Woyke u.a.1 Relationaler Datenbankentwurf (II) Normalformenlehre.

Prof. Dr. H. Faeskorn-Woyke u.a. 16

Eine Relation R ist 3 NF, wenn sie

• (1NF) und (2NF) ist • kein Nicht-Schlüsselattribut transitiv abhängig von

einem Schlüsselattribut ist.

1NF 2NF 3NF

3. Normalform (3NF)

Page 17: Prof. Dr. H. Faeskorn-Woyke u.a.1 Relationaler Datenbankentwurf (II) Normalformenlehre.

Prof. Dr. H. Faeskorn-Woyke u.a. 17

Zer

legu

ng

Schlüssel Nichtschlüsselattribute

Schlüssel Nichtschlüsselattribute Schlüssel neu

Nichtschlüssel-attribute

funktionelleAbhängigkeit

transitiveAbhängigkeit

X Y Z

3. Normalform

Page 18: Prof. Dr. H. Faeskorn-Woyke u.a.1 Relationaler Datenbankentwurf (II) Normalformenlehre.

Prof. Dr. H. Faeskorn-Woyke u.a. 18

Ang_Nr Name Ort Abt_Nr Abt_Name

101 Paul Bonn 1 Chemie

102 Hugo Köln 2 Kunststoff

Ang_Nr Name Ort Abt_Nr

101 Paul Bonn 1

102 Hugo Köln 2

Abt_Nr Abt_Name

1 Chemie

2 Kunststoff

Beispiel: 3. Normalform

Page 19: Prof. Dr. H. Faeskorn-Woyke u.a.1 Relationaler Datenbankentwurf (II) Normalformenlehre.

Prof. Dr. H. Faeskorn-Woyke u.a. 19

• unnötiger Speicherplatzverbrauch

• Änderungsanomalie

• Einfügeanomalie

• Fehlerhäufigkeit ist erhöht

• Gefahr von Inkonsistenz

Nachteile bei Verletzung der Normalformen

Page 20: Prof. Dr. H. Faeskorn-Woyke u.a.1 Relationaler Datenbankentwurf (II) Normalformenlehre.

Prof. Dr. H. Faeskorn-Woyke u.a. 20

• Normalisierung geht von vorhandenem Datenvolumen aus.

• R-Modell ist intuitiv oft schon in dritter Normalform

• Gut für Reorganisation

• Performanceverluste durch große Anzahl von Tabellen

• Widerspricht der Objektorientierung

• manchmal ist Verletzung der Normalformen gewollt

• kein Dogma

Nutzen und Grenzen des Normalisierungsverfahrens