Βάσεις Δεδομένων 1 Δημήτριος Τσουμάκος

Σχετικά έγγραφα
Κεφάλαιο 2 MONTEΛΟΠΟΙΗΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ Β ΜΕΡΟΣ. Ανάπτυξη Β και το Μοντέλο E-R 1

Κεφάλαιο 2 MONTEΛΟΠΟΙΗΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ. Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.50

Κ Κ ε ε φ φ ά ά λ λ α α ιιο ο 2 2 MONTEΛΟΠΟΙΗΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.58

Κεφάλαιο 2 MONTEΛΟΠΟΙΗΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ. Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.40

Σχεδίαση Σχεσιακών ΒΔ

Μοντέλο Οντοτήτων-Συσχετίσεων. Η ανάγκη Διαγράμματα ΟΣ Σύνολα Οντοτήτων-Συσχετίσεων Απεικονίσεις Επεκτάσεις

Βάσεις Δεδομένων Ενότητα 4

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι

Βάσεις Δεδομένων 1 Δημήτριος Τσουμάκος


Διάλεξη 04: Εννοιολογική Σχεδίαση Βάσης Δεδομένων II (Entity Relationship Modelling) Διδάσκων: Παναγιώτης Ανδρέου

Εννοιολογικός Σχεδιασμός Βάσεων Δεδομένων & ER-Μοντέλο. ER-Μοντέλο ER-Διαγράμματα (1 & 2) ER- Συσχετίσεις Υψηλότερου Βαθμού EER Μοντέλο & Διαγράμματα

Διάλεξη 05: Εννοιολογική Σχεδίαση Βάσης Δεδομένων III (Entity Relationship Modelling) Διδάσκων: Παναγιώτης Ανδρέου

Βάσεις δεδομένων. (4 ο μάθημα) Ηρακλής Βαρλάμης

Διάγραμμα Οντοτήτων - Συσχετίσεων

Μοντέλο Οντοτήτων Σχέσεων (Entity-Relationship Model)

Εργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων

Βάσεις Δεδομένων Ι. 2 ο Φροντιστήριο. Πέρδικα Πολίνα [perdika]

Βάσεις Δεδομένων Εισαγωγή

Αρχεία και Βάσεις Δεδομένων

Διάλεξη 08: Αντιστοίχηση Εννοιολογικού σε Σχεσιακό Μοντέλο (ER/EER to Relational) Διδάσκων: Παναγιώτης Ανδρέου

Μοντέλο Οντοτήτων-Συσχετίσεων

Θεωρία Κανονικοποίησης

Βάσεις Δεδομένων Ι. 4 ο Φροντιστήριο. Πέρδικα Πολίνα [perdika]

Βάσεις Δεδομένων (Databases)

Διάλεξη 03: Εννοιολογική Σχεδίαση Βάσης Δεδομένων I (Entity Relationship Modelling) Διδάσκων: Παναγιώτης Ανδρέου

Εισαγωγή στην πληροφορική

Βάσεις Δεδομένων (Databases)

Διαγράμματα UML στην Ανάλυση. Μέρος Β Διαγράμματα Κλάσεων Διαγράμματα Αντικειμένων

Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. 2 ο Μάθημα: Βασικά Θέματα Βάσεων Δεδομένων. Δρ. Κωνσταντίνος Χ.

Σχεσιακό Μοντέλο. Σχεδιασμός Βάσεων Δεδομένων Μάθημα 2 ο Μαρία Χαλκίδη

Entity-Relationship Model (Chen) Οντολογικό Σχεσιακό Μοντέλο

Kεφ.2: Σχεσιακό Μοντέλο (επανάληψη) Κεφ.6.1: Σχεσιακή Άλγεβρα

Μοντέλο Οντοτήτων Συσχετίσεων. Σχεδιασμός Βάσεων Δεδομένων Μαρία Χαλκίδη

Διάλεξη 06: Σχεσιακό Μοντέλο I (Relational Data Model) Διδάσκων: Παναγιώτης Ανδρέου

Κλειδιά (keys) Λογικά, σκεφτόµαστε για «κλειδιά» σαν τα δεδοµένα (τα πεδία) εκείνα τα οποία µας επιτρέπουν να ξεχωρίσουµε τις διάφορες εγγραφές

Κεφάλαιο 2 MONTEΛΟΠΟΙΗΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ A ΜΕΡΟΣ. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1

Μοντελοποίηση Συστημάτων. Διαγράμματα Κλάσεων ClassDiagrams

Βάσεις Δεδομένων (Databases)

Διάλεξη 07: Σχεσιακό Μοντέλο II (Relational Data Model) Διδάσκων: Παναγιώτης Ανδρέου

Σχεσιακό Μοντέλο Περιορισμοί Μετατροπή ER σε Σχεσιακό Παράδειγμα.. Εργαστήριο Βάσεων Δεδομένων. Relational Model

Βάσεις Δεδομένων. Σταύρος Βαλσαμίδης Βάσεις Δεδομένων Διάγραμμα Ο-Σ 1

Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων. Εισαγωγή Ανάλυση Απαιτήσεων. Φροντιστήριο 1 ο

Σχεδιασµός µιας Β. Εισαγωγή. Μετατροπή σε σχεσιακό -> είσοδο σε ένα Σ Β. Εισαγωγή. Ιδέες Ο/Σ Σχέσεις Σχεσιακό Σ Β

Department of Computer Science University of Cyprus. EPL342 Databases. Lecture 8: RM II. Relational Model. (Chapter )

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΣΒΔ - ΕΙΣΑΓΩΓΗ ΣΤΟ ΜΟΝΤΕΛΟ ΟΝΤΟΤΗΤΩΝ ΣΥΣΧΕΤΙΣΕΩΝ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ

Εισαγωγή στις βασικές έννοιες των Βάσεων Δεδομένων

Department of Computer Science University of Cyprus. EPL342 Databases. Lecture 5: ER II. Data Modeling Using the ER Model

Σύγχρονες Εφαρμογές Τεχνολογιών της Πληροφορίας και των Επικοινωνιών

Μοντέλο Οντοτήτων-Συσχετίσεων

Department of Computer Science University of Cyprus. EPL342 Databases. Lecture 4: ER I. Data Modeling Using the ER Model

Ένας απλός τρόπος αναπαράστασης δεδομένων: ένας διδιάστατος πίνακας που λέγεται σχέση Γνωρίσματα

Αρχεία και Βάσεις Δεδομένων

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

ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης. Φροντιστήριο SQL Examples ΙΙ Ξένου Ρουμπίνη

Ένας απλός τρόπος αναπαράστασης δεδομένων: ένας διδιάστατος πίνακας που λέγεται σχέση Γνωρίσματα

2. Εννοιολογική Μοντελοποίηση Δεδομένων


Department of Computer Science University of Cyprus. EPL342 Databases. Lecture 6: ER III. ER Model + Enhanced ER Model

Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων Ι Εξεταστική Περίοδος Φεβρουαρίου 2006

Μοντέλο Οντοτήτων-Συσχετίσεων

ΗΥ 360 Αρχεία και Βάσεις Δεδομένων

Εργαστήριο Βάσεων Δεδομένων. Relational Model Σχεσιακό Μοντέλο

Μοντέλο Οντοτήτων-Συσχετίσεων

Σχεδίαση Βάσεων Δεδομένων

Βάσεις Δεδομένων : Σχεσιακό Μοντέλο 1. Ένας απλός τρόπος αναπαράστασης δεδομένων: ένας διδιάστατος πίνακας που λέγεται σχέση.

Δόμηση Απαιτήσεων: Εννοιολογική Μοντελοποίηση Δεδομένων

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Κανόνες μετατροπής Διαγράμματος Οντοτήτων-Συσχετίσεων σε Σχεσιακό Σχήμα. Δρ. Βαγγελιώ Καβακλή ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ,

Σχεδιασμός Βάσεων Δεδομένων

Εργαστήριο Τεχνολογίας Λογισμικού και Ανάλυσης Συστημάτων - 4 ο Εργαστήριο -

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι Ενότητα 3:

Βάσεις Δεδομένων (Databases)

ER Diagram Συσχετίσεις Ασθενείς Οντότητες Παράδειγμα ER.. Εργαστήριο Βάσεων Δεδομένων. Entity-Relationship Diagram (ER)

Σχεσιακό Μοντέλο Δεδομένων

Κεφάλαιο 2ο. Κατανοώντας την αντικειμενοστρέφεια

Βάσεις Δεδομένων. Ενότητα 4: Μοντελοποίηση Συσχέτισης Οντοτήτων. Αθανάσιος Σπυριδάκος Τμήμα Διοίκησης Επιχειρήσεων

ΑΝΑΛΥΣΗ ΑΠΑΙΤΗΣΕΩΝ ανάλυση απαιτήσεων Σε αυτό το μάθημα θα ασχοληθούμε με : Δημιουργία μοντέλων

06 Αντικειμενοστρεφής ανάλυση και σχεδιασμός

ΕΝΝΟΙΟΛΟΓΙΚΗ ΣΧΕΔΙΑΣΗ ΔΕΔΟΜΕΝΩΝ (6)

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ

Μοντέλο Οντοτήτων Σχέσεων (Entity-Relationship Model)

Μάθημα: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Διδάσκων: Καθ. Ιωάννης Βασιλείου ΕΝΔΕΙΚΤΙΚΗ ΛΥΣΗ ΚΑΙ ΣΧΟΛΙΑ ΣΤΗΝ ΠΡΩΤΗ ΑΣΚΗΣΗ

Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό Σχήμα. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

2. Το Μοντέλο Οντοτήτων- Συσχετίσεων

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ. Relational Model Μαθ. #9

ΜοντέλοΟντοτήτωνΣυσχετίσεων & ΔιάγραμμαΟντοτήτων Συσχετίσεων. Μοντέλο Οντοτήτων Συσχετίσεων

Πληροφοριακά Συστήµατα

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

Η εταιρεία είναι οργανωµένη σε τµήµατα Κάθε ΤΜΗΜΑένα όνοµα, κωδικό και έναν εργαζόµενο που διευθύνει το τµήµα. Αποθηκεύεται η ηµεροµηνία που ανέλαβε

Το Σχεσιακό Μοντέλο. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Πληροφοριακά Συστήματα Διοίκησης Ενότητα 1: Βασικές Αρχές Αντικειμενοστραφούς Σχεδίασης Συστημάτων και Εφαρμογών (1ο Μέρος)

H SQL είναι η γλώσσα για όλα τα εμπορικά σχεσιακά συστήματα διαχείρισης βάσεων δεδομένων

Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό Σχήμα. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Πολιτισμική Πληροφορική: Οργάνωση και διαχείριση Πληροφοριών

Κεφάλαιο 2 Μοντέλο Οντοτήτων Συσχετίσεων

ΜΟΝΤΕΛΟΠΟΙΗΣΗ Ε ΟΜΕΝΩΝ: το E-R µοντέλο. Κωνσταντίνος Ταραµπάνης Καθηγητής γρ

Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις δεδομένων. (9 ο μάθημα) Ηρακλής Βαρλάμης

Transcript:

Βάσεις Δεδομένων 1 Δημήτριος Τσουμάκος MONTEΛΟΠΟΙΗΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ Β ΜΕΡΟΣ Ανάπτυξη ΒΔ και το Μοντέλο E-R 1

Το E-R Μοντέλο: Γραφικός Συμβολισμός ENTITY SET WEAK ENTITY SET is_a GENERALIZATION RELATIONSHIP SET ATTRIBUTE DERIVED Attribute PRIMARY KEY E2 R1 Total PARTICIPATION of E1 in R1 E2 1 N R1 Cardinality ratio 1:N for E2:E1 in R1 E1 E1 Ανάπτυξη ΒΔ και το Μοντέλο E-R 2

Αδυναμίες του E-R Μοντέλου Έχουν προταθεί πολλά παρόμοια του E-R μοντέλα για να αντιμετωπίσουν τις εκφραστικές αδυναμίες αυτού. Δεν υποστηρίζεται ο ορισμός συσχέτισης μεταξύ συσχετίσεων DATE is a relationship between MONTH, DAY and YEAR EMPLOYMENT is a relationship between employee and employer HIRING is a relationship between DATE and EMPLOYMENT Ανάπτυξη ΒΔ και το Μοντέλο E-R 3

Επιπλέον ΔΟΜΙΚΟΙ ΠΕΡΙΟΡΙΣΜΟΙ Συναρτησιακές Εξαρτήσεις (Functional dependencies): Π.χ., Ένα ΤΜΗΜΑ δεν μπορεί να παραγγείλει δύο διαφορετικά ΠΡΟΙΟΝΤΑ από τον ίδιο ΠΡΟΜΗΘΕΥΤΗ.» Δεν μπορεί να εκφραστεί απευθείας στο ER μοντέλο. Γενικοί Δομικοί Περιορισμοί: Π.χ., Ο προϋπολογισμός ενός Προϊσταμένου είναι λιγότερο κατά 10% του συνολικού Προϋπολογισμού όλων των τμημάτων που Προΐσταται Ανάπτυξη ΒΔ και το Μοντέλο E-R 4

Σήμερα ΑΝΑΛΥΤΙΚΗ ΠΑΡΟΥΣΙΑΣΗ ΤΟΥ ΜΟΝΤΕΛΟΥ ΟΝΤΟΤΗΤΩΝ ΣΥΣΧΕΤΙΣΕΩΝ (Entity Relationship) Επέκταση του Μοντέλου Παραδείγματα ΑΛΛΑ ΕΝΝΟΙΟΛΟΓΙΚΑ ΜΟΝΤΕΛΑ ΚΑΙ ΣΥΜΒΟΛΙΣΜΟΙ ΑΝΑΦΟΡΑ ΣΤΑ ΤΡΙΑ ΚΛΑΣΣΙΚΑ ΜΟΝΤΕΛΑ ΔΕΔΟΜΕΝΩΝ: Ιεραρχικό, Δικτύου (DBTG Network), και Σχεσιακό (Relational) Ανάπτυξη ΒΔ και το Μοντέλο E-R 5

ΕΠΕΚΤΕΙΝΟΝΤΑΣ το E-R ΜΟΝΤΕΛΛΟ Εξειδίκευση/Γενίκευση (is_a) Περιορισμοί:» Πως ορίζεται (από τον χρήστη / υπό συνθήκη)» disjoint/ overlapping» Ολική/μερική» Κλπ. Κληρονομικότητα Γνωρισμάτων Συνάθροιση (Aggregation) Ανάπτυξη ΒΔ και το Μοντέλο E-R 6

Εξειδίκευση Η Συσχέτιση ΕΞΕΙΔΙΚΕΥΣΗ (is-a) Ακολουθείται top-down λογική Ορίζουμε υποκλάσεις μιας οντότητας που έχουν ορισμένα εξειδικευμένα χαρακτηριστικά. Οι υποκλάσεις αυτές γίνονται ξεχωριστές οντότητες με γνωρίσματα που συμμετέχουν σε συσχετίσεις που δε συμμετέχει η υπερκλάση τους Π.χ., PAINTING is-a ART-OBJECT, DRAWING is-a ART-OBJECT Το βασικό πλεονέκτημα η ΚΛΗΡΟΝΟΜΙΚΟΤΗΤΑ (Inheritance) των Γνωρισμάτων κρατάμε Γνωρίσματα που είναι κοινά για όλα τα ART-OBJECT και δεν χρειάζεται να τα επαναλάβουμε για τα PAINTINGS και DRAWINGS κληρονομούνται. Ανάπτυξη ΒΔ και το Μοντέλο E-R 7

Παράδειγμα της is-a Συσχέτισης Α MANAGER is_a EMPLOYEE, An EMPLOYEE is_a PERSON Ανάπτυξη ΒΔ και το Μοντέλο E-R 8

Παράδειγμα της is-a Συσχέτισης Κληρονομικότητα Ανάπτυξη ΒΔ και το Μοντέλο E-R 9

Γενίκευση bottom-up λογική συνδυασμός από οντότητες που μοιράζονται κοινά χαρακτηριστικά φτιάχνοντας μια οντότητα υψηλότερου επιπέδου Είναι η αντίστροφη διαδικασία της εξειδίκευσης και αναπαριστώνται με τον ίδιο τρόπο στο E-R διάγραμμα Οι όροι γενίκευση και εξειδίκευση στην πράξη χρησιμοποιούνται με την ίδια έννοια Ανάπτυξη ΒΔ και το Μοντέλο E-R 10

Εξειδίκευση και Γενίκευση Μπορούμε να έχουμε πολλές εξειδικεύσεις μιας οντότητας με βάσει διαφορετικά χαρακτηριστικά Π.χ., permanent-employee vs. temporary-employee, αλλά και officer vs. secretary vs. teller Κάθε συμμετέχων εργαζόμενος θα ήταν Μέλος ενός από τα permanent-employee ή temporaryemployee, Κι επίσης μέλος ενός από τα officer, secretary, ή teller Η συσχέτιση ISA λέγεται και superclass - subclass relationship Ανάπτυξη ΒΔ και το Μοντέλο E-R 11

Εξειδίκευση και Γενίκευση: Περιορισμοί Περιορισμοί για το ποιες οντότητες μπορούν να είναι μέλη μιας εξειδίκευσης condition-defined (οριζόμενος από ιδιότητες) Π.χ. όλοι οι πελάτες άνω των 65 γίνονται μέλη της οντότητας senior-citizen senior-citizen ISA person. user-defined (οριζόμενος από το χρήστη) Περιορισμός μη επικάλυψης: ορίζει αν μια οντότητα ανήκει σε μία ή περισσότερες υποκλάσεις της ίδιας εξειδίκευσης Μη επικαλυπτόμενες υποκλάσεις (disjoint) μια οντότητα μπορεί να ανήκει μόνο σε μια υποκλάση της εξειδίκευσης σημειώνεται στο E-R diagram γράφοντας disjoint δίπλα στο ISA τρίγωνο Επικαλυπτόμενες υποκλάσεις (overlapping) μια οντότητα μπορεί να ανήκει σε περισσότερες από μία υποκλάσεις Ανάπτυξη ΒΔ και το Μοντέλο E-R 12

Εξειδίκευση και Γενίκευση: Περιορισμοί Περιορισμός πληρότητας: Ορίζει αν μια οντότητα της υπερκλάσης πρέπει να ανήκει τουλάχιστον σε μια υποκλάση της εξειδίκευσης Ολική εξειδίκευση: μια οντότητα πρέπει να ανήκει σε μια από τις υποκλάσεις της εξειδίκευσης Μερική εξειδίκευση: μια οντότητα δε χρειάζεται να ανήκει σε κάποια από τις υποκλάσεις της εξειδίκευσης Ανάπτυξη ΒΔ και το Μοντέλο E-R 13

Συνάθροιση (aggregation) Θεωρούμε τριπλή (ternary) συσχέτιση works-on Θέλουμε να καταγράψουμε τους managers για δουλειές που έγιναν από έναν employee σε ένα branch Ανάπτυξη ΒΔ και το Μοντέλο E-R 14

Συνάθροιση Οι συσχετίσεις works-on και manages αναπαριστούν επικαλυπτόμενη πληροφορία Κάθε συσχέτιση manages αντιστοιχεί σε μια works-on Ωστόσο, κάποιες συσχετίσεις works-on μπορεί να μην αντιστοιχούν σε συσχετίσεις manages, οπότε δεν μπορούμε να αφαιρέσουμε τη συσχέτιση works-on Αυτός ο πλεονασμός αφαιρείται με aggregation Μεταχειριζόμαστε τη συσχέτιση ως αφαιρετική οντότητα Έτσι μπορούμε να έχουμε συσχέτιση συσχετίσεων Ανάπτυξη ΒΔ και το Μοντέλο E-R 15

Παράδειγμα Ε-R An employee works on a particular job at a particular branch An employee, branch, job combination may have an associated manager Ανάπτυξη ΒΔ και το Μοντέλο E-R 16

Σχεδιαστικές αποφάσεις Γνώρισμα vs οντότητα για αναπαράσταση αντικειμένου Οντότητα vs συσχέτιση για αναπαράσταση έννοιας Ternary vs binary relationships Χρήση ασθενούς τύπου οντοτήτων Χρήση γενικεύσεων/εξειδικεύσεων Χρήση συνάθροισης Ανάπτυξη ΒΔ και το Μοντέλο E-R 17

ΣΥΜΒΟΛΙΣΜΟΙ στο Βιβλίο Silberschatz et al για το Εκτεταμένο Μοντέλο Ε-R Ανάπτυξη ΒΔ και το Μοντέλο E-R 18

ΣΥΜΒΟΛΙΣΜΟΙ στο Βιβλίο Silberschatz et al για το Εκτεταμένο Μοντέλο Ε-R(2) Ανάπτυξη ΒΔ και το Μοντέλο E-R 19

Εναλλακτικοί Συμβολισμοί Ανάπτυξη ΒΔ και το Μοντέλο E-R 20

Ένα ενδεικτικό παράδειγμα στο E-R Ανάπτυξη ΒΔ και το Μοντέλο E-R 21

UML UML: Unified Modeling Language H UML έχει πολλές συνιστώσες για να είναι δυνατή η γραφική αναπαράσταση των διαφορετικών στοιχείων ενός γενικής μορφής συστήματος λογισμικού. Η UML αναπτύχθηκε για Τεχνολογίες Λογισμικού και κατόπιν εξελίχθηκε και για εργαλείο μοντελοποίησης Βάσεων Δεδομένων και επιχειρηματικών ροών (workflows) Τα UML Διαγράμματα Κλάσης (Class Diagrams) αντιστοιχούν στα E-R Διαγράμματα αλλά με ΠΟΛΛΕΣ διαφορές. Ανάπτυξη ΒΔ και το Μοντέλο E-R 22

Άλλοι Συμβολισμοί Πολλά από τα εργαλεία για Μοντελοποίηση, όπως το VISIO ή το E-R Designer, χρησιμοποιούν άλλους τυποποιημένους συμβολισμούς, ενδεικτικά: Chen s ER Barker ER Information Engineering (IE) IDEF1X, Object role modeling (ORM)» Μεγάλη λεπτομέρεια και ακρίβεια Τεράστια Διαγράμματα Unified Modeling Language (UML)» Ιδιαίτερο χαρακτηριστικό η ικανότητα παράστασης της ανάπτυξης ΒΔ σε ΚΆΘΕ αφαιρετικό επίπεδο Ανάπτυξη ΒΔ και το Μοντέλο E-R 23

Διαδικασία Ανάπτυξης ΒΔ: Εννοιολογικό Μοντέλο Ανεξάρτητα του DBMS. Μικρόκοσμος Απαιτήσεις ΒΔ Συλλογή Απαιτήσεων και Ανάλυση Εννοιολογικός Σχεδιασμός Βάσης (π.χ., με E-R Model) -Μετά την χρήση ενός Εννοιολογικού Μοντέλου Δεδομένων, όπως το E-R, ερχόμαστε σε ένα σημείο όπου αρχίζει η εξάρτηση από το επιλεγέν DBMS και πρέπει να γίνει η ΜΕΤΑΤΡΟΠΗ τις «διαισθητικής» περιγραφής σε μια «τυπική», που να μπορεί να εκτελεστεί από το DBMS. Εννοιολογικό Μοντέλο (Σχήμα) E-R Διάγραμμα Ανάπτυξη ΒΔ και το Μοντέλο E-R 24

ΛΟΓΙΚΟΣ ΣΧΕΔΙΑΣΜΟΣ Εξάρτηση από το DBMS. Σε αυτό το σημείο ΕΠΙΛΕΓΟΥΜΕ το Μοντέλο Δεδομένων που Υποστηρίζεται από το DBMS. Ο βασικός υποψήφιος είναι το ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ (άλλοι Υποψήφιοι ήταν το Ιεραρχικό, ή το Μοντέλο Δικτύου Σχεσιακό Μοντέλο Λογικό (Εννοιολογικό) Σχήμα και Εξωτερικές Όψεις Λογικός Σχεδιασμός Βάσης Δεδομένων Εννοιολογικό Σχήμα E-R διάγραμμα Ανάπτυξη ΒΔ και το Μοντέλο E-R 25

Λογικός Σχεδιασμός Βάσης Όλα τα Λογικά Μοντέλα για Σχεδιασμό παριστούν τους Τύπους Οντοτήτων (στο E-R) ως ΑΡΧΕΙΑ ( Relations) Entity Set Entity Attribute File (relation) Record (Tuple) Field (attribute) Οι διαφοροποιήσεις μεταξύ λογικών μοντέλων είναι στο τρόπο παράστασης των Τύπων Συσχετίσεων Μερικά Μοντέλα (π.χ. Ιεραρχικό) επιτρέπουν μόνο συναρτησιακές συσχετίσεις (κάτι που δυσκολεύει την παράσταση N:M συσχετίσεων μόνο έμμεσα είναι δυνατή) ΒΑΣΙΚΕΣ ΤΕΧΝΙΚΕΣ: - Παράσταση συσχετίσεων με ΣΧΕΣΕΙΣ (π.χ., Σχεσιακό Μοντέλο) - Παράστασή των με ΣΥΝΔΕΣΜΟΥΣ μεταξύ αρχείων (π.χ., Μοντέλα Δικτύου και Ιεραρχικό) Ανάπτυξη ΒΔ και το Μοντέλο E-R 26

Παράδειγμα: Μικρό υποσύνολο της Βάσης Δεδομένων μιας Εταιρείας. N M EMPLOYEE WORKS-ON PROJECT SSN Address HoursPerWeek Number Location Name Salary Name Στο E-R Μοντέλο: Μια N:M ολική συσχέτιση (WORKS-ON) μεταξύ των τύπων οντοτήτων EMPLOYEE και PROJECT Ανάπτυξη ΒΔ και το Μοντέλο E-R 27

Παράδειγμα: (2) Θεωρήστε τις παρακάτω 5 πράξεις Q1: Ποιοι Υπάλληλοι εργάζονται στο έργο P1? Q2: Σε ποια έργα εργάζεται ο Υπάλληλος E1? INS: DEL: Εισαγωγή πληροφοριών για ένα νέο έργο Διαγραφή του γεγονότος ότι ο Υπάλληλος E3 εργάζεται στο έργο P4 MOD: Το έργο P2 μεταφέρθηκε από την Αθήνα στην Πάτρα Ανάπτυξη ΒΔ και το Μοντέλο E-R 28

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ: Εισαγωγή (1) ΔΟΜΕΣ: RELATIONS (ΣΧΕΣΕΙΣ) μία μόνο Δομή ΠΡΑΞΕΙΣ: Επεξεργασία των Σχέσεων (Πινάκων) ΔΟΜΙΚΟΙ ΠΕΡΙΟΡΙΣΜΟΙ: λίγοι έμφυτοι (π.χ, σύνολα), πολλοί ρητοί Αντιστοιχίες με το E-R Μοντέλο Τύπος Οντοτήτων <-> Τύπος Σχέσης (Relation) Οντότητα <-> n-πλειάδα (Tuple) Γνώρισμα <-> Γνώρισμα (Attribute) Συσχέτιση <-> Τύπος Σχέσης (Relation) Ένα ΑΠΛΟ μοντέλο με ΙΣΧΥΡΕΣ (τυπικές) Ρίζες Ανάπτυξη ΒΔ και το Μοντέλο E-R 29

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ: Εισαγωγή (2) Σχεσιακό Σχήμα EMPLOYEE SSN NAME ADDRESS SALARY WORKS-ON PROJECT ESSN PNUMB HRSPW NUMBER NAME LOCATION -- Ένα Σχεσιακό Σχήμα είναι ένα Σύνολο Σχέσεων, ή Πινάκων (με όνομα) - Τα ονόματα των στηλών είναι τα ονόματα των Γνωρισμάτων Ανάπτυξη ΒΔ και το Μοντέλο E-R 30

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ: Εισαγωγή (3) Παράδειγμα ΒΔ: Σύνολο Στιγμιότυπων EMPLOYEE SSN NAME ADDRESS SALARY e1 john athens 300000 WORKS-ON e3 mary patras 450000 e4 jack athens 145000 PROJECT NUMBER NAME LOCATION p1 xyz crete p2 rty athens p4 hju patras p5 ytu crete ESSN PNUMB HRSPW e1 p1 10 e1 p2 15 e1 p5 30 e3 p4 20 e4 p4 40 e3 p2 25 Ανάπτυξη ΒΔ και το Μοντέλο E-R 31

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ: Εισαγωγή (4) Πράξεις: απλοί Set-Theoretic τελεστές select records from RELATION(s) where... Το where-clause μπορεί να είναι Σύνθετο, με πολλούς τελεστές Δεν υπάρχει σειρά (order) στην πρόσβαση σε δεδομένα Πρόσβαση SET-AT-A-TIME στις εγγραφές Τα παραδείγματα Q1 και Q2 (ερωταποκρίσεις), που είναι πλήρως ΣΥΜΜΕΤΡΙΚΑ εκτελούνται στο Μοντέλο (DML) με έναν εντελώς ΣΥΜΜΕΤΡΙΚΟ τρόπο Ανάπτυξη ΒΔ και το Μοντέλο E-R 32

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ: Εισαγωγή (5). Q1: Employees of P1 Q2: Projects for E1 select from EMPLOYEE, WORKS-ON relations where (WORKS-ON.Pnumb = P1 ) and (WORKS-ON.ESSN = EMPLOYEE.SSN) print EMPLOYEE.Name select from PROJECT, WORKS-ON relations where (WORKS-ON.ESSN= E1 ) and (WORKS-ON.Pnumb = PROJECT.Number) print PROJECT.Name Οι πράξεις στο Σχεσιακό Μοντέλο είναι ΚΛΕΙΣΤΕΣ (CLOSED) Δηλαδή, παίρνουν ΣΧΕΣΕΙΣ και παράγουν πάλι ΣΧΕΣΕΙΣ Ανάπτυξη ΒΔ και το Μοντέλο E-R 33

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ: Εισαγωγή (6) ΤΡΟΠΟΠΟΙΗΣΕΙΣ INS: DEL: MOD: Εισαγωγή πληροφοριών για ένα νέο έργο - Εισαγωγή μιας n-πλειάδας στη Σχέση PROJECT Διαγραφή του γεγονότος ότι ο Υπάλληλος E3 εργάζεται στο έργο P4 - Διαγραφή της n-πλειάδας (e2, p4, 20) από την Σχέση WORKS-ON Το έργο P2 μεταφέρθηκε από την Αθήνα στην Πάτρα - Επέλεξε την n-πλειάδα (p2, rty, athens) από το PROJECT, και άλλαξε την τιμή athens σε patras Ανάπτυξη ΒΔ και το Μοντέλο E-R 34

Συγκρίσεις Μεταξύ Μοντέλων Η βασική διαφοροποίηση μεταξύ των τριών βασικών μοντέλων είναι το ΠΩΣ ΠΑΡΙΣΤΑΝΤΑΙ ΟΙ ΣΥΣΧΕΤΙΣΕΙΣ ΣΧΕΣΙΑΚΟ: Ρητά με τις ΣΧΕΣΕΙΣ (εφόσον η συσχέτιση είναι Ν:Μ) ή / και με έμμεσες συνδέσεις μεταξύ Σχέσεων που παρίστανται με τα Εξωτερικά Κλειδιά (foreign keys. ) ΔΙΚΤΥΟΥ: Ρητές συνδέσεις με ΣΥΝΔΕΣΜΟΥΣ (links) και εγγραφές σύνδεσης. ΣΧΟΛΙΟ: Εκφραστικότητα αλλά και εγγενής πολυπλοκότητα ΙΕΡΑΡΧΙΚΟ (ειδική περίπτωση Δικτύου): Ρητές συνδέσεις με ΣΥΝΔΕΣΜΟΥΣ. Η περίπτωση των N:M συσχετίσεων γίνεται με διπλασιασμό εγγραφών. ΣΧΟΛΙΟ: σημαντικές και σοβαρές αδυναμίες στην έκφραση μη-ιεραρχικών δομών. Ανάπτυξη ΒΔ και το Μοντέλο E-R 35

Βάση Δεδομένων για Παραγγελίες (Α) στο Σχεσιακό Μοντέλο Employees - Employee ID, First Name, Last Name, Title, Work Phone Customers - Customer ID, Company Name, First Name, Last Name, Billing Address, City, State/Province, ZIP Code, Web site, Phone Number, Fax Number, Ship Address, Ship City, Ship State/Province, Ship ZIP Code, Phone Number Products - Product ID, Product Name, Unit Price Orders - Order ID, Customer ID, Employee ID, Order Date, PO Number, Ship Date, Shipping Method ID, Sales Tax Rate Order Details - Order Detail ID, Order ID, Product ID, Quantity, Unit Price, Price Discount Ανάπτυξη ΒΔ και το Μοντέλο E-R 36

Βάση Δεδομένων για Παραγγελίες (Β) στο Σχεσιακό Μοντέλο Payments - Payment ID, Order ID, Payment Amount, Payment Date, Status, Credit Card #, Cardholder Name, Card Exp. Date, Payment Method, Credit Card? Shipping Methods - Shipping Method ID, Shipping Method Our Company Info - SetupID, Company Name, Address, City, State/Province, Postal Code, Phone Number, Fax Number Ανάπτυξη ΒΔ και το Μοντέλο E-R 37