1.1 Σκοπός των συστημάτων βάσεων δεδομένων

30
1.1 Σκοπός των συστημάτων βάσεων δεδομένων Ο στόχος ενός ΣΔΒΔ (σύστημα διαχείρισης βάσεων δεδομένων) είναι να παράσχει ένα περιβάλλον που είναι και βολικό και αποδοτικό για την •• ανάκτηση των πληροφοριών από τη βάση δεδομένων. •• αποθήκευση των πληροφοριών στη βάση δεδομένων.

description

1.1 Σκοπός των συστημάτων βάσεων δεδομένων Ο στόχος ενός ΣΔΒΔ (σύστημα διαχείρισης βάσεων δεδομένων) είναι να παράσχει ένα περιβάλλον που είναι και βολικό και αποδοτικό για την •  ανάκτηση των πληροφοριών από τη βάση δεδομένων . • αποθήκευση των πληροφοριών στη βάση δεδομένων. - PowerPoint PPT Presentation

Transcript of 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

Page 1: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

1.1      Σκοπός των συστημάτων βάσεων δεδομένων

Ο στόχος ενός ΣΔΒΔ (σύστημα διαχείρισης βάσεων δεδομένων) είναι να παράσχει ένα περιβάλλον που είναι και βολικό και αποδοτικό για την

•• ανάκτηση των πληροφοριών από τη βάση δεδομένων. •• αποθήκευση των πληροφοριών στη βάση δεδομένων.

Page 2: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

• • πλεονασμός και ασυνέπεια δεδομένων

     • δυσκολία στην πρόσβαση των δεδομένων       θα πρέπει να γραφτεί ένα νέο πρόγραμμα εφαρμογής για να ικανοποιηθεί ένα ασυνήθιστο αίτημα.

      • απομόνωση δεδομένων       δεδομένα σε διαφορετικά αρχεία.       δεδομένα με διαφορετικά format.

     • πολλαπλοί χρήστες       χρειάζεται ταυτοχρονισμός για μικρότερο χρόνο απόκρισης.       χρειάζεται προστασία για τις ταυτόχρονες ενημερώσεις.

      • προβλήματα ασφάλειας       κάθε χρήστης του συστήματος πρέπει να είναι σε θέση να έχει πρόσβαση μόνο στα δεδομένα που

επιτρέπεται να δει.        πολύ δύσκολά να επιτευχθεί αυτός ο στόχος με ένα πρόγραμμα εφαρμογής.

• • προβλήματα ακεραιότητας       τα δεδομένα θα πρέπει να ικανοποιούν κάποιους περιορισμούς.       Π.χ. κανένα υπόλοιπο λογαριασμού κάτω από 1.000.

     

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

Page 3: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

Ο σημαντικότερος σκοπός ενός συστήματος βάσεων δεδομένων είναι να παράσχει στους χρήστες μια αφαιρετική άποψη του συστήματος. Το σύστημα κρύβει ορισμένες λεπτομέρειες για το πώς τα δεδομένα αποθηκεύονται και διατηρούνται Η πολυπλοκότητα πρέπει να κρυφτεί από τους χρήστες βάσεων δεδομένων. Γι' αυτό το σκοπό υπάρχουν διάφορα επίπεδα αφαίρεσης:

(α) φυσικό επίπεδο:      είναι το χαμηλότερο επίπεδο αφαίρεσης.      περιγράφει πώς αποθηκεύονται τα δεδομένα. Π.χ. δείκτες, β-δέντρα, αποκερματισμός.      εδώ περιγράφονται λεπτομερώς όλες οι σύνθετες δομές χαμηλού επιπέδου.

(β) εννοιολογικό επίπεδο:       το αμέσως υψηλότερο επίπεδο αφαίρεσης.       περιγράφει τι είδους δεδομένα αποθηκεύονται.       περιγράφει τις συσχετίσεις μεταξύ αυτών των δεδομένων.

(γ) Επίπεδο άποψης:       το πιο υψηλό επίπεδο.       περιγράφει τμήματα της βάσης δεδομένων για κάθε συγκεκριμένη ομάδα χρηστών.       μπορεί να είναι πολλές διαφορετικές απόψεις μιας βάσης δεδομένων.       Π.χ. οι ταμίες σε μια τράπεζα παίρνουν μια άποψη των απολογισμών πελατών, αλλά όχι των δεδομένων μισθοδοτικών καταστάσεων.

1.1      Αφαιρετική άποψη δεδομένων

Page 4: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων
Page 5: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

Ένα Μοντέλο δεδομένων επιτρέπει την απόκρυψη της φυσικής περιγραφής των δεδομένων. Ένα μοντέλο δεδομένων είναι ο φορμαλισμός που καθορίζει τον τρόπο περιγραφής των δεδομένων (τις δομές) σε ένα αφαιρετικό επίπεδο μαζί με ένα σύνολο από περιορισμούς και πράξεις για το χειρισμό αυτών των δομών.Για employees που θα είναι μία ακολουθία εγγραφών του τύπου:record name: char[30]; manager: char[30]endΈνα αφαιρετικό μοντέλο είναι μία σχέση του σχεσιακού μοντέλου:employees(name, manager)

Άρα τα μοντέλα δεδομένων είναι μια συλλογή από εργαλεία για την περιγραφή δομών δεδομένων, συσχετίσεων δεδομένων, τη σημασιολογία (semantics) δεδομένων και τους περιορισμούς δεδομένων. Υπάρχουν τρεις διαφορετικές ομάδες που αντιστοιχούν στις τρεις φάσεις σχεδιασμού: •1.       εννοιολογικά μοντέλα βασισμένα σε αντικείμενα. •2.       λογικά μοντέλα βασισμένα σε εγγραφές. •3.       φυσικά μοντέλα δεδομένων.     εννοιολογικό μοντέλο

εννοιολογικός σχεδιασμόςεννοιολογικό σχήμα βάσης

λογικό μοντέλολογικός σχεδιασμόςλογικό σχήμα βάσης

φυσικό μοντέλοφυσικός σχεδιασμόςφυσικό σχήμα βάσης

 

1.1      Μοντέλα δεδομένων

Page 6: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

Τα μοντέλα αυτά περιγράφουν τα δεδομένα στο εννοιολογικό επίπεδο και στα επίπεδα όψεων. Παρέχουν επίσης αρκετά εύκαμπτες δυνατότητες δόμησης και επιτρέπουν ρητά τον καθορισμό περιορισμών στα δεδομένα. Υπάρχουν πάνω από 30 τέτοια μοντέλα όπως τα:•—       Μοντέλο οντοτήτων-συσχετίσεων (Entity-relationship model ). •—       Εκτεταμένο μοντέλο οντοτήτων-συσχετίσεων (EER model ).•—       αντικειμενοστρεφές μοντέλο (Object-oriented model).•—       δυαδικό μοντέλο (Binary model).•—       σημασιολογικό μοντέλο δεδομένων (Semantic data model).•—       μοντέλο Infological (Infological model).•—       συναρτησιακό μοντέλο δεδομένων (Functional data model).Σε αυτό το σημείο, θα ρίξουμε μια πιο στενή ματιά στο μοντέλο οντοτήτων-συσχετίσεων (ER) και το αντικειμενοστρεφές μοντέλο.

1.1.1    Εννοιολογικά Μοντέλα βασισμένα σε αντικείμενα

Page 7: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

Το μοντέλο οντοτήτων-συσχετίσεων είναι βασισμένο στην αντίληψη ότι ο κάθε μικρόκοσμος που θα παρασταθεί με τη βάση δεδομένων αποτελείται από μια συλλογή από βασικά αντικείμενα τις οντότητες και συσχετίσεις μεταξύ αυτών των αντικειμένων. •            μια οντότητα είναι ένα διακριτό αντικείμενο.

•            κάθε οντότητα περιγράφεται από ένα σύνολο από ιδιότητες (γνωρίσματα)•            μια συσχέτιση είναι μία σύνδεση μεταξύ διάφορων οντοτήτων.

•  Το σύνολο των οντοτήτων ίδιου τύπου καλείται τύπος οντότητας και το σύνολο των συσχετίσεων ίδιου τύπου καλείται τύπος συσχέτισης.

•  ένα άλλο απαραίτητο στοιχείο του διαγράμματος του ER είναι οι απεικονίσεις του πλήθους των οντοτήτων οι οποίες συμμετέχουν σε κάθε συσχέτιση.

Το μοντέλο οντοτήτων-συσχετίσεων (Entity-relationship model )

Page 8: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

Η εννοιολογική δομή μιας βάσης δεδομένων μπορεί να εκφραστεί γραφικά από ένα διάγραμμα οντοτήτων-συσχετίσεων :    ορθογώνια: αντιπροσωπεύουν τους τύπους οντοτήτων.    ελλείψεις: αντιπροσωπεύουν τις ιδιότητες.   ρόμβοι: αντιπροσωπεύουν τους τύπους συσχετίσεων μεταξύ των τύπων οντοτήτων.    γραμμές: συνδέουν τους τύπους οντοτήτων με τα γνωρίσματά τους και με τους τύπους συσχετίσεών τους.

Το μοντέλο οντοτήτων-συσχετίσεων (Entity-relationship model )

Page 9: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

Το αντικειμενοστρεφές μοντέλο είναι βασισμένο σε μια συλλογή αντικειμένων, όπως και το μοντέλο οντοτήτων-συσχετίσεων. •    τιμές που αποθηκεύονται στις μεταβλητές στιγμιότυπων μέσα στο αντικείμενο. •    αντίθετα από τα μοντέλα βασισμένα σε εγγραφές, τιμές είναι επίσης αντικείμενα. •    τα αντικείμενα περιέχουν αντικείμενα σε ένα αυθαίρετα βαθύ επίπεδο εμφωλίασης. • ένα αντικείμενο περιέχει επίσης τμήματα κώδικα που ενεργούν στο ίδιο το αντικείμενο. •   αυτά τα τμήματα κώδικα καλούνται μέθοδοι. • τα αντικείμενα που περιέχουν ίδιους τύπους τιμών και ίδιες μεθόδους ομαδοποιούνται σε κλάσεις. •   μια κλάση μπορεί να αντιμετωπισθεί ως καθορισμός τύπου του αντικειμένου. • αναλογία: η έννοια ενός αφηρημένου τύπου δεδομένων στις γλώσσες προγραμματισμού. • ο μόνος τρόπος ένα αντικείμενο μπορεί να έχει πρόσβαση στα δεδομένα ενός άλλου αντικειμένου είναι με επίκληση της μεθόδου του άλλου αντικειμένου. •   γίνεται στέλνοντας ένα μήνυμα στο άλλο αντικείμενο. •   τα εσωτερικά μέρη του αντικειμένου, οι μεταβλητές στιγμιότυπων και ο κώδικας της μεθόδου, δεν είναι ορατά εξωτερικά. •   το αποτέλεσμα είναι δύο επίπεδα αφαίρεσης δεδομένων.

Το αντικειμενοστρεφές μοντέλο

Page 10: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

Παραδείγματος χάριν, θεωρήστε ένα αντικείμενο που αντιπροσωπεύει έναν τραπεζικό λογαριασμό. • το αντικείμενο περιέχει ως μεταβλητές στιγμιότυπων τον αριθμό-λογαριασμού και το υπόλοιπο. •  το αντικείμενο περιέχει μία μέθοδο καταβολή-τόκων που προσθέτει τους τόκους στο υπόλοιπο. •  κάτω από τα περισσότερα μοντέλα δεδομένων, μία αλλαγή στο επιτόκιο συνεπάγεται αλλαγή του κώδικα στα προγράμματα εφαρμογών. • στο αντικειμενοστρεφές μοντέλο, αυτό συνεπάγεται μόνο μια αλλαγή μέσα στη μέθοδο καταβολή-τόκων. Αντίθετα από τις οντότητες στο μοντέλο οντοτήτων-συσχετίσεων, κάθε αντικείμενο έχει τη μοναδική ταυτότητά του, ανεξάρτητη από τις τιμές που περιέχει:       δύο αντικείμενα που περιέχουν τις ίδιες τιμές είναι ευδιάκριτα.       η διάκριση διατηρείται στο φυσικό επίπεδο με την ανάθεση μοναδικών προσδιοριστικών για κάθε αντικείμενο.

Το αντικειμενοστρεφές μοντέλο

Page 11: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

Τα λογικά μοντέλα βασισμένα σε εγγραφές χρησιμοποιούνται για να περιγράψουν τα δεδομένα στο εννοιολογικό επίπεδο και τα επίπεδα άποψης.

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

1.1.1    Λογικά μοντέλα βασισμένα σε εγγραφές

Page 12: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

Στο σχεσιακό μοντέλο τα δεδομένα και οι συσχετίσεις αντιπροσωπεύονται από μια συλλογή από κανονικοποιημένους πίνακες (σχέσεις). Κάθε κανονικοποιημένος πίνακας π.χ. ο πίνακας με όνομα πελάτης, ή ο πίνακας με όνομα λογαριασμός έχει διάφορες στήλες με μοναδικά ονόματα.

Το σχεσιακό μοντέλο (Relational Model)

Page 13: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων
Page 14: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

Τα φυσικά μοντέλα δεδομένων χρησιμοποιούνται για να περιγράψουν τα δεδομένα στο χαμηλότερο επίπεδο. Υπάρχουν πολύ λίγα τέτοια μοντέλα όπως τα:

•            Unifying model•            Frame memory.

1.1.1    Φυσικά μοντέλα δεδομένων

Page 15: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

 

Τα μετα-δεδομένα δηλαδή δηλ. "δεδομένα για τα δεδομένα" είναι ειδικές πληροφορίες για τα δεδομένα που υπάρχουν στη βάση.1. πώς και που αποθηκεύονται τα δεδομένα o        δομές αρχείων o        εγγραφές o        ονόματα των αρχείων, τύποι δεδομένων o        μορφή (format) των τύπων δεδομένων 2. Πληροφορίες σχετικά με την αντιστοιχία μεταξύ των διαφορετικών σχημάτων Τα μετα-δεδομένα αποθηκεύονται, στον αποκαλούμενο, κατάλογο συστήματος ή λεξικό δεδομένων.Οι κατάλογοι σε ένα σχεσιακό σύστημα αποθηκεύονται και οι ίδιοι σαν σχέσεις

1.4      Μετα-δεδομένα

Page 16: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

Οι βάσεις δεδομένων αλλάζουν με το πέρασμα του χρόνου. Για να μπορούμε να ξεχωρίζουμε τα δεδομένα της βάσης και την περιγραφή της βάσης χρησιμοποιούμε τους όρους στιγμιότυπα βάσης δεδομένων (database instance) και σχήμα βάσης δεδομένων (database schema) αντίστοιχαo Η γενική δομή της βάσης καλείται σχήμα και ορίζεται κατά τη δημιουργία της. o   Ένα σχήμα βάσης δεδομένων δεν αλλάζει συχνά.o  Οι πληροφορίες σε μια βάση δεδομένων σε ένα συγκεκριμένο χρονικό σημείο καλούνται στιγμιότυπα (instance) της βάσης δεδομένων. o Κάθε αλλαγή των δεδομένων δημιουργεί καινούργια στιγμιότυπα της βάσης δεδομένων.Η αναλογία των στιγμιότυπων και του σχήματος με τις έννοιες των γλωσσών προγραμματισμού είναιΟρισμοί τύπων δεδομένων σχήμαΤιμή μιας μεταβλητής στιγμιότυπο

1.5  Στιγμιότυπα και Σχήματα (Instances and Schemes)

Page 17: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

Η ανεξαρτησία δεδομένων μειώνει τη σύνδεση μεταξύ:       της πραγματικής οργάνωσης των δεδομένων και   το πώς οι χρήστες και τα προγράμματα εφαρμογών επεξεργάζονται τα δεδομένα (ή "βλέπουν" τα δεδομένα.) Γιατί;       Τα δεδομένα πρέπει να είναι σε θέση να αλλάξουν χωρίς απαίτηση μιας αντίστοιχης αλλαγής των προγραμμάτων εφαρμογών.       Διαφορετικές εφαρμογές και διαφορετικοί χρήστες χρειάζονται διαφορετικές "απόψεις" των ίδιων δεδομένων.

1.6    Ανεξαρτησία και Εξάρτηση δεδομένων

Page 18: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

Ακόμη και μια μικρή αλλαγή της δομής δεδομένων, π.χ. η δημιουργία ή η αλλαγή ενός πεδίου σε μια δομή εγγραφών, συνήθως απαιτεί και επιπλέον αλλαγές σε πολλά προγράμματα ή ρουτίνες. Τα προγράμματα είναι εξαρτώμενα από το ότι:       τα δεδομένα βρίσκονται σε ένα συγκεκριμένο μέσο αποθήκευσης.       τα δεδομένα έχουν ένα συγκεκριμένο format αποθήκευσης (δυαδικό, συμπιεσμένο)       τα πεδία έχουν κωδικοποιηθεί σύμφωνα με ορισμένους κανόνες (άνδρας = 1, γυναίκα = 2) τα αρχεία εγγραφών ταξινομούνται κατά συγκεκριμένο τρόπο κ.λπ.... ..

1.6    Ανεξαρτησία και Εξάρτηση δεδομένων

Page 19: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

Με την εισαγωγή μιας πολλαπλού-επιπέδου αρχιτεκτονικής όπου κάθε επίπεδο αντιπροσωπεύει ένα επίπεδο αφαίρεσης. Αρχιτεκτονική τριών-σχημάτων: – Το 1978 πρωτοπαρουσιάστηκε η ακόλουθη "τυποποιημένη" αρχιτεκτονική (αρχιτεκτονική ANSI/SPARC) για τις βάσεις δεδομένων. Αποτελείται από 3 επίπεδα: 1. Εσωτερικό επίπεδο 2. Εννοιολογικό επίπεδο 3. Εξωτερικό επίπεδο – Κάθε επίπεδο εισάγει ένα στρώμα αφαίρεσης και έχει ένα σχήμα που περιγράφει πώς οι αναπαραστάσεις των δομών δεδομένων πρέπει να αντιστοιχηθούν στο επόμενο χαμηλότερο επίπεδο αφαίρεσης.

Ανεξαρτησία δεδομένων - πώς;

Page 20: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

• Περιγράφει τις δομές αποθήκευσης και τα μονοπάτια πρόσβασης προς τη φυσική βάση δεδομένων.

– Επίπεδο αφαίρεσης: αρχεία, αρχεία δεικτών κ.λπ.

• Καθορίζεται συνήθως μέσω της γλώσσας ορισμού δεδομένων (DDL) του ΣΔΒΔ (συστήματος διαχείρισης βάσεων δεδομένων)

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

Page 21: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

• Μια αφηρημένη περιγραφή της φυσικής βάσης δεδομένων.

• Αποτελεί ένα κοινό, για όλους τους χρήστες, βασικό μοντέλο της λογικής περιγραφής της βάσης δεδομένων.

• Αυτό το επίπεδο αφαίρεσης αντιστοιχεί "στον πραγματικό κόσμο": π.χ. αντικείμενα, χαρακτηριστικά αντικειμένων, συσχετίσεις μεταξύ των αντικειμένων κ.λπ.

• Το σχήμα δημιουργείται με τη γλώσσα ορισμού δεδομένων σύμφωνα με ένα συγκεκριμένο μοντέλο δεδομένων.

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

Page 22: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

• Μία τυπική βάση δεδομένων έχει διάφορους χρήστες με ποικίλες ανάγκες, απαιτήσεις, προνόμια πρόσβασης κ.λπ.

• Τα εξωτερικά σχήματα περιγράφουν τις διαφορετικές απόψεις της εννοιολογικής βάσης δεδομένων σε σχέση με αυτά τα δεδομένα που οι διαφορετικές ομάδες χρηστών θα ήθελαν ή έχουν την άδεια να δουν.

• Μερικά ΣΔΒΔ έχουν δικιά τους γλώσσα για τους ορισμούς των απόψεων (αλλιώς χρησιμοποιείται η γλώσσα DDL).

Εξωτερικά σχήματα, ή απόψεις

Page 23: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

• υποθέστε ότι έχουμε έναν πίνακα υπαλλήλων:employees(name, dept, salary, address)

• και θέλουμε να δώσουμε δικαιώματα σε μία ομάδα χρηστών να βλέπουν όλες τις πληροφορίες του πίνακα εκτός από αυτές του πεδίου SALARY • Αυτό πραγματοποιείται με τον καθορισμό μιας άποψης με όνομα safe-emp:

create view safe-emp asselect name, dept, addressfrom employees;

Απόψεις (Views) -

Page 24: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

παραδείγματα εντολών SQL στα τρία επίπεδα

Εξωτερικό επίπεδο

CREATE VIEWATHENS_SUPPLIERSAS SELECT S_No, S_Name, S_City FROM SUPPLIERSWHERE S_City="ATHENS"

CREATE VIEWALL_SUPPLIERSAS SELECT * FROM SUPPLIERS

Εννοιολογικό επίπεδο

CREATE TABLE SUPPLIERS ( S_No NUMBER(4) NOT NULL, S_Name CHAR(25), S_City CHAR(20) );

Εσωτερικό επίπεδο

CREATE INDEX Supplier_Name ON SUPPLIERS(S_Name);CREATE UNIQUE INDEX Supplier_No ON SUPPLIERS(S_No);

Page 25: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

Η δυνατότητα να τροποποιηθεί ένα σχήμα της βάσης σε ένα επίπεδο χωρίς επιρροή ενός σχήματος σε ένα πιο υψηλό επίπεδο καλείται ανεξαρτησία δεδομένων. • λογική ανεξαρτησία δεδομένων       η δυνατότητα να τροποποιηθεί το εννοιολογικό σχήμα (π.χ. προσθήκη ή αλλαγή ενός πεδίου) χωρίς να αναγκάσει τα προγράμματα εφαρμογών να ξαναγραφούν       οι τροποποιήσεις σε αυτό το επίπεδο γίνονται συνήθως όταν αλλάζει η λογική δομή της βάσης δεδομένων.• φυσική ανεξαρτησία δεδομένων       η δυνατότητα να τροποποιηθεί το φυσικό σχήμα (η φυσική οργάνωση της βάσης π.χ. με προσθήκη ενός μονοπατιού προσπέλασης -access path- που συνήθως ορίζεται σε ένα πεδίο του αρχείου που λέγεται πεδίο ευρετηριοποίησης -indexing field-) χωρίς να αναγκάσει τα προγράμματα εφαρμογών να ξαναγραφούν τροποποιήσεις γίνονται συνήθως για να βελτιωθεί η απόδοση. Η λογική ανεξαρτησία δεδομένων είναι πιο δύσκολο να επιτύχει

1.1      Ανεξαρτησία Δεδομένων στην αρχιτεκτονική τριων σχημάτων

Page 26: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

 Ένα ευρετήριο (index) είναι μια βοηθητική δομή αρχείου που κάνει πιο αποδοτική την αναζήτηση μιας εγγραφής σε ένα αρχείο  Το ευρετήριο καθορίζεται σε ένα γνώρισμα του αρχείου Συχνά αποκαλείται access path (μονοπάτι πρόσβασης) στο γνώρισμα  Μια καταχώρηση / εγγραφή στο ευρετήριο έχει την μορφή:

Τιμή Πεδίου Ευρετηριοποίσης

Δείκτης στο block της εγγραφής

Το αρχείο ευρετηρίου καταλαμβάνει μικρότερο χώρο από το ίδιο το αρχείο δεδομένων (οι καταχωρήσεις είναι μικρότερες και λιγότερες)Κάνοντας δυαδική αναζήτηση στο ευρετήριο βρίσκουμε τον δείκτη στο block όπου αποθηκεύεται η εγγραφή που θέλουμε 

    Ευρετήρια

Page 27: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

SQL που χρησιμοποιούνται για τον ορισμό, την επικοινωνία και το χειρισμό της βάσης δεδομένων.Στις συμβατικές γλώσσες προγραμματισμού οι δηλώσεις και οι προτάσεις ενός προγράμματος υλοποιούνται σε μία και μόνη γλώσσα κάθε φορά.Από την άλλη μεριά ένα σύστημα βάσης δεδομένων χρησιμοποιεί πολλές διαφορετικές γλώσσες:– Γλώσσα ορισμού αποθήκευσης -Storage Definition Language (SDL)– Γλώσσα ορισμού δεδομένων -Data Definition Language (DDL)– Γλώσσα ορισμού απόψεων -View Definition Language (VDL)– Γλώσσα χειρισμού δεδομένων -Data Manipulation Language (DML)

1.1      Γλώσσες Βάσεων δεδομένων (Database languages)

Page 28: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

Query processor– DML compiler– Embedded DML precompiler– DDL interpreter– Query processing unit• Storage manager– Authorization and integrity control– Transactions management– File management– Buffer management• Physical storage– data files, meta-data (data dictionary), index, statistics

     Τα συστατικά μέρη ενός συστήματος διαχείρισης βάσης δεδομένων (DBMS)

Page 29: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

ΕΝΝΟΙΕΣ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ

Σύστημα Βάσης δεδομένων- Η Δομή ενός ΣΔΒΔ

ΒΑΣΗ

ΔΕΔΟΜΕΝΩΝ

ΣΔΒΔ

File and Access Methods

Disk Space Manager

Buffer Manager

Transaction ManagerLock Manager

Recovery

Manager

Μηχανή Εκτέλεσης Ερωτήσεων

Page 30: 1.1 Σκοπός των συστημάτων βάσεων δεδομένων

ΕΝΝΟΙΕΣ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ

naive application sophisticated database users programmers users administrator

Application interfaces

application

program

query

database

scheme

Applicationprogramsobject code

EmbeddedDMLprecompiler

DMLcompiler

DDLinterpreter

QueryEvaluation engine

Transactionmanager

Buffermanager

File manager

Qu

ery

pro

cessor

sto

rag

em

an

ag

er

users