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

12
1 1 ΒΑΣΕΙΣ ∆Ε∆ΟΜΕΝΩΝ Χειμερινό Εξάμηνο 2002 ∆ρ. Βαγγελιώ Καβακλή ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ, ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ 2 Στόχοι του μαθήματος Στόχοι του μαθήματος Η εισαγωγή στις θεμελιώδεις έννοιες που είναι απαραίτητες για το διαχείριση βάσεων δεδομένων Στο τέλος του εξαμήνου θα είστε ικανοί να σχεδιάζετε μια Β.. να ορίζετε τη μορφή των δεδομένων που θα αποθηκευτούν στη βάση υλοποιείτε μια Β.. να δημιουργείτε μια Β.. χρησιμοποιώντας ένα σύστημα διαχείρισης Β.. χειρίζεστε μια Β.. να αποθηκεύετε δεδομένα και να υποβάλετε ερωτήσεις προς τη βάση για ανάκτηση συγκεκριμένων δεδομένων

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

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

1

1

ΒΑΣΕΙΣ ∆Ε∆ΟΜΕΝΩΝ

Χειµερινό Εξάµηνο 2002

∆ρ. Βαγγελιώ Καβακλή

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ,ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ

ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ

2

Στόχοι του µαθήµατοςΣτόχοι του µαθήµατος• Η εισαγωγή στις θεµελιώδεις έννοιες που είναι απαραίτητες

για το διαχείριση βάσεων δεδοµένων

• Στο τέλος του εξαµήνου θα είστε ικανοί να– σχεδιάζετε µια Β.∆.

• να ορίζετε τη µορφή των δεδοµένων που θα αποθηκευτούν στη βάση– υλοποιείτε µια Β.∆.

• να δηµιουργείτε µια Β.∆. χρησιµοποιώντας ένα σύστηµα διαχείρισηςΒ.∆.

– χειρίζεστε µια Β.∆.• να αποθηκεύετε δεδοµένα και να υποβάλετε ερωτήσεις προς τη βάση για ανάκτηση συγκεκριµένων δεδοµένων

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

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)– εξαγωγή και ανάλυση χρήσιµων πληροφοριών για λήψη αποφάσεων

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

3

5

Περιεχόµενο του µαθήµατοςΠεριεχόµενο του µαθήµατος

• Σχεδιασµός Βάσεων ∆εδοµένων– Εννοιολογικός Σχεδιασµός– Μοντέλο Οντοτήτων – Συσχετίσεων (ΟΣ)

• Υλοποίηση Βάσεων ∆εδοµένων– Σχεσιακές Βάσεις ∆εδοµένων– Σχεσιακή Άλγεβρα– Η γλώσσα χειρισµού δεδοµένων SQL

• Αποθήκευση ∆εδοµένων– Φυσικές ∆οµές Αρχείων– Μέθοδοι Προσπέλασης

• Συστήµατα ∆ιαχείρισης Βάσεων ∆εδοµένων– MS Access 2000

6

ΟρισµοίΟρισµοί• Βάση ∆εδοµένων (database)

– Συλλογή από συσχετιζόµενα δεδοµένα

• ∆εδοµένα:– γνωστά γεγονότα που µπορούν να καταγραφούν και έχουν κάποια υπονοούµενη σηµασία

• ονόµατα, αρ. τηλεφώνων, διευθύνσεις των ανθρώπων που γνωρίζετε, τα οποία έχετε καταγράψει σε ένα ευρετήριο διευθύνσεων

• Ιδιότητες Β.∆.– αναπαριστά κάποια άποψη του πραγµατικού κόσµου (µικρόκοσµος ή πεδίο αναφοράς)

– αποτελεί µια λογικά συνεκτική συλλογή δεδοµένων που έχει κάποια εγγενή σηµασία

– σχεδιάζεται, χτίζεται και γεµίζει µε δεδοµένα για κάποιο συγκεκριµένο σκοπό

– προορίζεται για συγκεκριµένη οµάδα χρηστών

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

4

7

Μέγεθος Β.∆.Μέγεθος Β.∆.

• Μια Β.∆. µπορεί να έχει οποιοδήποτε µέγεθος και κυµαινόµενη πολυπλοκότητα– λίστα ονοµάτων / διευθύνσεων:

• λίγες εκατοντάδες εγγραφές– κατάλογος βιβλιοθήκης:

• 0,5 εκ. κάρτες αποθηκευµένες υπό διαφορετικές κατηγορίες (όνοµα συγγραφέα, θέµα βιβλιου, τίτλο βιβλίου) ταξινοµηµένες κατά αλφαβητική σειρά σε κάθε κατηγορία

– Β.∆. Εφορείας ΗΠΑ:• 100 εκ. φορολογούµενοι × 5 φόρµες/ φορολογούµενο × 200 χαρακτήρες / δήλωση × 4 τελευταίες δηλώσεις = 4×1011 bytes

8

Σύστηµα Βάσης ∆εδοµένωνΣύστηµα Βάσης ∆εδοµένων

• Μια Β.∆. µπορεί να δηµιουργηθεί και να συντηρηθεί είτε χειρόγραφα, είτε µε χρήση µηχανών

• Σύστηµα ∆ιαχείρισης Βάσεων ∆εδοµένων – Σ∆Β∆(database management system – DBMS)– µια συλλογή από προγράµµατα που επιτρέπουν στους χρήστες να δηµιουργήσουν και να συντηρήσουν µια βάση δεδοµένων

– Ένα Σ∆Β∆ µπορεί να είναι:• γενικής χρήσης (general purpose):διευκολύνει τις διαδικασίες ορισµού, κατασκευής και χειρισµού Β.∆. για διάφορες εφαρµογές

• ειδικού σκοπού (special purpose):υλοποιεί µια συγκεκριµένη Β.∆.

• Σύστηµα Βάσης ∆εδοµένων (database system):– µια Β.∆. µαζί µε το αντίστοιχο λογισµικό Σ∆Β∆

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

5

9

∆ιαχείριση Β.∆.∆ιαχείριση Β.∆.

• Περιλαµβάνει τις εξής διαδικασίες:– ορισµός: προδιαγραφή των τύπων των δοµών και των περιορισµών των δεδοµένων που θα αποθηκευτούν στη βάση

– κατασκευή: αποθήκευση των δεδοµένων σ’ ένα αποθηκευτικό µέσο που ελέγχεται από το Σ∆Β∆

– χειρισµός: περιλαµβάνει λειτουργίες όπως:• υποβολή ερωτήσεων προς τη βάση για ανάκτηση συγκεκριµένων δεδοµένων

• ενηµέρωση της βάσης ώστε να αντανακλά αλλαγές στο µικρόκοσµο

• παραγωγή αναφορών από τα δεδοµένα

10

Περιβάλλον Συστήµατος Β.∆.Περιβάλλον Συστήµατος Β.∆.Χρήστες / Προγραµµατιστές

Προγράµµατα Εφαρµογών / Ερωτήσεων

Λογισµικό Επεξεργασίας Ερωτήσεων

Λογισµικό Προσπέλασης / Αποθήκευσης ∆εδοµένων

Αποθηκευµένοςορισµός της Β.∆.(µεταδεδοµένα)

ΑποθηκευµένηΒ.∆.

ΛογισµικόΣ∆Β∆

Σύστηµα Β.∆.

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

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 αρχεία εγγραφών– ΦΟΙΤΗΤΗΣ– ΜΑΘΗΜΑΤΑ– ∆Ι∆ΑΣΚΑΛΙΑ– ΒΑΘΜΟΛΟΓΙΑ

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

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 στον Παπαδόπουλο για τη διδασκαλία του µαθήµατος Φύλο και Πολιτισµός του προηγούµενου εξαµήνου»

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

8

15

Σύστηµα διαχείρισης αρχείων (Σύστηµα διαχείρισης αρχείων (file file system)system)

Χρήστης Εφαρµογή Αρχεία

16

Μειονεκτήµατα συστήµατος διαχείρισης αρχείωνΜειονεκτήµατα συστήµατος διαχείρισης αρχείων

• Πλεονασµός δεδοµένων (data redundancy)• Ασυνέπεια δεδοµένων (inconsistency)• ∆ύσκολη αναζήτηση (search) • ∆υσκολία διαµοιρασµού (data sharing)• Αδυναµία ταυτόχρονης πρόσβασης (concurrent

access)• Ανοµοιοµορφία (heterogeneity)• ∆υσκολία στην εφαρµογή κανόνων ακεραιότητας

(integrity rules)• ∆υσκολία στην τήρηση αντιγράφων ασφαλείας

(backup)

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

9

17

Προσέγγιση Βάσεων ∆εδοµένωνΠροσέγγιση Βάσεων ∆εδοµένων

Χρήστης Εφαρµογή

Β∆

18

Πλεονεκτήµατα Β.∆.Πλεονεκτήµατα Β.∆.

• Ταυτόχρονη Προσπέλαση από πολλούς χρήστες– το Σ∆Β∆ περιλαµβάνει λογισµικό για έλεγχο ταυτόχρονης προσπέλασης (concurrency control)

– εξασφαλίζει σωστό αποτέλεσµα ενηµέρωσης• Έλεγχος Πλεονασµών

– οικονοµία χώρου και µόχθου– συµβατότητα µεταξύ δεδοµένων

• Περιορισµός µη εξουσιοδοτηµένης προσπέλασης– το Σ∆Β∆ περιλαµβάνει λογισµικό ασφάλειας και εξουσιοδότησης

(security & authorisation)– διαφορετικοί περιορισµοί προδιαγράφονται για διαφορετικούς χρήστες

• Παροχή µηχανισµών τήρησης εφεδρικών αντιγράφων και ανάκαµψης (backup)– αντιµετώπιση (ανάκαµψη) µετά από βλάβες υλικού ή λογισµικού

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

10

19

Χρήσιµα χαρακτηριστικά της προσέγγισης Β.∆.Χρήσιµα χαρακτηριστικά της προσέγγισης Β.∆.

• Αυτοπεριγραφή– ένα Σ∆Β δεν περιέχει µόνο την ίδια τη βάση, αλλά και τον πλήρη ορισµό της (κατάλογος συστήµατος)

– επιτρέπει το λογισµικό του Σ∆Β∆ να είναι ανεξάρτητο από συγκεκριµένη εφαρµογή

• Ανεξαρτησία Προγραµµάτων - ∆εδοµένων– Η δοµή των αρχείων δεδοµένων αποθηκεύεται ξεχωριστά από το λογισµικό προσπέλασης

– αλλαγή στη δοµή των αρχείων δεν επηρεάζει το λογισµικό του Σ∆Β∆• Υποστήριξη Πολλαπλών Όψεων των ∆εδοµένων

– διαφορετικοί χρήστες απαιτούν διαφορετική προοπτική (όψη) της Β.∆.

– µια όψη µπορεί να είναι ένα υποσύνολο της Β.∆. ή να περιέχει εικονικά (virtual) δεδοµένα που παράγονται από τα αρχεία αλλά δεν αποθηκεύονται

20

Εξωτερική όψη 1 Εξωτερική όψη n

Εννοιολογικό σχήµα

Εσωτερικό σχήµα

∆εδοµένα

Ανεξαρτησία ∆εδοµένωνΑνεξαρτησία ∆εδοµένων

Αλλαγή στο σχήµα ενός επιπέδου δεν επηρεάζει το σχήµα του αµέσως υψηλότερου επιπέδου

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

11

21

ΠαράδειγµαΠαράδειγµα

222002Χειµερινό8ΗΥ201∆ηµητρέλια

212001Εαρινό6.5ΗΥ201Παπαδόπυλος

112000Χειµερινό7.5ΗΥ101ΠαπαδόπουλοςΚωδικός_∆ιδΈτοςΕξάµηνοΒαθµόςΚωδικός_Μαθ

Αντίγραφο_ΦοιτητήΌνοµα_ΦοιτητήΒΑΘΜΟΛΟΓΙΑ

Όψη ΒΑΘΜΟΛΟΓΙΑ Φοιτητών

439Κατεύθυνση435Έτος431Αριθ_Μητρώου

301Όνοµαµήκος σε χαρακτήρες (bytes)θέση αρχής της εγγραφήςόνοµα στοιχειώδους δεδοµένου

Εννοιολογική Αναπαράσταση ΦΟΙΤΗΤΗ

Εσωτερική Αναπαράσταση ΦΟΙΤΗΤΗ

Εκπ Τεχνολογία32001/0005∆ηµητρέλια

Μουσειολογία32000/0001Παπαδόπουλος

ΚατεύθυνσηΈτοςΑριθ_ΜητρώουΌνοµαΦΟΙΤΗΤΗΣ

22

Εργαζόµενοι σ’ ένα περιβάλλον Β.∆.Εργαζόµενοι σ’ ένα περιβάλλον Β.∆.

• ∆ιαχειριστής Β.∆.– εξουσιοδοτεί προσπέλαση στη Β.∆.– υπεύθυνος για προβλήµατα ασφάλειας, απόδοσης του συστήµατος– διαχείριση πόρων

• Σχεδιαστές Β.∆.– υπεύθυνοι για τον προσδιορισµό δεδοµένων– αναπτύσσουν τις διαφορετικές όψεις της βάσης που καλύπτουν τις απαιτήσεις διαφορετικών χρηστών

• Τελικοί χρήστες– άτοµα που η εργασία τους απαιτεί προσπέλαση δεδοµένων

• Αναλυτές Συστηµάτων και Προγραµµατιστές– αναπτύσσουν προδιαγραφές και υλοποιούν προκαθορισµένες δοσοληψίες βάσει των απαιτήσεων των τελικών χρηστών

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

12

23

Συνέπειες Προσέγγισης Β.∆.Συνέπειες Προσέγγισης Β.∆.• Επιβολή τυποποίησης

– πρότυπα για τα ονόµατα και τη µορφή των δεδοµένων– καλύτερη συνεργασία

• Μείωση χρόνου ανάπτυξης εφαρµογών– απαιτείται γύρω στο ¼ - 1/6 του χρόνου που απαιτείται µε τη χρήση παραδοσιακών συστηµάτων αρχείων

• Ευελιξία– επιτρέπονται αλλαγές στη δοµή της Β.∆. χωρίς να επηρεάζονται τα αποθηκευµένα δεδοµένα ή υφιστάµενα προγράµµατα εφαρµογών

• ∆ιαθεσιµότητα ενηµερωµένων πληροφοριών– ταυτόχρονα σε όλους τους χρήστες

• Οικονοµία κλίµακας– ελαττώνεται το συνολικό κόστος λειτουργίας και διαχείρισης

(δυνατός κεντρικός εξοπλισµός αντί για επιµέρους ανεξάρτητο εξοπλισµό χαµηλότερης απόδοσης)

24

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

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

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

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

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