Lecture 21: Functional Dependencies and Normalization

Σχετικά έγγραφα
Διδάσκων: Παναγιώτης Ανδρέου

Lecture 21: Functional Dependencies and Normalization

Lecture 21: Functional Dependencies and Normalization

H ΜΑΓΕΙΑ ΤΩΝ ΑΡΙΘΜΩΝ

Βάσεις Δεδομέμωμ. Εξγαζηήξην V. Τκήκα Πιεξνθνξηθήο ΑΠΘ

Α. Εηζαγσγή ηεο έλλνηαο ηεο ηξηγσλνκεηξηθήο εμίζσζεο κε αξρηθό παξάδεηγκα ηελ εκx = 2

Αιγόξηζκνη Γνκή επηινγήο. Πνιιαπιή Δπηινγή Δκθωιεπκέλεο Δπηινγέο. Δηζαγωγή ζηηο Αξρέο ηεο Δπηζηήκεο ηωλ Η/Υ. introcsprinciples.wordpress.

ΠΑΡΑΡΣΗΜΑ Δ. ΔΤΡΔΗ ΣΟΤ ΜΔΣΑΥΗΜΑΣΙΜΟΤ FOURIER ΓΙΑΦΟΡΩΝ ΗΜΑΣΩΝ

Ενδεικτικά Θέματα Στατιστικής ΙΙ

ΓΗΑΓΩΝΗΣΜΑ ΣΤΑ ΜΑΘΖΜΑΤΗΚΑ. Ύλη: Μιγαδικοί-Σσναρηήζεις-Παράγωγοι Θεη.-Τετν. Καη Εήηημα 1 ο :

ΔΕΟ 13. Ποσοτικές Μέθοδοι. θαη λα ππνινγίζεηε ην θόζηνο γηα παξαγόκελα πξντόληα. Να ζρεδηαζηεί γηα εύξνο πξντόλησλ έσο

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΣΙΚΗ ΚΤΣΑΛΟΓΡΟΜΙΑ 2007 ΓΙΑ ΣΟ ΓΤΜΝΑΙΟ Παπασκευή 26 Ιανουαπίου 2007 Σάξη: Α Γυμνασίου ΥΟΛΕΙΟ..

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΣΙΚΗ ΚΤΣΑΛΟΓΡΟΜΙΑ 2007 ΓΙΑ ΣΟ ΓΤΜΝΑΙΟ Παπασκευή 26 Ιανουαπίου 2007 Σάξη: Α Γυμνασίου ΥΟΛΕΙΟ..

Παιχνίδι γλωζζικής καηανόηζης με ζχήμαηα!

ΚΔΦ. 2.4 ΡΗΕΔ ΠΡΑΓΜΑΣΗΚΩΝ ΑΡΗΘΜΩΝ

ΚΕΦ. 2.3 ΑΠΟΛΤΣΗ ΣΘΜΗ ΠΡΑΓΜΑΣΘΚΟΤ ΑΡΘΘΜΟΤ

ΛΙΜΝΗ ΤΣΑΝΤ. Σρήκα 1. Σρήκα 2

Αζκήζεις ζτ.βιβλίοσ ζελίδας 13 14

Απαντήσεις θέματος 2. Παξαθάησ αθνινπζεί αλαιπηηθή επίιπζε ησλ εξσηεκάησλ.

B-Δέλδξα. Τα B-δέλδξα ρξεζηκνπνηνύληαη γηα ηε αλαπαξάζηαζε πνιύ κεγάισλ ιεμηθώλ πνπ είλαη απνζεθεπκέλα ζην δίζθν.

ΑΝΤΗΛΙΑΚΑ. Η Μηκή ζθέθηεθε έλαλ ηξόπν, γηα λα ζπγθξίλεη κεξηθά δηαθνξεηηθά αληειηαθά πξντόληα. Απηή θαη ν Νηίλνο ζπλέιεμαλ ηα αθόινπζα πιηθά:

Απνηειέζκαηα Εξσηεκαηνινγίνπ 2o ηεηξάκελν

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΤΙΚΗ ΣΚΥΤΑΛΟΓΡΟΜΙΑ 2015 ΓΙΑ ΤΟ ΓΥΜΝΑΣΙΟ Τεηάπηη 28 Ιανουαπίου 2015 ΛΔΥΚΩΣΙΑ Τάξη: Α Γυμναζίου

Κευάλαιο 8 Μονοπωλιακή Συμπεριφορά- Πολλαπλή Τιμολόγηση

TOOLBOOK (μάθημα 2) Δεκηνπξγία βηβιίνπ θαη ζειίδσλ ΠΡΟΑΡΜΟΓΗ: ΒΑΛΚΑΝΙΩΣΗ ΔΗΜ. ΕΚΠΑΙΔΕΤΣΙΚΟ ΠΕ19 1 TOOLBOOK ΜΑΘΗΜΑ 2

ΡΤΘΜΙΕΙ ΔΙΚΣΤΟΤ ΣΑ WINDOWS

Να ζρεδηάζεηο ηξόπνπο ζύλδεζεο κηαο κπαηαξίαο θαη ελόο ιακπηήξα ώζηε ν ιακπηήξαο λα θσηνβνιεί.

Hellas online Προεπιλεγμένες ρσθμίσεις για FritzBox Fon WLAN 7140 (Annex B) FritzBox Fon WLAN Annex B ( )

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΔΣΑΙΡΔΙΑ ΠΑΓΚΤΠΡΙΟ ΓΙΑΓΩΝΙ ΜΟ

Γ ΣΑΞΖ ΔΝΗΑΗΟΤ ΛΤΚΔΗΟΤ ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΜΑΘΖΜΑΣΗΚΑ ΘΔΣΗΚΩΝ ΚΑΗ ΟΗΚΟΝΟΜΗΚΩΝ ΠΟΤΓΩΝ ΤΝΑΡΣΖΔΗ ΟΡΗΑ ΤΝΔΥΔΗΑ (έως Θ.Bolzano) ΘΔΜΑ Α

ΑΛΛΑΓΗ ΟΝΟΜΑΣΟ ΚΑΙ ΟΜΑΔΑ ΕΡΓΑΙΑ, ΚΟΙΝΟΥΡΗΣΟΙ ΦΑΚΕΛΟΙ ΚΑΙ ΕΚΣΤΠΩΣΕ ΣΑ WINDOWS XP

Database Design. Καλνληθνπνηήζε θαη πξώηε θαλνληθή κνξθή. 1 Copyright 2013, Oracle and/or its affiliates. All rights reserved.

Δξγαζηεξηαθή άζθεζε 03. Σηεξενγξαθηθή πξνβνιή ζην δίθηπν Wulf

Η επιζκόπηζη ηης έμμιζθης ενηολής ζηην Αλλοδαπή. Καηεξίλα Γαιαλνπνύινπ, Intellectual Property Manager, Microsoft Ειιάο Α.Ε.

ΟΠΤΙΚΗ Α. ΑΝΑΚΛΑΣΖ - ΓΗΑΘΛΑΣΖ

x-1 x (x-1) x 5x 2. Να απινπνηεζνύλ ηα θιάζκαηα, έηζη ώζηε λα κελ ππάξρνπλ ξηδηθά ζηνπο 22, 55, 15, 42, 93, 10 5, 12

Μονοψϊνιο. Αγνξά κε ιίγνπο αγνξαζηέο. Δύναμη μονοψωνίος Η ηθαλόηεηα πνπ έρεη ν αγνξαζηήο λα επεξεάζεη ηελ ηηκή ηνπ αγαζνύ.

ΘΔΚΑ ΡΖΠ ΑΛΑΓΛΩΟΗΠΖΠ

Γοκή επαλάιευες Δληοιές Όζο & Μέτρης_όηοσ

Σήκαηα Β Α Γ Γ Δ Λ Η Σ Ο Ι Κ Ο Ν Ο Μ Ο Υ Γ Ι Α Λ Δ Ξ Η - ( 2 ) ΕΙΣΑΓΨΓΗ ΣΤΙΣ ΤΗΛΕΠΙΚΟΙΝΨΝΙΕΣ

EL Eνωμένη στην πολυμορυία EL A8-0046/319. Τροπολογία

ΜΗΧΑΝΟΛΟΓΙΚΟ ΣΧΔΓΙΟ ΙΙ

ΜΑΘΗΜΑ / ΤΑΞΗ : ΗΛΕΚΤΡΟΛΟΓΙΑ/Γ ΛΥΚΕΙΟΥ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 08/09/2014

ΑΠΑΝΤΗΣΔΙΣ ΓΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ II ΔΠΑΛ

ΑΠΛΟΠΟΙΗΗ ΛΟΓΙΚΩΝ ΤΝΑΡΣΗΕΩΝ ΜΕ ΠΙΝΑΚΕ KARNAUGH

ΠΑΝΔΛΛΑΓΗΚΔ ΔΞΔΣΑΔΗ Γ ΣΑΞΖ ΖΜΔΡΖΗΟΤ ΓΔΝΗΚΟΤ ΛΤΚΔΗΟΤ ΚΑΗ ΔΠΑΛ ΣΔΣΑΡΣΖ 25 ΜΑΨΟΤ 2016 ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΑΡΥΔ ΟΗΚΟΝΟΜΗΚΖ ΘΔΧΡΗΑ ΠΡΟΑΝΑΣΟΛΗΜΟΤ - ΔΠΗΛΟΓΖ

ΦΥΣΙΚΗ ΤΩΝ ΡΕΥΣΤΩΝ. G. Mitsou

Επωηήζειρ Σωζηού Λάθοςρ ηων πανελλαδικών εξεηάζεων Σςναπηήζειρ

x x x x tan(2 x) x 2 2x x 1

γηα ηνλ Άξε Κσλζηαληηλίδε

Ζαχαρίας Μ. Κοντοπόδης Εργαστήριο Λειτουργικών Συστημάτων ΙΙ

Οργάνωση και Δομή Παρουσιάσεων

f '(x)g(x)h(x) g'(x)f (x)h(x) h'(x) f (x)g(x)

Δπηιέγνληαο ην «Πξνεπηινγή» θάζε θνξά πνπ ζα ζπλδέεζηε ζηελ εθαξκνγή ζα βξίζθεζηε ζηε λέα ρξήζε.

ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ. Οξηδόληηα θαη θαηαθόξπθε κεηαηόπηζε παξαβνιήο

(γ) Να βξεζεί ε ρξνλνεμαξηώκελε πηζαλόηεηα κέηξεζεο ηεο ζεηηθήο ηδηνηηκήο ηνπ ηειεζηή W.

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΔΣΑΙΡΔΙΑ ΠΑΓΚΤΠΡΙΟ ΓΙΑΓΩΝΙΜΟ Α ΛΤΚΔΙΟΤ. Ημεπομηνία: 10/12/11 Ώπα εξέτασηρ: 09:30-12:30 ΠΡΟΣΔΙΝΟΜΔΝΔ ΛΤΔΙ

Κβαντικοί Υπολογισμοί. Πέκπηε Γηάιεμε

ΣΥΣΤΗΜΑΤΑ ΑΛΓΕΒΡΑ Α ΛΥΚΕΙΟΥ. 1. Να ιπζνύλ ηα ζπζηήκαηα. 1 0,3x 0,1y x 3 3x 4y 2 4x 2y ( x 1) 6( y 1) (i) (ii)

Η/Υ A ΤΑΞΕΩΣ ΑΕ Συστήματα Αρίθμησης. Υποπλοίαρχος Ν. Πετράκος ΠΝ

Constructors and Destructors in C++

iii. iv. γηα ηελ νπνία ηζρύνπλ: f (1) 2 θαη

Μηα ζπλάξηεζε κε πεδίν νξηζκνύ ην Α, ζα ιέκε όηη παξνπζηάδεη ηοπικό μέγιζηο ζην, αλ ππάξρεη δ>0, ηέηνην ώζηε:

ΠΑΝΔΛΛΑΓΗΚΔ ΔΞΔΣΑΔΗ Γ ΣΑΞΖ ΖΜΔΡΖΗΟΤ ΓΔΝΗΚΟΤ ΛΤΚΔΗΟΤ Γευηέρα 11 Ηουνίου 2018 ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΜΑΘΖΜΑΣΗΚΑ ΠΡΟΑΝΑΣΟΛΗΜΟΤ. (Ενδεικηικές Απανηήζεις)

Εισαγωγή στοςρ κβαντικούρ ςπολογιστέρ και αλγόπιθμοςρ. Γηδάζθωλ : Φνπληνπιάθεο Αληώληνο

(Ενδεικηικές Απανηήζεις) ΘΔΜΑ Α. Α1. Βιέπε απόδεημε Σει. 262, ζρνιηθνύ βηβιίνπ. Α2. Βιέπε νξηζκό Σει. 141, ζρνιηθνύ βηβιίνπ

Image J Plugin particle tracker για παρακολούθηση της κίνησης σωματιδίων

ΣΡΑΠΕΖΑ ΘΕΜΑΣΩΝ Α ΛΤΚΕΙΟΤ

ΜΑΘΗΜΑΣΑ ΦΩΣΟΓΡΑΦΙΑ. Εισαγωγή στη Φωτογραυία. Χριζηάκης Σαζεΐδης - EFIAP

ΘΔΜΑ 1 ο Μονάδες 5,10,10

Lecture 22: Functional Dependencies and Normalization

ΓΔΧΜΔΣΡΙΑ ΓΙΑ ΟΛΤΜΠΙΑΓΔ

ΠΡΩΣΟΚΟΛΛΑ ΓΙΑΥΔΙΡΗΗ ΣΩΝ ΣΔΡΗΓΟΝΙΚΩΝ ΒΛΑΒΩΝ Δ ΔΝΗΛΙΚΔ

α) ηε κεηαηόπηζε x όηαλ ην ζώκα έρεη κέγηζην ξπζκό κεηαβνιήο ζέζεο δ) ην κέγηζην ξπζκό κεηαβνιήο ηεο ηαρύηεηαο

7. ΚΑΤΑΧΩΡΗΤΕΣ ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ. 3. Έλαο θαηαρσξεηήο SISO ησλ 4 bits έρεη: α) Μία είζνδν, β) Δύν εηζόδνπο, γ) Σέζζεξεηο εηζόδνπο.

ΜΑΘΗΜΑΤΙΚΑ ΘΔΤΙΚΗΣ ΚΑΙ ΤΔΦΝΟΛΟΓΙΚΗΣ ΚΑΤΔΥΘΥΝΣΗΣ Β ΛΥΚΔΙΟΥ ΤΔΣΤ(1) ΣΤΑ ΓΙΑΝΥΣΜΑΤΑ

Σημεία Ασύπματηρ Ππόσβασηρ (Hot-Spots)

5 η Δργαζηηριακή Άζκηζη Κσκλώμαηα Γσαδικού Αθροιζηή/Αθαιρέηη

Αζθήζεηο 5 νπ θεθαιαίνπ Crash course Step by step training. Dipl.Biol.cand.med. Stylianos Kalaitzis

Η αξρή ζύλδεζεο Client-Server

Βιομησανικόρ ζσεδιαζμόρ πποϊόνηων από ανακςκλωμένερ ζςζκεςαζίερ

Case Study. Παξαθάηω παξνπζηάδνπκε βήκα - βήκα κε screenshots έλα παξάδεηγκα ππνβνιήο κηαο εξγαζίαο θαη ηελ παξαγωγή ηνπ Originality Report.

Πολυεπίπεδα/Διασυμδεδεμέμα Δίκτυα

Εςθςή ζςζηήμαηα επισειπήζεων και αξιολόγηζη

Έωρ και 28% η αύξηζη ηων ειζθοπών από ηο 2019!

A. Αιιάδνληαο ηε θνξά ηνπ ξεύκαηνο πνπ δηαξξέεη ηνλ αγωγό.

Σρήκα Α. Γξάθνπκε ηα ζηνηρεία ηνπ Πξνκεζεπηή θαη παηάκε Δηζαγσγή. Σρήκα Β1

ΓΙΔΘΝΗ ΑΝΘΡΩΠΙΣΙΚΗ ΟΡΓΑΝΩΗ

3 ΑΠΙΔ ΑΘΖΔΗ ΘΟΚΟΙΟΓΗΑ ΠΟΤ ΑΛΣΗΚΔΣΩΠΗΕΟΛΣΑΗ ΚΔ ΦΤΗΘΖ ΘΑΗ ΚΑΘΖΚΑΣΗΘΑ ΙΤΘΔΗΟΤ

ΔΝΓΔΙΚΤΙΚΔΣ ΛΥΣΔΙΣ ΣΤΑ ΜΑΘΗΜΑΤΙΚΑ ΚΑΤΔΥΘΥΝΣΗΣ Γ ΛΥΚΔΙΟΥ ΓΔΥΤΔΡΑ 27 ΜΑΪΟΥ 2013

Διατείριση Φσσικών Καταστρουών: ACTIVE LANDSLIDE INVENTORY MAPPING AND SUSCEPTIBILITY ZONING

Σύνθεζη ηαλανηώζεων. Έζησ έλα ζώκα πνπ εθηειεί ηαπηόρξνλα δύν αξκνληθέο ηαιαληώζεηο ηεο ίδηαο ζπρλόηεηαο πνπ πεξηγξάθνληαη από ηηο παξαθάησ εμηζώζεηο:

ΟΣΑ Επηρεηξεζηαθή Ννεκνζύλε. Ελόηεηα: Ad1.2.2 «Ση θξύβεηαη» πίζω από κηα Επηρεηξεζηαθή Αλαθνξά (report): XML & XSD γηα αξράξηνπο

ΠΑΝΔΛΛΑΓΗΚΔ ΔΞΔΣΑΔΗ Γ ΖΜΔΡΖΗΟΤ ΓΔΝΗΚΟΤ ΛΤΚΔΗΟΤ Γεσηέρα 10 Ηοσνίοσ 2019 ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΜΑΘΖΜΑΣΗΚΑ ΠΡΟΑΝΑΣΟΛΗΜΟΤ. (Ενδεικηικές Απανηήζεις)

T A E K W O N D O. Δ. ΠπθαξΨο. ΔπΫθνπξνο ΘαζεγεηΪο ΑζιεηηθΪο ΦπζηθνζεξαπεΫαο ΡΔΦΑΑ - ΑΞΘ

ΔΙΑΓΩΝΙΣΜΑ ΦΥΣΙΚΗΣ Α ΛΥΚΕΙΟΥ

ΠΟΛΤΜΕΡΙΜΟ - ΠΕΣΡΟΥΗΜΙΚΑ

ΤΑΞΙΝΟΜΗΣΗ ΤΩΝ ΤΔΡΗΓΟΝΙΚΩΝ ΒΛΑΒΩΝ ΚΑΤΑ ΤΑ ICDAS II ΚΡΙΤΗΡΙΑ ΜΔ ΒΑΣΗ ΤΗ ΚΛΙΝΙΚΗ ΔΞΔΤΑΣΗ

ΕΞΙΣΩΣΕΙΣ. Α. Πρωτοβάθμιεσ Εξιςώςεισ. Β. Διερεφνηςη Εξιςώςεων. 1x είναι αδφνατθ. x 1 x 1. Άλγεβρα Α Λυκείου

ΓΙΑΙΡΔΣΟΣΗΣΑ. Οπιζμόρ 1: Έζηω d,n. Λέκε όηη ν d δηαηξεί ηνλ n (ζπκβνιηζκόο: dn) αλ. ππάξρεη c ηέηνην ώζηε n. Θεώπημα 2: Γηα d,n,m,α,b ηζρύνπλ:

Transcript:

Department of Computer Science University of Cyprus EPL342 Databases Lecture 21: Functional Dependencies and Normalization Informal Design Guidelines (Chapter 10.1, Elmasri-Navathe 5ED) Demetris Zeinalipour http://www.cs.ucy.ac.cy/courses/epl342 21-1

Πεξηερόκελν Γηάιεμεο Δηζαγσγή ζηελ Καλνληθνπνηήζε (Normalization) Άηππεο θαηεπζύλζεηο γηα Σρεδηαζκό κηαο Καιήο Βάζεο 1) Σεκαζηνινγία (Semantics) ησλ Γλσξηζκάησλ Σρέζεσλ 2) Πιενλάδνπζεο (Redundant) Πιεξνθνξίεο ζε Πιεηάδεο θαη Αλσκαιίεο Δλεκεξώζεσλ 3) Τηκέο NULL ζε πιεηάδεο 4) Γεκηνπξγία Πιαζκαηηθώλ Πιεηάδσλ (Spurious Tuples) Δπόκελεο Γηαιέμεηο Σπλαξηεζηαθέο Δμαξηήζεηο (Functional Dependencies): To καζεκαηηθό ππόβαζξν ηεο Καλνληθνπνηήζεο. Καλνληθνπνηήζε κε Φξήζε Σπλαξηεζηαθώλ Δμαξηήζεσλ: 1NF, 2NF, 3NF θαη BCNF, θηι. 21-2

Δηζαγσγή ζηελ Καλνληθνπνηήζε (Normalization) Η Σρεδίαζε ηνπ Σρεζηαθνύ Σρήκαηνο κηαο βάζεο δεδνκέλσλ κέρξη ζηηγκήο γηλόηαλ βάζεη ηεο θνηλήο ινγηθήο ηνπ ζρεδηαζηή θαη όρη βάζεη απζηεξώλ θαλόλσλ. Τα παξαγόκελα ζρήκαηα κπνξνύζαλ λα θξηζνύλ ππνθεηκεληθά σο πξνο ηελ Χξεζηόηεηα (Goodness) ηνπο αιιά όρη αληηθεηκεληθά. Παξόιν πνπ αλαθεξζήθακε ζην παξειζόλ ζε θάπνηεο γεληθέο νδεγίεο ραξαθηεξηζκνύ ηεο Χξεζηόηεηαο (Goodness) ελόο Σρεζηαθνύ Σρήκαηνο, π.ρ., Να ΜΗΝ ππάξρεη επαλάιεςε πιεξνθνξίαο Να ΜΗΝ ππάξρνπλ πνιιά NULLs ζε γλσξίζκαηα. Να ΜΗΝ απαηηνύληαη πνιιέο ζπλελώζεηο γηα λα θαηαιήμνπκε ζε κηα νληόηεηα. Απηέο νη νδεγίεο δελ ήηαλ ηππηθέο (δει, δελ ζηεξίδνληαλ ζε 21-3 θάπνην καζεκαηηθό EPL342: Databases ππόβαζξν - Demetris Zeinalipour νπόηαλ (University ήηαλ of ππνθεηκεληθέο)! Cyprus)

Δηζαγσγή ζηελ Καλνληθνπνηήζε (Normalization) Καλνληθνπνηήζε (Normalization) : Η ζπζηεκαηηθή (ηππηθή) δηαδηθαζία δηαζθάιηζεο όηη ην ζρήκα κηαο βάζεο δεδνκέλσλ έρεη ηηο πην θάησ πξόλνηεο: Δίλαη θαηάιιειν γηα εθηέιεζε γεληθνύ είδνπο επεξσηήζεσλ Δίλαη ειεύζεξν από νξηζκέλα κε-επηζπκεηά ραξαθηεξηζηηθά (αλσκαιίεο) εηζαγσγήο, ελεκέξσζεο, θαη δηαγξαθήο ηα νπνία κπνξεί λα νδεγήζνπλ ζε απώιεηα δεδνκέλσλ Η Καλνληθνπνηήζε νξίδεηαη ην 1970 από ηνλ Edgar Frank "Ted" Codd, ηνλ δεκηνπξγό ηνπ Σρεζηαθνύ Μνληέινπ. Απηό γηα λα επηηεπρζεί επθνιόηεξα ε κεηάβαζε ησλ ηόηε βάζεσλ δεδνκέλσλ (ηεξαξρηθό θαη δηθηπαθό κνληέιν) ζην ζρεζηαθό κνληέιν. Ο Codd νξίδεη κέρξη ην 1974 δηάθνξα επίπεδα Καλνληθνπνηήζεο (1NF, 2NF,3NF θαη BCNF) ηα νπνία κπνξνύλ λα αθνινπζεζνύλ βήκα-βήκα γηα πξνζδηνξηζκό ελόο θαινύ ζρεζηαθνύ ζρήκαηνο. 21-4

Δηζαγσγή ζηελ Καλνληθνπνηήζε (Normalization) Η Καλνληθνπνηήζε κηαο Βάζεο κπνξεί λα γίλεη κε ηνπο αθόινπζνπο δπν ηξόπνπο: Από Πάλσ Πξνο ηα Κάησ (Top-Down Design) Αξρηθνπνίεζε κηαο (1) ζρέζεο πνπ πεξηιακβάλεη ΌΛΑ ηα γλσξίζκαηα R(A1, AN) κηαο εθαξκνγήο. Η ζρέζε δηαζπάηαη αλαδξνκηθά από πάλσ πξνο ηα θάησ κέρξη λα θηάζνπκε ζε ζρέζεηο νη νπνίεο πιεξνύλ θάπνην επηζπκεηό επίπεδν «Χξεζηόηεηαο». Ολνκάδεηαη αιιηώο Design by Analysis. Από Κάησ Πξνο ηα Πάλσ (Bottom Up Design) Ολνκάδεηαη αιιηώο Design-by-Synthesis Γελ ζα κειεηεζεί ζηα πιαίζηα απηνύ ηνπ καζήκαηνο 21-5

Δηζαγσγή ζηελ Καλνληθνπνηήζε (Normalization) H Καλνληθνπνηήζε ζηεξίδεηαη ζηελ έλλνηα ηνλ ζπλαξηεζηαθώλ εμαξηήζεσλ (functional dependencies), ηα νπνία απνηεινύλ γελίθεπζε ηεο ελλνίαο ηνπ θιεηδηνύ. Π.ρ., SSN {Name, NumberGrade, LetterGrade, Dno} NumberGrade LetterGrade Απηά ζα κειεηεζνύλ εθηελώο ζηελ επόκελε δηάιεμε. Πξνηνύ δνύκε ηηο πην πάλσ έλλνηεο ζα επηρεηξήζνπκε λα ζπλνςίζνπκε κε άηππν ηξόπν θάπνηεο γεληθέο νδεγίεο γηα ζρεδηαζκό ελόο θαινύ ζρήκαηνο κηαο ζρεζηαθήο βάζεο. 21-6

Οδεγία 1: Σεκαζηνινγία (Semantics) ησλ Γλσξηζκάησλ Σρέζεσλ Οδεγία 1: Τα απιά γλσξίζκαηα κηαο ζρέζεο πξέπεη λα έρνπλ θνηλή ζεκαζηνινγία (δειαδή λα αλαθέξνληαη ζηελ ίδηα νληόηεηα) Σπγθεθξηκέλα: Απιά Γλσξίζκαηα από δηαθνξεηηθέο νληόηεηεο (π.ρ., EMPLOYEEs, DEPARTMENTs, PROJECTs) ΓΔΝ πξέπεη λα πιέθνληαη ζηελ ίδηα ζρέζε ΜΟΝΟ μέλα θιεηδηά πξέπεη λα ρξεζηκνπνηνύληαη γηα ηελ αλαθνξά κεηαμύ νληνηήησλ. Γλσξίζκαηα Οληνηήησλ θαη Γλσξίζκαηα Σπζρεηίζεσλ είλαη θαιό λα δηαηεξνύληαη καθξηά κεηαμύ ηνπο (όηαλ γίλεηαη) Απηά ζπρλά είλαη πεγή γηα NULL ηηκέο. Σεκείσζε: Μεηά ηελ εθηελή απαζρόιεζε ζαο κε ην Σρεζηαθό (αιια θαη ER) κνληέιν, πνιιά από ηα πην πάλσ κπνξεί λα ζαο αθνύγνληαη θπζηθά θαη λα ηα εθαξκόδεηαη ήδε. 21-7

Οδεγία 1: Σεκαζηνινγία (Semantics) ησλ Γλσξηζκάησλ Σρέζεσλ Παξάδεηγκα Αλάκεημεο Γλσξηζκάησλ Πην θάησ δείρλνπκε δπν παξαδείγκαηα ζρέζεσλ πνπ αλακεηγλύνπλ γλσξίζκαηα κεηαμύ νληνηήησλ νδεγώληαο καο ζε έλα ζρεζηαθό ζρήκα κε θησρό design Αλάκεημε Employee Department Αλάκεημε Employee Project Σεκείσζε: Τα πην πάλσ έρνπλ θησρό design σο θπζηθέο ζρέζεηο (base relations) όπσο ζα δνύκε ζε ιίγν. Από ηελ άιιε δελ έρνπλ ηδηαίηεξν ζρεδηαζηηθό πξόβιεκα σο όςεηο (λνεηέο ζρέζεηο) 21-8

Οδεγία 1: Σεκαζηνινγία (Semantics) ησλ Γλσξηζκάησλ Σρέζεσλ Σπκπέξαζκα: Θα πξέπεη θαλείο λα κπνξεί λα πεξηγξάθεη κηα-κηα ηηο ζρέζεηο ηνπ ζρήκαηνο κηαο βάζεο ρσξίο λα πξνθύπηνπλ ζεκαζηνινγηθέο ακθηβνιίεο (semantic ambiguities). Π.ρ., Project.Dnum εύθνια καο παξαπέκπεη ζην number ηνπ department Δλώ εάλ ήηαλ απιά Project.Num ηόηε δελ ζα ήηαλ μεθάζαξε ε ζεκαζηνινγία ηνπ ελ ιόγσ γλσξίζκαηνο. Απηό επηηπγράλεηαη κε ηελ ρξήζε μεθάζαξσλ νλνκάησλ ζηηο ζρέζεηο θαη ηα γλσξίζκαηα. 21-9

Πιενλάδνπζα Πιεξνθνξία (Πξνβιήκαηα) Πιενλάδνπζα Πιεξνθνξία ζε Σρέζεηο: Γεδνκέλα ηα νπνία απνζεθεύνληαη επαλαιεπηηθά (redundantly) πξνθαινύλ ηα αθόινπζα πξνβιήκαηα: Α) Σπαηαινύλ Χώξν Απνζήθεπζεο, εάλ θαη απηό ην πξόβιεκα είλαη κηθξό ζε ζρέζε κε ην επόκελν Β) Πξνθαινύλ πξνβιήκαηα κε ηηο ελεκεξώζεηο (update anomalies) Αλσκαιίεο Δηζαγσγήο (Insertion anomalies) Αλσκαιίεο Γηαγξαθήο (Deletion anomalies) Αλσκαιίεο Τξνπνπνίεζεο (Modification anomalies) Αο δνύκε θάπνηα παξαδείγκαηα 21-10

Α) Σπαηάιε Χώξνπ Απνζήθεπζεο (Redundancy) ζε δπν ζρέζεηο Emp_Dept θαη Δmp_Proj Καη νη δπν πεξηπηώζεηο είλαη απνηέιεζκα ηνπ θαθνύ ζρεδηαζκνύ ηνπ ζρήκαηνο ησλ πηλάθσλ Πιενλάδνπζα Πιεξνθνξία (Σπαηάιε Φώξνπ) 21-11

Αλσκαιίεο Δλεκεξώζεσλ (Insert Anomaly) Αλσκαιία Δηζαγσγήο (Insert Anomaly) Πξόβιεκα 1: Γηα εηζαγσγή λέαο πιεηάδαο πξέπεη λα βεβαησζνύκε όηη ην (Dname, Dmgr_ssn) είλαη ζπλεπέο κε ηηο πξνεγνύκελεο εγγξαθέο. Π.ρ., Dname= Research, Dmgr_ssn=987654321 ιάζνο. Γηαηί; Πξόβιεκα 2: Γελ κπνξνύκε λα εηζάγνπκε ηα ζηνηρεία ελόο Department ην νπνίν δελ έρεη αθόκε employees! Γελ γίλεηαη νύηε εάλ βάινπκε NULL ζηα αλύπαξθηα πεδία. Γηαηί; 21-12

Αλσκαιίεο Δλεκεξώζεσλ (Insert Anomaly) Τν πην θάησ ζηηγκηόηππν ησλ Employee- Department δελ ππνθέξεη από ηηο αλσκαιίεο εηζαγσγήο ηεο πξνεγνύκελεο ζειίδαο Α) Γελ ρξεηάδεηαη έιεγρνο ζπλέπεηαο γηα εηζαγσγή ζην Department ή Employee Β) Μπνξνύκε λα εηζάγνπκε Departments, Employees αλεμάξηεηα ην έλα από ηελ ύπαξμε ηνπ άιινπ. 21-13

Αλσκαιίεο Δλεκεξώζεσλ (Delete Anomaly) Αλσκαιία Γηαγξαθήο (Delete Anomaly) Πξόβιεκα: Δάλ ζβήζνπκε ηελ ηειεπηαία πιεηάδα πνπ πεξηέρεη ηα ζηνηρεία ελόο Department, ηόηε ζα ραζνύλ όιεο νη πιεξνθνξίεο ηνπ ελ ιόγσ Department. Π.ρ., DELETE FROM EMP_DEPT WHERE Dnumber=1 Τν πξόβιεκα απηό ΓΔΝ ζα πξνθύςεη ζην ζηηγκηόηππν ηεο πξνεγνύκελεο δηαθάλεηαο όπνπ ηα ζηνηρεία ελόο department ζπλερίδνπλ λα δηαηεξνύληαη ζηνλ πίλαθα Department 21-14

Αλσκαιίεο Δλεκεξώζεσλ (Update Anomaly) Αλσκαιία Δλεκέξσζεο (Update Anomaly) Πξόβιεκα: Δάλ ελεκεξώζνπκε ην γλώξηζκα ελόο ζηνηρείνπ πνπ επαλαιακβάλεηαη ηόηε πξέπεη λα ελεκεξώζνπκε ΟΛΔΣ ηηο εκθαλίζεηο ηνπ. Απηό ην πξόβιεκα είλαη ην κηθξόηεξν από ηα αλαθεξόκελα δηόηη ιύλεηαη κε 1 SQL query. Π.ρ., UPDATE EMP_DEPT SET Dname= RES WHERE Dname= Research εάλ θαη ην query ζα απαηηεί πεξηζζόηεξν ρξόλν από όηη πξέπεη 21-15

Οδεγία 2: Πιενλάδνπζα Πιεξνθνξία θαη Αλσκαιίεο Δλεκεξώζεσλ Οδεγία 2: Σρεδίαζε έλα ζρήκα ην νπνίν ΓΔΝ ζα ππνθέξεη από αλσκαιίεο εηζαγσγώλ, δηαγξαθώλ θαη ελεκεξώζεσλ. Δάλ είλαη αλάγθε λα πθίζηαληαη θάπνηεο αλσκαιίεο (π.ρ., γηα ιόγνπο επίδνζεο*), ηόηε απηέο πξέπεη λα αλαθεξζνύλ θαη ηεθκεξησζνύλ ξεηά γηα λα ιακβάλνληαη ππόςε από ηελ εθαξκνγή. * π.ρ., ζε εθαξκνγέο OLAP: Online Analytical Processing όπνπ ν θόξηνο είλαη θπξίσο Readonly (ρσξίο πνιιέο ελεκεξώζεηο) 21-16

Οδεγία 2: Πιενλάδνπζα Πιεξνθνξία θαη Αλσκαιίεο Δλεκεξώζεσλ Από-θαλνληθνπνηήζε (Denormalization) Όπσο αλαθέξακε πξηλ, ζε θάπνηεο πεξηπηώζεηο έλαο DBA κπνξεί λα θξαηήζεη ην ζρήκα κηαο βάζεο ζε θαθή δνκή (κε-θαλνληθνπνηεκέλε κνξθή). Π.ρ., Δάλ έρνπκε έλα ζπλερόκελν θόξην επεξσηήζεσλ ζηνλ πίλαθα EMP_DEPT ηόηε ν κε-θαλνληθνπνηεκέλνο πίλαθαο απνθεύγεη ηε ζπλερή ζπλέλσζε EMP κε DEPT. Σεκεηώζηε όηη νη απιέο Όςεηο δελ βνεζάλε εθόζνλ πξόθεηηαη απιά γηα απνζεθεπκέλα SELECT εξσηήκαηα. Σε απηέο ηηο πεξηπηώζεηο ρξεηάδεηαη ε βάζε λα πινπνηεί, κε ρξήζε ζθαλδαιώλ (triggers), κεραληζκώλ γηα απνθπγή ησλ δηάθνξσλ αλσκαιηώλ ελεκέξσζεο. π.ρ., θαηά ηελ ελεκέξσζε κηαο πιεηάδαο απηόκαηα ελεκεξώλνληαη όιεο νη άιιεο ζρεηηθέο πιεηάδεο 21-17

Οδεγία 3: Τηκεο NULL ζε Πιεηάδεο Οδεγία 3: Οη ζρέζεηο πξέπεη λα ζρεδηάδνληαη έηζη ώζηε λα έρνπλ όζν ην δπλαηό ιηγόηεξεο εκθαλίζεηο NULL. Π.ρ., GOOD: Employee(SSN, Dno) Δίλαη αλακελόκελν όηη νη πεξηζζόηεξνη Employees ζα αλήθνπλ ζε έλα Department νπόηαλ δηθαηνινγείηαη ε ζπκκεηνρή ηνπ ελ ιόγσ γλσξίζκαηνο ζηελ ζρέζε Employee. Γλσξίζκαηα πνπ εκθαλίδνπλ ζπρλά NULL πξέπεη λα ηνπνζεηνύληαη ζε μερσξηζηέο ζρέζεηο (καδί κε ην πξσηεύσλ θιεηδί ηεο ζρέζεο) Π.ρ., Μόλν ην 10% ησλ Employees έρνπλ γξαθείν. BAD: EMPLOYEE(SSN, Name, Officedetails,...) GOOD: EMPLOYEE(SSN, Name,.) EMP_OFFICE(SSN, Οfficedetails) 21-18

Οδεγία 4: Πιαζκαηηθέο Πιεηάδεο (Spurious Tuples) Καηά ηελ θάζε ηεο top-down θαλνληθνπνηήζεο, πνιιέο ζρέζεηο θαινύληαη αλαδξνκηθά λα δηαζπαζηνύλ ζε κηθξόηεξεο ζρέζεηο. Γηαζπώληαο (Decomposing) ιαλζαζκέλα κηα ζρέζε R θξύβεη ηνπο αθόινπζνπο δπν θηλδύλνπο: A) Δπαλαζύλζεζε: Δίλαη δπλαηό λα ΜΗΝ κπνξνύκε λα επαλαζπλζέζνπκε ηελ R ράλνληαο πνιύηηκε ζεκαζηνινγία ηεο εθαξκνγήο Π.ρ., εάλ ην θιεηδί ηεο R δελ πεξηέρεηαη ηόζν ζηελ Α όζν θαη ζηελ Β. Β) Πιαζκαηηθέο Πιεηάδεο: Δίλαη δπλαηό λα δεκηνπξγνύληαη Πλαζμαηικές Πλειάδες (Spurious Tuples), δειαδή πιεηάδεο πνπ δελ άλεθαλ ζηελ R. Αθνινπζνύλ παξαδείγκαηα γηα ην Β. 21-19

Οδεγία 4: Πιαζκαηηθέο Πιεηάδεο (Spurious Tuples) Καλνληθό Απνηέιεζκα (Χσξίο Πιαζκαηηθέο Πιεηάδεο) * Λάζνο Απνηέιεζκα Με Πιαζκαηηθέο Πιεηάδεο Τν ιάζνο απνηέιεζκα είλαη ιόγσ ηεο θαθήο δνκήο ηνπ EMP_LOCS πνπ δελ έρεη ην SSN 21-20

Οδεγία 4 Πιαζκαηηθέο Πιεηάδεο (Spurious Tuples) Οδεγία 4: Οη ζρέζεηο πξέπεη λα ζρεδηάδνληαη έηζη ώζηε λα κπνξνύλ λα επαλζπλζεηνύλ, ηππηθά ιέγεηαη όηη ζα πξέπεη λα ηζρύεη ην lossless join condition, * ( R1 (r),..., Rm (r)) = r ΓΔΝ πξέπεη λα παξάγνληαη πιαζκαηηθέο πιεηάδεο θαηά ηελ θπζηθή ζπλέλσζε κεηαμύ ΟΠΟΙΩΝΓΗΠΟΤΔ ζρέζεσλ κε θνηλά γλσξίζκαηα ζπλέλσζεο. Υπάξρνπλ 2 ζεκαληηθέο ηδηόηεηεο ηεο δηάζπαζεο (decomposition) κηαο ζρέζεο: a) Γηαθύιαμε ηεο Αξρηθήο Σρέζεο: Lossless Join Decomposition Γελ κπνξεί λα παξαβιεθζεί. b) Γηαθύιαμε ησλ Σπλαξηεζηαθώλ Δμαξηήζεσλ: Functional dependency preservation Μπνξεί θάπνηε λα παξαβιεθζεί. Πεξηζζόηεξα ζε εξρόκελεο δηαιέμεηο 21-21