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

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

Επισκόπηση Μαθήµατος

Ενότητα. Εισαγωγή στις βάσεις δεδομένων

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

Database System Concepts and Architecture (Αρχιτεκτονική, οµές, και Μοντέλα)

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

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

Αυτοματοποιημένη χαρτογραφία

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

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

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

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

Βάσεις Περιβαλλοντικών Δεδομένων

1 η Διάλεξη. Ενδεικτικές λύσεις ασκήσεων

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Θερμοδυναμική. Ανοικτά Ακαδημαϊκά Μαθήματα. Πίνακες Νερού σε κατάσταση Κορεσμού. Γεώργιος Κ. Χατζηκωνσταντής Επίκουρος Καθηγητής

Βάσεις Περιβαλλοντικών Δεδομένων

Εισαγωγή στους Αλγορίθμους

Διαχείριση Πολιτισμικών Δεδομένων

Βάσεις Περιβαλλοντικών Δεδομένων

Ενδεικτικές λύσεις ασκήσεων διαχείρισης έργου υπό συνθήκες αβεβαιότητας

Διοικητική Λογιστική

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Συστήματα Διαχείρισης Βάσεων Δεδομένων

Λογιστική Κόστους Ενότητα 12: Λογισμός Κόστους (2)

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

Εισαγωγή στους Αλγορίθμους

Εισαγωγή στους Αλγορίθμους

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

Μηχανολογικό Σχέδιο Ι

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

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

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Λογιστική Κόστους Ενότητα 8: Κοστολογική διάρθρωση Κύρια / Βοηθητικά Κέντρα Κόστους.

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

Τίτλος Μαθήματος: Μαθηματική Ανάλυση Ενότητα Γ. Ολοκληρωτικός Λογισμός

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

Ενδεικτικές λύσεις ασκήσεων διαγραμμάτων περίπτωσης χρήσης (1ο Μέρος)

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 3: Έλεγχοι στατιστικών υποθέσεων

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 1: Καταχώρηση δεδομένων

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

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 2: Περιγραφική στατιστική

Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη

Εισαγωγή στην Επιστήμη των Υπολογιστών

Βάσεις Δεδομένων. Ενότητα 1: Εισαγωγή στις Βάσεις δεδομένων. Πασχαλίδης Δημοσθένης Τμήμα Ιερατικών σπουδών

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

Βέλτιστος Έλεγχος Συστημάτων

Διδακτική των εικαστικών τεχνών Ενότητα 3

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Κβαντική Επεξεργασία Πληροφορίας

Οντοκεντρικός Προγραμματισμός

Δομές Δεδομένων Ενότητα 1

Διοίκηση Εξωτερικής Εμπορικής Δραστηριότητας

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

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

Ψηφιακή Επεξεργασία Εικόνων

Παιδαγωγική ή Εκπαίδευση ΙΙ

Θερμοδυναμική. Ανοικτά Ακαδημαϊκά Μαθήματα. Πίνακες Νερού Υπέρθερμου Ατμού. Γεώργιος Κ. Χατζηκωνσταντής Επίκουρος Καθηγητής

Μεθοδολογία Έρευνας Κοινωνικών Επιστημών Ενότητα 2: ΣΥΓΚΕΝΤΡΩΣΗ ΠΛΗΡΟΦΟΡΙΩΝ ΜΑΡΚΕΤΙΝΓΚ Λοίζου Ευστράτιος Τμήμα Τεχνολόγων Γεωπόνων-Kατεύθυνση

Μάρκετινγκ Αγροτικών Προϊόντων

Προγραμματισμός Η/Υ. 7 η ενότητα: Αρχεία. Τμήμα. Τεχνολόγων Περιβάλλοντος. ΤΕΙ Ιονίων Νήσων. Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων

Παιδαγωγική ή Εκπαίδευση ΙΙ

Μάρκετινγκ Επιχειρήσεων Λιανικής Πώλησης Ενότητα 9: Εξυπηρέτηση Πελατών στο Λιανικό Εμπόριο

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

Διαφήμιση και Δημόσιες Σχέσεις Ενότητα 9: Σχέσεις διαφημιστή-διαφημιζόμενου

Οντοκεντρικός Προγραμματισμός

Βάσεις Δεδομένων. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

Ασφάλεια Πληροφοριακών Συστημάτων

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

Αρχιτεκτονική Συστημάτων Βάσεων Δεδομένων. Κατηγορίες χρηστών ΣΔΒΔ Αρχιτεκτονική ANSI/SPARC Γλώσσες ερωτημάτων Μοντέλα δεδομένων Λειτουργίες ΣΔΒΔ

Βάσεις Δεδομένων. Ενότητα 5: ΚΑΝΟΝΙΚΟΠΟΙΗΣΗ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ. Πασχαλίδης Δημοσθένης Τμήμα Ιερατικών σπουδών

Εισαγωγή στους Η/Υ. Ενότητα 2β: Αντίστροφο Πρόβλημα. Δημήτρης Σαραβάνος, Καθηγητής Πολυτεχνική Σχολή Τμήμα Μηχανολόγων & Αεροναυπηγών Μηχανικών

Εισαγωγή στην Διοίκηση Επιχειρήσεων

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

Πληροφοριακά Συστήματα Διοίκησης Ενότητα 6: Διαγράμματα Κλάσης (2ο Μέρος)

Διδακτική της Χημείας

Διαχείριση Πολιτισμικών Δεδομένων

Εισαγωγή στους Αλγορίθμους Ενότητα 10η Άσκηση Αλγόριθμος Dijkstra

Διδακτική των εικαστικών τεχνών Ενότητα 2

Προγραμματισμός H/Y Ενότητα 3: Πίνακες αριθμών και χαρακτήρων. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Διδακτική των εικαστικών τεχνών Ενότητα 2

Διδακτική των εικαστικών τεχνών Ενότητα 2

Διδακτική των εικαστικών τεχνών Ενότητα 2

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

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Διοικητική Λογιστική

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

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Τεχνικό Σχέδιο - CAD

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Οργάνωση και Διοίκηση Πωλήσεων Ενότητα 6 η : Διοίκηση μεγάλων λογαριασμών

Φυσική ΙΙΙ. Ενότητα 4: Ηλεκτρικά Κυκλώματα. Γεώργιος Βούλγαρης Σχολή Θετικών Επιστημών Τμήμα Φυσικής

ΗΛΕΚΤΡΟΝΙΚΗ ΙIΙ Ενότητα 6

Ενδεικτικές λύσεις ασκήσεων

Εισαγωγή στους Αλγορίθμους Ενότητα 9η Άσκηση - Αλγόριθμος Kruskal

Transcript:

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Αρχεία και Βάσεις Δεδομένων Διάλεξη 1η: Εισαγωγή στα Συστήματα Διαχείρισης Βάσεων Δεδομένων Τμήμα Επιστήμης Υπολογιστών

ΗΥ 360 Αρχεία και Βάσεις Δεδομένων Καθηγητής Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης 2

Επισκόπηση Μαθήματος Προαπαιτούμενες Γνώσεις: HY 240 (Δομές Δεδομένων), ΗΥ 118 (Διακριτά Μαθηματικά) Συνιστώμενο: ΗΥ 180 (Λογική) Βιβλιογραφία: Silberschatz, Korth & Sudarshan, «Συστήματα Βάσεων Δεδομένων». Βιβλία για συμπληρωματική μελέτη: C. Date, «Εισαγωγή στα Συστήματα Βάσεων Δεδομένων» Elmasri & Navathe, «Θεμελιώδεις Αρχές Συστημάτων Βάσεων Δεδομένων». 3

Επισκόπηση Μαθήματος Γενική Περιγραφή Μαθήματος: Εισαγωγή στα Συστήματα Διαχείρισης Βάσεων Δεδομένων Θέματα: Μοντέλο Οντοτήτων Σχέσεων (Entity-Relationship Model) Σχεσιακό Μοντέλο (Relational Model) Γλώσσες Επερωτήσεων, SQL (Query Languages) Περιορισμοί Ακεραιότητας (Integrity Constraints) Σχεδίαση Βάσεων Δεδομένων (Database Design) Δομές Αρχείων και Αποθήκευση (File Structures and Storage) Ευρετηριασμός (Indexing) 4

Επισκόπηση Μαθήματος Θέματα: Επεξεργασία Επερωτήσεων (Query Processing) Δοσοληψίες (Transactions) Ελεγχος Ταυτόχρονης Προσπέλασης (Concurrency Control) Ανάκτηση (Recovery) Αρχιτεκτονικές Συστημάτων Διαχείρισης Βάσεων Δεδομένων (Database Systems Architecture) Οντοκεντρικές Βάσεις Δεδομένων (Object-Oriented Databases) 5

Εισαγωγή στα Συστήματα Διαχείρισης Βάσεων Δεδομένων Eνα Σύστημα Διαχείρισης Βάσεων Δεδομένων (ΣΔΒΔ) (Database Management System - DBMS) αποτελείται από μία συλλογή σχετιζόμεων δεδομένων και ένα σύνολο προγραμμάτων για την προσπέλαση σε αυτά τα δεδομένα. Η συλλογή των δεδομένων ονομάζεται βάση δεδομένων (ΒΔ) (database). Ο κύριος σκοπός ενός ΣΔΒΔ είναι να παρέχει ένα περιβάλλον για την εύκολη και αποδοτική αποθήκευση, διαχείριση και ανάκληση μεγάλου όγκου πληροφορίας μια αφηρημένη όψη δεδομένων αποκρύπτοντας λεπτομέρειες της αναπαράστασης και της αποθήκευσής τους στο σύστημα 6

Εισαγωγή στα Συστήματα Διαχείρισης Βάσεων Δεδομένων Η διαχείριση των δεδομένων περιλαμβάνει: τον ορισμό δομών για την αποθήκευση πληροφορίας μηχανισμούς για τον χειρισμό της πληροφορίας και την ενημέρωσή της μηχανισμούς για την ασφάλεια πληροφορίας που είναι προσβάσιμη από πολλούς χρήστες 7

Εισαγωγή στα Συστήματα Διαχείρισης Βάσεων Δεδομένων Παράδειγμα: ένα τραπεζικό σύστημα αποθηκεύει πληροφορία σχετικά με τους πελάτες της τράπεζας και τους λογαριασμούς τους. Η πληροφορία αποθηκεύεται σε αρχεία του συστήματος τα οποία διαχειρίζονται προγράμματα για: χρέωση ή πίστωση λογαριασμού προσθήκη νέου λογαριασμού εύρεση υπολοίπου μηνιαίες / ετήσιες καταστάσεις κίνησης κλπ Καινούργια αρχεία και προγράμματα εφαρμογών προστίθενται ανάλογα με τις ανάγκες 8

Εισαγωγή στα Συστήματα Διαχείρισης Βάσεων Δεδομένων Η υλοποίηση ενός τέτοιου συστήματος μπορεί να βασιστεί σε ένα «τυπικό» σύστημα διαχείρισης και επεξεργασίας αρχείων (file processing system), πάσχει όμως από διάφορα μειονεκτήματα: Πλεονασμός καi Ασυνέπεια δεδομένων (data redundancy and inconsistency) η ίδια πληροφορία πιθανόν να επαναλαμβάνεται σε διαφορετικά αρχεία με αποτέλεσμα να υπάρχει μεγαλύτερο κόστος αποθήκευσης και ανάκλησης Επιπλέον, ενημέρωση ενός αρχείου πρέπει να συνοδεύεται από την ενημέρωση όλων των αρχείων στα οποία η πληροφορία επαναλαμβάνεται. 9

Εισαγωγή στα Συστήματα Διαχείρισης Βάσεων Δεδομένων Δυσκολία στην πρόσβαση στα δεδομένα τα συστήματα διαχείρισης αρχείων δεν παρέχουν αποδοτικούς μηχανισμούς για αναζήτηση και ανάκληση πληροφορίας με διαφορετικούς τρόπους. Επιπλέον, τα δεδομένα διασκορπίζονται σε αρχεία που χρησιμοποιούν διαφορετικές μορφές. Προβλήματα ακεραιότητας δεδομένων (data integrity) τα δεδομένα υπόκεινται σε περιορισμούς συνέπειας ή ακεραιότητας (consistency or integrity constraints). Οι περιορισμοί αυτοί εφαρμόζονται μέσω των προγραμμάτων εφαρμογών τα οποία πρέπει να αλλαχθούν για την προσθήκη νέων ή τη μεταβολή περιορισμών. 10

Εισαγωγή στα Συστήματα Διαχείρισης Βάσεων Δεδομένων Προβλήματα ατομικότητας δοσοληψιών (transaction atomicity) το σύστημα πρέπει να εγγυάται ότι σε περίπτωση σφάλματος η πληροφορία πρέπει να μπορεί να αποκατασταθεί. Π.χ. μεταφορά ενός ποσού Χ από λογαριασμό Α σε λογαριασμο Β. Αν συμβεί καποιο σφάλμα κατά τη διάρκεια της μεταφοράς, ο λογαριασμός Α μπορεί να χρεωθεί χωρίς να πιστωθεί ο λογαριασμός Β. Οι δοσοληψίες πρέπει να χαρακτηρίζονται από ατομικότητα, δηλαδή, ή όλη η δοσοληψία ολοκληρώνεται ή κανένα μέρος αυτής. 11

Εισαγωγή στα Συστήματα Διαχείρισης Βάσεων Δεδομένων Ανωμαλίες ταυτόχρονης πρόσβασης (concurrent access) Η ταυτόχρονη πρόσβαση και ενημέρωση της πληροφορίας από πολλούς χρήστες μπορεί να δημιουργήσει προβλήματα συνέπειας. Π.χ. έστω ότι ο λογαριασμός Α έχει υπόλοιπο Χ. Αν δύο χρήστες αφαιρέσουν ποσά Δ1 και Δ2 "ταυτόχρονα" από τον Α, το αποτέλεσμα μπορεί να μην είναι ορθό. Προβλήματα ασφάλειας (security) διαφορετικοί χρήστες θα πρέπει να έχουν διαφορετικά δικαιώματα πρόσβασης σε αρχεία ή σε συγκεκριμένα δεδομένα. 12

Όψεις Δεδομένων Ένας από τους κύριους στόχους ενός ΣΔΒΔ είναι να παρέχει μια αφηρημένη όψη των δεδομένων αποκρύπτοντας λεπτομέρειες της αναπαράστασης και της αποθήκευσής τους στο σύστημα. Ένα ΣΔΒΔ είναι ένα πρόγραμμα για τη διαχείριση ηλεκτρονικών αρχείων επιχειρησιακών δεδομένων με δομημένο τρόπο. Για παράδειγμα, ΣΔΒΔ ενός πανεπιστημίου διαχειρίζεται αρχεία για τους φοιτητές, τις εγγραφές τους σε μαθήματα, βαθμολογία, κ.λ.π. Εμπορικές επιχειρήσεις χρησιμοποιούν ΣΔΒΔ για την αποθήκευση στοιχείων σχετικά με πωλήσεις, αγορές, τιμολόγηση, αποθήκη κ.λ.π. 13

Όψεις Δεδομένων Αεροπορικές εταιρίες χρησιμοποιούν ΣΔΒΔ για την αποθήκευση στοιχείων σχετικά με πτήσεις, δρομολόγια, διαθεσιμότητα θέσεων, κρατήσεις, προσωπικό, κ.λ.π Ένα ΣΔΒΔ μιας βιβλιοθήκης καταγράφει τα διαθέσιμα βιβλία, τα άτομα που τα δανείζονται, και παρέχει θεματική κατηγοριοποίηση. Η συλλογή των αρχείων και εγγραφών που κρατούνται για ένα συγκεκριμένο σκοπό ονομάζεται βάση δεδομένων (database) Κατά κανόνα, οι βάσεις δεδομένων αποθηκεύονται σε δευτερεύουσα μνήμη. Ένα ΣΔΒΔ μπορεί να διαχειρίζεται περισσότερες από μία βάσεις δεδομένων. 14

Όψεις Δεδομένων Οι βάσεις δεδομένων μπορούν να μοιράζονται πληροφορία. Η πρόσβαση σε αυτές ελέγχεται από ένα κεντρικό πρόγραμμα το οποίο ονομάζεται διαχειριστής βάσεων δεδομένων (db manager). Η δόμηση της πληροφορίας που αποθηκεύεται στις βάσεις δεδομένων καθορίζεται από το μοντέλο δεδομένων (data model). 15

Μοντέλα Δεδομένων Αρχικά μοντέλα δεδομένων: ιεραρχικό (hierarchical data model): διαφορετικοί τύποι εγγραφών δομούνται υπό μορφή ιεραρχίας (δένδρου) μοντέλο δικτύου (network data model): γενίκευση του ιεραρχικού μοντέλου. Οι εγγραφές οργανώνονται υπό μορφή κατευθυνόμενου άκυκλου γράφου. Μειονέκτημα των αρχικών μοντέλων δεδομένων: η επερώτηση στις βάσεις δεδομένων γίνεται πολύπλοκη. 16

Μοντέλα Δεδομένων Το σχεσιακό μοντέλο (relational model) είναι το πλέον επιτυχημένο μοντέλο δεδομένων που αυτά έχουν προταθεί. Τα δεδομένα οργανώνονται σε μορφή πινάκων εγγραφών ή σχέσεων (tables of records or relations). Οι σχέσεις είναι συλλογές γνωρισμάτων (attributes), όπου κάθε γνώρισμα (μια στήλη του πίνακα) αναπαριστά μια ιδιότητα της εγγραφής. Παρέχει εύκολο τρόπο επερώτησης των δεδομένων. Εμπορικά σχεσιακά ΣΔΒΔ: Ingres, Oracle, DB2, Informix, Sybase, MySQL κλπ. 17

Χρήστες ΣΔΒΔ Ένα ΣΔΒΔ πρέπει να παρέχει εύκολη πρόσβαση στα δεδομένα σε σχετικά μη-έμπειρους χρήστες οι οποίοι λέγονται τελικοί χρήστες (end users). Η φιλικότητα προς το χρήστη και η χρήση μιας γλώσσας επερωτήσεων υψηλού επιπέδου είναι σημαντικά χαρακτηριστικά που πρέπει να διαθέτει ένα ΣΔΒΔ. Διαφορετικοί χρήστες έχουν διαφορετικές απαιτήσεις: τελικοί χρήστες προγραμματιστές εφαρμογών (application programmers) διαχειριστές ΒΔ (database administrators) 18

Χρήστες ΣΔΒΔ Τελικοί χρήστες συνήθεις ή περιστασιακοί χρήστες (casual users): χρησιμοποιούν μια δομημένη γλώσσα (π.χ. SQL) για την διατύπωση επερωτήσεων στη ΒΔ αδαείς χρήστες (naive users): διατυπώνουν επερωτήσεις χρησιμοποιώντας φόρμες ή μενού Προγραμματιστές εφαρμογών: γράφουν προγράμματα εφαρμογών για να εξυπηρετήσουν τις ανάγκες των τελικών χρηστών. Έχουν την ευθύνη της υλοποίησης ενός τρόπου επερώτησης με αποδοτικό τρόπο. Διαχειριστής ΒΔ: είναι υπεύθυνος για τη σχεδίαση και συντήρηση των ΒΔ 19

Επίπεδα Αφαίρεσης ΣΔΒΔ Ένας από τους κύριους στόχους ενός ΣΔΒΔ είναι να παρέχει μια αφηρημένη όψη των δεδομένων, αποκρύπτοντας από το χρήστη λεπτομέρειες σχετικά με την αναπαράσταση και την αποθήκευσή τους. Σε ένα ΣΔΒΔ, τα δεδομένα αναπαριστώνται σε 3 επίπεδα αφαίρεσης (abstraction levels): Φυσικό επίπεδο (physical level): το χαμηλότερο επίπεδο αφαίρεσης περιλαμβάνει σύνθετες δομές και λεπτομέρειες αναπαράστασης και αποθήκευσης 20

Επίπεδα Αφαίρεσης ΣΔΒΔ Λογικό επίπεδο (logical level): περιγράφει τα δεδομένα και τις μεταξύ τους σχέσεις χρησιμοποιώντας ένα σχετικά μικρό αριθμό απλών δομών και εννοιών Οι χρήστες οι οποίοι βλέπουν το σύστημα στο λογικό επίπεδο δεν χρειάζεται να γνωρίζουν τις λεπτομέρειες του φυσικού επιπέδου Επίπεδο όψεων (view level): το υψηλότερο επίπεδο αφαίρεσης περιγράφει κάποια μέρη της αποθηκευμένης πληροφορίας, καθώς κάποιοι χρήστες χρειάζονται πρόσβαση μόνο σε μέρος των ΒΔ αποτελεί συγχρόνως και μηχανισμό ασφάλειας 21

Επίπεδα Αφαίρεσης ΣΔΒΔ Όψη Όψη Όψη Επίπεδο Όψεων Λογικό Επίπεδο Φυσικό Επίπεδο 22

Επίπεδα Αφαίρεσης ΣΔΒΔ Η διάκριση μεταξύ των διαφορετικών επιπέδων αφαίρεσης είναι ανάλογη με τη διάκριση μεταξύ επιπέδων αφαίρεσης στις γλώσσες προγραμματισμού Για παράδειγμα, σε μια γλώσσα προγραμματισμού, οι δηλώσεις: type customer = record customer-name : string; customer-id : string; customer-address: string; end; type account=record account-number: integer; end; 23

Επίπεδα Αφαίρεσης ΣΔΒΔ type employee=record employee-name: string; salary: integer; end;... αντιστοιχούν στο λογικό επίπεδο. Στο φυσικό επίπεδο, οι τύποι αυτοί αναπαριστώνται σαν συνεχόμενες θέσεις αποθήκευσης. Η λεπτομέρεια αυτή αποκρύπτεται από τον προγραμματιστή. 24

Σχήμα και Στιγμιότυπα (Schema and Instances) Οι ΒΔ μεταβάλλονται με την πάροδο του χρόνου καθώς πληροφορία προστίθεται, αφαιρείται η τροποποιείται. Το σύνολο της πληροφορίας το οποίο βρίσκεται αποθηκευμένο σε μια ΒΔ σε μια συγκεκριμένη χρονική στιγμή λέγεται στιγμιότυπο (instance or snapshot) της ΒΔ. Το σχήμα (schema) της ΒΔ είναι το σύνολο των εννοιών που περιγράφουν τη δομή της και είναι σχεδόν πάντα σταθερό. Αναλογία : record types schema, variables instances Μια ΒΔ έχει ένα (ή περισσότερα) σχήματα σε κάθε επίπεδο αφαίρεσης: Φυσικό σχήμα Λογικό σχήμα Σχήματα όψεων ή υποσχήματα 25

Ανεξαρτησία Δεδομένων (Data Independence) Ο όρος ανεξαρτησία δεδομένων (data independence) χαρακτηρίζει την ικανότητα μεταβολής του σχήματος σε κάποιο επίπεδο αφαίρεσης, χωρίς να επηρεάζεται ο ορισμός του σχήματος στο αμέσως υψηλότερο επίπεδο φυσική ανεξαρτησία δεδομένων: το φυσικό σχήμα μπορεί να μεταβάλλεται χωρίς να χρειάζεται να γραφούν ξανά τα προγράμματα εφαρμογών που έχουν πρόσβαση στη ΒΔ. μεταβολές στο φυσικό σχήμα είναι συχνά απαραίτητες για λόγους βελτιστοποίησης της απόδοσης του συστήματος 26

Ανεξαρτησία Δεδομένων (Data Independence) λογική ανεξαρτησία δεδομένων: είναι η ικανότητα μεταβολής του λογικού σχήματος χωρίς την ανάγκη μεταβολής των προγραμμάτων εφαρμογών τέτοιες μεταβολές είναι απαραίτητες οταν μεταβάλλεται η εννοιολογική δομή μιας ΒΔ Η λογική ανεξαρτησία είναι δυσκολότερο να επιτευχθεί από τη φυσική ανεξαρτησία, καθώς τα προγράμματα εφαρμογών εξαρτούνται σε μεγάλο βαθμό απο τη λογική δομή μιας ΒΔ. Η έννοια της ανεξαρτησίας είναι συγγενής με αυτή των αφηρημένων τύπων δεδομένων (abstract data types). 27

Μοντέλα Δεδομένων (Data Models) Ενα μοντέλο δεδομένων (data model) είναι ένα σύνολο εννοιών για την περιγραφή των δεδομένων, των σχέσεων μεταξύ αυτών, τη σημασιολογία τους και τους περιορισμούς στους οποίους υπόκεινται. Διακρίνονται σε 3 κατηγορίες: οντοκεντρικά λογικά μοντέλα (object-oriented) πλειαδικά λογικά μοντέλα (record-based) φυσικά μοντέλα Τα οντοκεντρικά μοντέλα χρησιμοποιούνται για την περιγραφή δεδομένων στο λογικό επίπεδο και το επίπεδο όψεων. Τέτοια μοντέλα είναι τα: μοντελο οντοτήτων-σχέσεων (entity-relationship model), σημασιολογικό μοντέλο (semantic data model), συναρτησιακό μοντέλο (functional model) 28

Μοντέλα Δεδομένων (Data Models) Τα πλειαδικά λογικά μοντέλα αναπαριστούν τη λογική δομή μιας ΒΔ μέσω συγκεκριμένων τύπων που αναπαριστώνται ως πλειάδες (tuples) ή εγγραφές (records). Τέτοια μοντέλα είναι τα: σχεσιακό μοντελο (relational model), ιεραρχικό μοντέλο (hierarchical model), μοντέλο δικτύου (network model) Τα φυσικά μοντέλα χρησιμοποιούνται για την περιγραφή των δεδομένων στο φυσικό επίπεδο. Τέτοια μοντέλα είναι τα: ενοποιημένο μοντέλο (unifying data model) μοντέλο πλαισίων μνήμης (frame-memory model) 29

Γλώσσες Βάσεων Δεδομένων Γλώσσες για τον ορισμό δεδομένων (data definition languages) χρησιμοποιούνται για τον ορισμό του σχήματος εντολές της γλώσσας ορισμού δεδομένων μεταφράζονται σε ένα σύνολο δομών που αποθηκεύονται στο λεξικό ή ευρετήριο δεδομένων (data dictionary or directory) το ευρετήριο δεδομένων περιέχει μετα-δεδομένα (metadata), δηλαδή δεδομένα για τα δεδομένα. Το ΣΔΒΔ συμβουλέυεται το ευρετήριο πριν από οποιαδήποτε πρόσβαση στη ΒΔ. μέθοδοι αποθήκευσης και πρόσβασης καθορίζονται σε μια ειδική γλώσσα ορισμού δεδομένων η οποία λέγεται γλώσσα ορισμού αποθήκευσης δεδομένων (data storage definition language) 30

Γλώσσες Βάσεων Δεδομένων Γλώσσες για το χειρισμό δεδομένων (data manipulation languages) υποστηρίζουν λειτουργίες για εισαγωγή, ανάκληση, μεταβολή και διαγραφή πληροφορίας διακρίνονται σε διεργασιακές (procedural) και δηλωτικές (declarative) διεργασιακές γλώσσες καθορίζουν το «πως» γίνεται ο χειρισμός των δεδομένων, ενώ οι δηλωτικές καθορίζουν «ποιο» είναι το επιθυμητό αποτέλεσμα οι δηλωτικές γλώσσες είναι ευκολότερες στη χρήση τους αλλά όχι τόσο αποδοτικές η γλώσσα επερωτήσεων (query language) είναι υποσύνολο της γλώσσας χειρισμού δεδομένων 31

Τυπική Αρχιτεκτονική ΣΔΒΔ naïve users application programmers sophisticated users DB administrator application interfaces application programs queries database schema DBMS application programs object code embedded DML precompiler query evaluation engine DML compiler DDL interpreter Query Processor transaction manager buffer manager file manager Storage Manager indices data files data dictionary statistical data Disk Storage 32

Τέλος Ενότητας 33

Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο Πανεπιστήμιο Κρήτης» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους.

Σημειώματα

Σημείωμα αδειοδότησης Το παρόν υλικό διατίθεται με τους όρους της άδειας χρήσης Creative Commons Αναφορά Δημιουργού - Μη Εμπορική Χρήση - Παρόμοια Διανομή 4.0 [1] ή μεταγενέστερη, Διεθνής Έκδοση. Εξαιρούνται τα αυτοτελή έργα τρίτων π.χ. φωτογραφίες, διαγράμματα κ.λ.π., τα οποία εμπεριέχονται σε αυτό και τα οποία αναφέρονται μαζί με τους όρους χρήσης τους στο «Σημείωμα Χρήσης Έργων Τρίτων». [1] http://creativecommons.org/licenses/by-nc-sa/4.0/ Ως Μη Εμπορική ορίζεται η χρήση: που δεν περιλαμβάνει άμεσο ή έμμεσο οικονομικό όφελος από την χρήση του έργου, για το διανομέα του έργου και αδειοδόχο που δεν περιλαμβάνει οικονομική συναλλαγή ως προϋπόθεση για τη χρήση ή πρόσβαση στο έργο που δεν προσπορίζει στο διανομέα του έργου και αδειοδόχο έμμεσο οικονομικό όφελος (π.χ. διαφημίσεις) από την προβολή του έργου σε διαδικτυακό τόπο Ο δικαιούχος μπορεί να παρέχει στον αδειοδόχο ξεχωριστή άδεια να χρησιμοποιεί το έργο για εμπορική χρήση, εφόσον αυτό του ζητηθεί..

Σημείωμα Αναφοράς Copyright Πανεπιστήμιο Κρήτης,. «Αρχεία και Βάσεις Δεδομένων. Διάλεξη 1η: Εισαγωγή στα Συστήματα Διαχείρισης Βάσεων Δεδομένων». Έκδοση: 1.0. Ηράκλειο/Ρέθυμνο 2014. Διαθέσιμο από τη δικτυακή διεύθυνση: http://www.csd.uoc.gr/~hy360/