Βάσεις δεδομένων - lecture1

Post on 11-Apr-2015

251 views 4 download

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

Μειονεκτήµατα Προσέγγισης Β.∆.Μειονεκτήµατα Προσέγγισης Β.∆.

• ∆απανηρή προµήθεια και συντήρηση• Απαιτήσεις σε υλικό και προσωπικό• Καθυστέρηση στη διαχείριση δεδοµένων

• Τα αρχεία εγγραφών είναι προτιµότερα εάν:– δεν αναµένονται αλλαγές στις εφαρµογές και στη δοµή της Β.∆.

– υπάρχουν πιεστικές απαιτήσεις λειτουργίας σε πραγµατικό χρόνο

– δεν απαιτείται προσπέλαση πολλών χρηστών στα δεδοµένα