Βάσεις δεδομένων - lecture1
-
Upload
api-3709728 -
Category
Documents
-
view
251 -
download
4
Transcript of Βάσεις δεδομένων - lecture1
1
1
ΒΑΣΕΙΣ ∆Ε∆ΟΜΕΝΩΝ
Χειµερινό Εξάµηνο 2002
∆ρ. Βαγγελιώ Καβακλή
ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ,ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ
ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ
2
Στόχοι του µαθήµατοςΣτόχοι του µαθήµατος• Η εισαγωγή στις θεµελιώδεις έννοιες που είναι απαραίτητες
για το διαχείριση βάσεων δεδοµένων
• Στο τέλος του εξαµήνου θα είστε ικανοί να– σχεδιάζετε µια Β.∆.
• να ορίζετε τη µορφή των δεδοµένων που θα αποθηκευτούν στη βάση– υλοποιείτε µια Β.∆.
• να δηµιουργείτε µια Β.∆. χρησιµοποιώντας ένα σύστηµα διαχείρισηςΒ.∆.
– χειρίζεστε µια Β.∆.• να αποθηκεύετε δεδοµένα και να υποβάλετε ερωτήσεις προς τη βάση για ανάκτηση συγκεκριµένων δεδοµένων
2
3
Περιγραφή ΜαθήµατοςΠεριγραφή Μαθήµατος
• ∆ιδασκαλία: Τρίτη 17:00 – 19:00 Αίθουσα Β (κτίριο Παπαρίσβα)
• Εργαστήρια: Τετάρτη (Εργαστήριο Χατζηγιάννη)Οµάδα Α: 09:00 – 11:00Οµάδα Β: 11:00 – 13:00Οµάδα Γ: 15:00 – 17:00
• ∆ιδακτικά Βιβλία– Θεµελιώδεις Αρχές Συστηµάτων Βάσεων ∆εδοµένων, R. Elmasri – S.
B. Navathe, 3η ‘Εκδοση, Εκδόσεις ∆ίαυλος, 2001– Το πρώτο βιβλίο της ελληνικής Access 2000, Χ. Στασινός, Εκδόσεις Νέων Τεχνολογιών, 1999
• Αξιολόγηση– Ο τελικός βαθµός υπολογίζεται ως εξής:
10% Εργαστηριακές Ασκήσεις + 25% Ασκήσεις + 65% Γραπτή Εξέταση– Ο βαθµός της εξέτασης θα πρέπει να είναι ≥ 5.
4
Παραδείγµατα Συστηµάτων Β.∆.Παραδείγµατα Συστηµάτων Β.∆.• Παραδοσιακές Εφαρµογές
– οι αποθηκευµένες πληροφορίες είναι σε µορφή text ή αριθµών• Ενηµέρωση τραπεζικού λογαριασµού• Κράτηση ξενοδοχείου ή αεροπορικού ταξιδιού• Αναζήτηση βιβλιογραφικών στοιχείων σε κατάλογο βιβλιοθήκης• Συνδροµή περιοδικού σ’ έναν εκδότη• Αγορά αντικειµένων
• Πολυµεσικά Συστήµατα Β.∆.– αποθηκεύουν και διαχειρίζονται εικόνες / video / ήχο
• Γεωγραφικά Πληροφοριακά Συστήµατα (G.I.S.)– αποθηκεύουν δεδοµένα καιρού / δορυφορικές εικόνες, γεωγραφικά αντικείµενα (2 διαστάσεων), χρονικές πληροφορίες
• Αποθήκη ∆εδοµένων και Οn-line Συστήµατα Αναλυτικής Επεξεργασίας (OLAP)– εξαγωγή και ανάλυση χρήσιµων πληροφοριών για λήψη αποφάσεων
3
5
Περιεχόµενο του µαθήµατοςΠεριεχόµενο του µαθήµατος
• Σχεδιασµός Βάσεων ∆εδοµένων– Εννοιολογικός Σχεδιασµός– Μοντέλο Οντοτήτων – Συσχετίσεων (ΟΣ)
• Υλοποίηση Βάσεων ∆εδοµένων– Σχεσιακές Βάσεις ∆εδοµένων– Σχεσιακή Άλγεβρα– Η γλώσσα χειρισµού δεδοµένων SQL
• Αποθήκευση ∆εδοµένων– Φυσικές ∆οµές Αρχείων– Μέθοδοι Προσπέλασης
• Συστήµατα ∆ιαχείρισης Βάσεων ∆εδοµένων– MS Access 2000
6
ΟρισµοίΟρισµοί• Βάση ∆εδοµένων (database)
– Συλλογή από συσχετιζόµενα δεδοµένα
• ∆εδοµένα:– γνωστά γεγονότα που µπορούν να καταγραφούν και έχουν κάποια υπονοούµενη σηµασία
• ονόµατα, αρ. τηλεφώνων, διευθύνσεις των ανθρώπων που γνωρίζετε, τα οποία έχετε καταγράψει σε ένα ευρετήριο διευθύνσεων
• Ιδιότητες Β.∆.– αναπαριστά κάποια άποψη του πραγµατικού κόσµου (µικρόκοσµος ή πεδίο αναφοράς)
– αποτελεί µια λογικά συνεκτική συλλογή δεδοµένων που έχει κάποια εγγενή σηµασία
– σχεδιάζεται, χτίζεται και γεµίζει µε δεδοµένα για κάποιο συγκεκριµένο σκοπό
– προορίζεται για συγκεκριµένη οµάδα χρηστών
4
7
Μέγεθος Β.∆.Μέγεθος Β.∆.
• Μια Β.∆. µπορεί να έχει οποιοδήποτε µέγεθος και κυµαινόµενη πολυπλοκότητα– λίστα ονοµάτων / διευθύνσεων:
• λίγες εκατοντάδες εγγραφές– κατάλογος βιβλιοθήκης:
• 0,5 εκ. κάρτες αποθηκευµένες υπό διαφορετικές κατηγορίες (όνοµα συγγραφέα, θέµα βιβλιου, τίτλο βιβλίου) ταξινοµηµένες κατά αλφαβητική σειρά σε κάθε κατηγορία
– Β.∆. Εφορείας ΗΠΑ:• 100 εκ. φορολογούµενοι × 5 φόρµες/ φορολογούµενο × 200 χαρακτήρες / δήλωση × 4 τελευταίες δηλώσεις = 4×1011 bytes
8
Σύστηµα Βάσης ∆εδοµένωνΣύστηµα Βάσης ∆εδοµένων
• Μια Β.∆. µπορεί να δηµιουργηθεί και να συντηρηθεί είτε χειρόγραφα, είτε µε χρήση µηχανών
• Σύστηµα ∆ιαχείρισης Βάσεων ∆εδοµένων – Σ∆Β∆(database management system – DBMS)– µια συλλογή από προγράµµατα που επιτρέπουν στους χρήστες να δηµιουργήσουν και να συντηρήσουν µια βάση δεδοµένων
– Ένα Σ∆Β∆ µπορεί να είναι:• γενικής χρήσης (general purpose):διευκολύνει τις διαδικασίες ορισµού, κατασκευής και χειρισµού Β.∆. για διάφορες εφαρµογές
• ειδικού σκοπού (special purpose):υλοποιεί µια συγκεκριµένη Β.∆.
• Σύστηµα Βάσης ∆εδοµένων (database system):– µια Β.∆. µαζί µε το αντίστοιχο λογισµικό Σ∆Β∆
5
9
∆ιαχείριση Β.∆.∆ιαχείριση Β.∆.
• Περιλαµβάνει τις εξής διαδικασίες:– ορισµός: προδιαγραφή των τύπων των δοµών και των περιορισµών των δεδοµένων που θα αποθηκευτούν στη βάση
– κατασκευή: αποθήκευση των δεδοµένων σ’ ένα αποθηκευτικό µέσο που ελέγχεται από το Σ∆Β∆
– χειρισµός: περιλαµβάνει λειτουργίες όπως:• υποβολή ερωτήσεων προς τη βάση για ανάκτηση συγκεκριµένων δεδοµένων
• ενηµέρωση της βάσης ώστε να αντανακλά αλλαγές στο µικρόκοσµο
• παραγωγή αναφορών από τα δεδοµένα
10
Περιβάλλον Συστήµατος Β.∆.Περιβάλλον Συστήµατος Β.∆.Χρήστες / Προγραµµατιστές
Προγράµµατα Εφαρµογών / Ερωτήσεων
Λογισµικό Επεξεργασίας Ερωτήσεων
Λογισµικό Προσπέλασης / Αποθήκευσης ∆εδοµένων
Αποθηκευµένοςορισµός της Β.∆.(µεταδεδοµένα)
ΑποθηκευµένηΒ.∆.
ΛογισµικόΣ∆Β∆
Σύστηµα Β.∆.
6
11
Ιστορική ΑναδροµήΙστορική Αναδροµή• 1950: Πρώτη Γενεά – Αρχεία σε Ταινίες
– Αποθήκευση σε κάρτες και ταινίες (σειριακή επεξεργασία)
• 1960: ∆εύτερη Γενεά – Αρχεία σε ∆ίσκους– Θεµελίωση του Επιστηµονικού Πεδίου Βάσεων ∆εδοµένων– Συστήµατα ∆ικτύου και Ιεραρχικά– Ανάπτυξη Συστηµάτων Β∆ για Ιδιωτική Χρήση– Εµφάνιση του πρώτου γενικού-σκοπού Σ∆Β∆: Integrated Data Store (GE)– Ακολουθούν: Information Management System (IMS) IBM, SABRE Airline Reservation System
(AA+IBM)
• 1970: Τρίτη Γενεά – Προ-Σχεσιακή– Καθαρός ∆ιαχωρισµός µεταξύ «φυσικής» και «λογικής» οργάνωσης Β∆– Αναγνώριση του ρόλου της Μοντελοποίησης– Θεωρητικός ορισµός του Σχεσιακού Μοντέλου (Edgar Codd, IBM, San Jose)
• 1980-1990: Τέταρτη Γενεά – Σχεσιακό Μοντέλο και Συστήµατα– Υψηλού επιπέδου, ισχυρές γλώσσες επεξεργασίας – SQL– Εµφάνιση Αντικειµενοστραφών Συστηµάτων, Ευφυών Συστηµάτων
• 1990-2000: Πέµπτη Γενεά – Μετα-Σχεσιακή Εποχή– Εµπορικά Αντικειµενοστραφή Συστήµατα– Ενεργές Β.∆.– Πολυµέσα– Συστήµατα στο Internet– Αποθήκες ∆εδοµένων
12
Παράδειγµα: ΠΑΝΕΠΙΣΤΗΜΙΟΠαράδειγµα: ΠΑΝΕΠΙΣΤΗΜΙΟ
• Στόχος: ∆ιατήρηση πληροφοριών που αφορούν– φοιτητές– µαθήµατα– βαθµολογίες
• Οργάνωση Β.∆. σε 4 αρχεία εγγραφών– ΦΟΙΤΗΤΗΣ– ΜΑΘΗΜΑΤΑ– ∆Ι∆ΑΣΚΑΛΙΑ– ΒΑΘΜΟΛΟΓΙΑ
7
13
Εκπ Τεχνολογία32001/0005∆ηµητρέλια
Μουσειολογία32000/0001Παπαδόπουλος
ΚατεύθυνσηΈτοςΑριθ_ΜητρώουΌνοµαΦΟΙΤΗΤΗΣ
ΠΕΡΙΒΑΛΟΝΤΟΣ2∆ΙΑ300Φύλο και Πολιτισµός
ΤΠΤΕ3ΗΥ201∆ικτυακά Πολυµέσα Ι
ΤΠΤΕ3ΗΥ101∆ιαδραστικά Πολυµέσα
Τµήµα∆ιδακ_µονάδεςΚωδικός_ΜαθΌνοµα_ΜαθήµατοςΜΑΘΗΜΑ
Χειµερινό
Εαρινό
Χειµερινό
Χειµερινό
Εξάµηνο
∆ηµαράκη2002ΗΥ20122
Καβακλή2001ΗΥ20121
Ρόκου2001ΗΥ10112
Καβακλή2000ΗΥ10111
∆ιδάσκωνΈτοςΚωδικός_ΜαθΚωδ_∆ιδασκ∆Ι∆ΑΣΚΑΛΙΑ
8
6.5
7.5
Βαθµός
222001/0005
212000/0001
112000/0001
Κωδ_∆ιδασκΑριθ_ΜητρώουΒΑΘΜΟΛΟΓΙΑ
14
∆ιαχείριση της Β.∆. ΠΑΝΕΠΙΣΤΗΜΙΟ∆ιαχείριση της Β.∆. ΠΑΝΕΠΙΣΤΗΜΙΟ• Ορισµός της Β.∆.
– προσδιορισµός των στοιχειωδών δεδοµένων που πρόκειται να αποθηκευτούν σε κάθε εγγραφή
– προσδιορισµός του τύπου δεδοµένων για κάθε στοιχειώδες δεδοµένο• Κατασκευή
– αποθήκευση δεδοµένων στο αντίστοιχο αρχείο– οι εγγραφές στα διάφορα αρχεία µπορεί να σχετίζονται η µια µε την άλλη!
• Χειρισµός– διενέργεια επερωτήσεων και ενηµερώσεων µε τη χρήση κάποιας
«γλώσσας» του ΣΒ∆• «βρες τα ονόµατα και τις βαθµολογίες των φοιτητών που παρακολούθησαν τη διδασκαλία του µαθήµατος ∆ικτυακά Πολυµέσα Ι κατά το Εαρινό εξάµηνο 1992»
• «δηµιούργησε µια νέα διδασκαλία για το µάθηµα ∆ικτυακά Πολυµέσα Ι γι’ αυτό το εξάµηνο»
• «καταχώρησε το βαθµό 10 στον Παπαδόπουλο για τη διδασκαλία του µαθήµατος Φύλο και Πολιτισµός του προηγούµενου εξαµήνου»
8
15
Σύστηµα διαχείρισης αρχείων (Σύστηµα διαχείρισης αρχείων (file file system)system)
Χρήστης Εφαρµογή Αρχεία
16
Μειονεκτήµατα συστήµατος διαχείρισης αρχείωνΜειονεκτήµατα συστήµατος διαχείρισης αρχείων
• Πλεονασµός δεδοµένων (data redundancy)• Ασυνέπεια δεδοµένων (inconsistency)• ∆ύσκολη αναζήτηση (search) • ∆υσκολία διαµοιρασµού (data sharing)• Αδυναµία ταυτόχρονης πρόσβασης (concurrent
access)• Ανοµοιοµορφία (heterogeneity)• ∆υσκολία στην εφαρµογή κανόνων ακεραιότητας
(integrity rules)• ∆υσκολία στην τήρηση αντιγράφων ασφαλείας
(backup)
9
17
Προσέγγιση Βάσεων ∆εδοµένωνΠροσέγγιση Βάσεων ∆εδοµένων
Χρήστης Εφαρµογή
Β∆
18
Πλεονεκτήµατα Β.∆.Πλεονεκτήµατα Β.∆.
• Ταυτόχρονη Προσπέλαση από πολλούς χρήστες– το Σ∆Β∆ περιλαµβάνει λογισµικό για έλεγχο ταυτόχρονης προσπέλασης (concurrency control)
– εξασφαλίζει σωστό αποτέλεσµα ενηµέρωσης• Έλεγχος Πλεονασµών
– οικονοµία χώρου και µόχθου– συµβατότητα µεταξύ δεδοµένων
• Περιορισµός µη εξουσιοδοτηµένης προσπέλασης– το Σ∆Β∆ περιλαµβάνει λογισµικό ασφάλειας και εξουσιοδότησης
(security & authorisation)– διαφορετικοί περιορισµοί προδιαγράφονται για διαφορετικούς χρήστες
• Παροχή µηχανισµών τήρησης εφεδρικών αντιγράφων και ανάκαµψης (backup)– αντιµετώπιση (ανάκαµψη) µετά από βλάβες υλικού ή λογισµικού
10
19
Χρήσιµα χαρακτηριστικά της προσέγγισης Β.∆.Χρήσιµα χαρακτηριστικά της προσέγγισης Β.∆.
• Αυτοπεριγραφή– ένα Σ∆Β δεν περιέχει µόνο την ίδια τη βάση, αλλά και τον πλήρη ορισµό της (κατάλογος συστήµατος)
– επιτρέπει το λογισµικό του Σ∆Β∆ να είναι ανεξάρτητο από συγκεκριµένη εφαρµογή
• Ανεξαρτησία Προγραµµάτων - ∆εδοµένων– Η δοµή των αρχείων δεδοµένων αποθηκεύεται ξεχωριστά από το λογισµικό προσπέλασης
– αλλαγή στη δοµή των αρχείων δεν επηρεάζει το λογισµικό του Σ∆Β∆• Υποστήριξη Πολλαπλών Όψεων των ∆εδοµένων
– διαφορετικοί χρήστες απαιτούν διαφορετική προοπτική (όψη) της Β.∆.
– µια όψη µπορεί να είναι ένα υποσύνολο της Β.∆. ή να περιέχει εικονικά (virtual) δεδοµένα που παράγονται από τα αρχεία αλλά δεν αποθηκεύονται
20
Εξωτερική όψη 1 Εξωτερική όψη n
Εννοιολογικό σχήµα
Εσωτερικό σχήµα
∆εδοµένα
Ανεξαρτησία ∆εδοµένωνΑνεξαρτησία ∆εδοµένων
Αλλαγή στο σχήµα ενός επιπέδου δεν επηρεάζει το σχήµα του αµέσως υψηλότερου επιπέδου
11
21
ΠαράδειγµαΠαράδειγµα
222002Χειµερινό8ΗΥ201∆ηµητρέλια
212001Εαρινό6.5ΗΥ201Παπαδόπυλος
112000Χειµερινό7.5ΗΥ101ΠαπαδόπουλοςΚωδικός_∆ιδΈτοςΕξάµηνοΒαθµόςΚωδικός_Μαθ
Αντίγραφο_ΦοιτητήΌνοµα_ΦοιτητήΒΑΘΜΟΛΟΓΙΑ
Όψη ΒΑΘΜΟΛΟΓΙΑ Φοιτητών
439Κατεύθυνση435Έτος431Αριθ_Μητρώου
301Όνοµαµήκος σε χαρακτήρες (bytes)θέση αρχής της εγγραφήςόνοµα στοιχειώδους δεδοµένου
Εννοιολογική Αναπαράσταση ΦΟΙΤΗΤΗ
Εσωτερική Αναπαράσταση ΦΟΙΤΗΤΗ
Εκπ Τεχνολογία32001/0005∆ηµητρέλια
Μουσειολογία32000/0001Παπαδόπουλος
ΚατεύθυνσηΈτοςΑριθ_ΜητρώουΌνοµαΦΟΙΤΗΤΗΣ
22
Εργαζόµενοι σ’ ένα περιβάλλον Β.∆.Εργαζόµενοι σ’ ένα περιβάλλον Β.∆.
• ∆ιαχειριστής Β.∆.– εξουσιοδοτεί προσπέλαση στη Β.∆.– υπεύθυνος για προβλήµατα ασφάλειας, απόδοσης του συστήµατος– διαχείριση πόρων
• Σχεδιαστές Β.∆.– υπεύθυνοι για τον προσδιορισµό δεδοµένων– αναπτύσσουν τις διαφορετικές όψεις της βάσης που καλύπτουν τις απαιτήσεις διαφορετικών χρηστών
• Τελικοί χρήστες– άτοµα που η εργασία τους απαιτεί προσπέλαση δεδοµένων
• Αναλυτές Συστηµάτων και Προγραµµατιστές– αναπτύσσουν προδιαγραφές και υλοποιούν προκαθορισµένες δοσοληψίες βάσει των απαιτήσεων των τελικών χρηστών
12
23
Συνέπειες Προσέγγισης Β.∆.Συνέπειες Προσέγγισης Β.∆.• Επιβολή τυποποίησης
– πρότυπα για τα ονόµατα και τη µορφή των δεδοµένων– καλύτερη συνεργασία
• Μείωση χρόνου ανάπτυξης εφαρµογών– απαιτείται γύρω στο ¼ - 1/6 του χρόνου που απαιτείται µε τη χρήση παραδοσιακών συστηµάτων αρχείων
• Ευελιξία– επιτρέπονται αλλαγές στη δοµή της Β.∆. χωρίς να επηρεάζονται τα αποθηκευµένα δεδοµένα ή υφιστάµενα προγράµµατα εφαρµογών
• ∆ιαθεσιµότητα ενηµερωµένων πληροφοριών– ταυτόχρονα σε όλους τους χρήστες
• Οικονοµία κλίµακας– ελαττώνεται το συνολικό κόστος λειτουργίας και διαχείρισης
(δυνατός κεντρικός εξοπλισµός αντί για επιµέρους ανεξάρτητο εξοπλισµό χαµηλότερης απόδοσης)
24
Μειονεκτήµατα Προσέγγισης Β.∆.Μειονεκτήµατα Προσέγγισης Β.∆.
• ∆απανηρή προµήθεια και συντήρηση• Απαιτήσεις σε υλικό και προσωπικό• Καθυστέρηση στη διαχείριση δεδοµένων
• Τα αρχεία εγγραφών είναι προτιµότερα εάν:– δεν αναµένονται αλλαγές στις εφαρµογές και στη δοµή της Β.∆.
– υπάρχουν πιεστικές απαιτήσεις λειτουργίας σε πραγµατικό χρόνο
– δεν απαιτείται προσπέλαση πολλών χρηστών στα δεδοµένα