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

Σχετικά έγγραφα
Εισαγωγή στην Πληροφορική

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

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

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

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

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

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

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

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

Πληροφορική ΙΙ Εισαγωγή στις Βάσεις Δεδομένων. Τμήμα Λογιστικής

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

Διαχείριση Δεδομένων

Βάσεις Δεδομένων. Εισαγωγή Ανάλυση Απαιτήσεων. Φροντιστήριο 1 ο

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

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

Πληροφοριακού Συστήματος Ενημέρωσης Καιρικών Συνθηκών

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

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

H SQL είναι η γλώσσα για όλα τα εμπορικά σχεσιακά συστήματα διαχείρισης βάσεων δεδομένων

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

Copyright 2007 Ramez Elmasri and Shamkant B. Navathe, Ελληνική Έκδοση Δίαυλος Διαφάνεια 2-1

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

Αντικείµενο: Θεµελιώδες πρόβληµα της επιστήµης µας εδοµένα

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

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

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

Κεφάλαιο 2. Έννοιες και Αρχιτεκτονική Συστημάτων Βάσεων δεδομένων

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

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

Εισαγωγή στα Συστήματα Βάσεων εδομένων

Οργάνωση Βάσεων Βιοϊατρικών Δεδομένων Εξόρυξη Γνώσης Βιοϊατρικών Δεδομένων. Σεμινάριο 1: Εισαγωγή στις Βάσεις Δεδομένων

Εισαγωγή. Βάσεις Δεδομένων : Εισαγωγή 1

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

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

Εισαγωγή στα Συστήµατα Βάσεων Δεδοµένων

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

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

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

Βάσεις Δεδομένων. Βασίλειος Βεσκούκης 2006 Ρ.Κορακίτης, Β.Βεσκούκης, Θ.Καραλόπουλος, Γ.Πανόπουλος

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

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

Πληροφορική 2. Βάσεις Δεδομένων (Databases)

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

1.1. Βάσεις δεδομένων

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

Βάσεις εδοµένων. Βασίλειος Βεσκούκης, Εµµ. Στεφανάκης ΜΟΝΤΕΛΟΠΟΙΗΣΗ Ε ΟΜΕΝΩΝ, ΚΛΑΣΙΚΑ ΜΟΝΤΕΛΑ Ε ΟΜΕΝΩΝ

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι. Ενότητα 1: Ορισμοί βασικών εννοιών: Μια πρώτη μοντελοποίηση. Ευαγγελίδης Γεώργιος Τμήμα Εφαρμοσμένης Πληροφορικής

Βάσεις Δεδομένων. Βασίλειος Βεσκούκης ΜΟΝΤΕΛΑ ΔΕΔΟΜΕΝΩΝ

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

Εισαγωγή. Καλή Ακαδημαϊκή Χρονιά! Τι θα δούμε σήμερα: Τα βασικά Την ιστορία (μέλλον) Μια γρήγορη ματιά στο τι θα δούμε στο μάθημα

Ενότητα 3: Διαχείριση πληροφοριακών πόρων με τη χρήση βάσεων δεδομένων

Εισαγωγή στα Συστήµατα Βάσεων Δεδοµένων

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. 1 ο ΣΧΟΛΕΙΟ ΚΩΔΙΚΑ «Βασικά Θέματα Προγραμματισμού στην Ανάπτυξη Δυναμικών Διαδικτυακών Εφαρμογών» (Part 3) Ουρανία Σμυρνάκη

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420)

Ramez Elmasri and Shamkant B. Navathe Ελληνική Εκδόσεις Δίαυλος, Επιμέλεια Μ.Χατζόπουλος Διαφάνεια 1-1

Διαδικτυακές Εφαρμογές Ενότητα 1: JPA

Λιβανός Γιώργος Εξάμηνο 2017Β

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

«ΧΡΗΣΗ ΤΕΧΝΟΛΟΓΙΩΝ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ ΣΤΙΣ ΕΠΙΧΕΙΡΗΣΕΙΣ»

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Βάσεις Δεδομένων ΗγλώσσαSQL (Structured Query Language)

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Βάσεις εδοµένων. Βασίλειος Βεσκούκης, Εµµ. Στεφανάκης ΣΥΣΤΗΜΑΤΑ ΙΑΧΕΙΡΙΣΗΣ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ

Βάσεις Δεδομένων Η γλώσσα SQL (Structured Query Language) Εισαγωγή στην SQL (2) Ιστορικά Στοιχεία. SQL - Structured Query Language (1)

Διάλεξη 02: Βάσεις Δεδομένων Εισαγωγή. Διδάσκων: Παναγιώτης Ανδρέου

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

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

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

Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Αποθηκευμένες Διαδικασίες Stored Routines (Procedures & Functions)

. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Η Βίβλος σχετικά με το JDBC. Περιέχει τρία βασικά tutorials στα οποία θα βασιστεί το μάθημα και περιγράφει όλες τις τάξεις και τις μεθόδους που

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

Ορισμοί Σχεσιακού Μοντέλου και (απλές)τροποποιήσεις Σχέσεων στην SQL. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

ΛΕΥΚΗ ΜΟΤΣΟΒΟΛΕΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΣΗΜΕΙΩΣΕΙΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙΙ ΑΘΗΝΑ [1]

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

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

Σχεδίαση και Χρήση Βάσεων Δεδομένων. Χρήση του DBDesigner. Γιώργος Πυρουνάκης - forky@di.uoa.gr

Ακεραιότητα και Ασφάλεια Μέρος 1 Σχεδιασμός Βάσεων Δεδομένων

Μοντελοποίηση Πεδίου

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΔΙΟΙΚΗΣΗΣ

Βάσεις Δεδομένων ΙΙ. Διάλεξη 5 η XML και ΒΔ στο Διαδίκτυο

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

ΤΙΤΛΟΣ ΕΡΓΑΣΙΑΣ. Πετρογεωργάκης Μανούσος Σπυρόπουλος Σταύρος

ÈÛ ÁˆÁ ÛÙÈ μ ÛÂÈ Â ÔÌ ÓˆÓ

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι Ενότητα 3:

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

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

Μάθημα: Συστήματα Διαχείρισης Βάσεων Δεδομένων Αναλυτικό Διάγραμμα Μελέτης

10 η Διάλεξη Python Βάσεις δεδομένων στη python

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ασκήσεις και ερωτήσεις

Επεξεργασία Ερωτήσεων

Βάσεις Δεδομένων. Database Management Systems (DBMS) Συστήματα Διαχείρισης Βάσεων Δεδομένων (ΣΔΒΔ)

Δεδομένα και Πληροφορίες

Δοσοληψίες Βάσεις Δεδομένων Διδάσκων: Μαρία Χαλκίδη

Εισαγωγή στις βάσεις δεδομένων - Η ανατομία μιας βάσης δεδομένων

PostgreSQL. Oracle. Εαρινό Εξάμηνο

Βάσεις Δεδομένων ΙΙ. Διάλεξη 1 η Επεξεργασία Δοσοληψιών. Σύστημα Επεξεργασίας Δοσοληψιών

(Μέρος 3:Γλώσσα Ορισµού, Γλώσσα Τροποποίησης, Ενσωµατωµένη SQL) Βάσεις εδοµένων Ευαγγελία Πιτουρά 2

Ορισµοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Transcript:

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι Β. Μεγαλοοικονόμου, Δ. Χριστοδουλάκης Εισαγωγή στις Βάσεις Δεδομένων Ακ.Έτος 2008-09 (μεβάσητιςσημειώσειςτωνsilberchatz, Korth και Sudarshan)

Εισαγωγή Γιατί συστήματα Βάσεων Δεδομένων Όψη Δεδομένων Μοντέλα Δεδομένων Γλώσσα Ορισμού Δεδομένων Γλώσσα Χειρισμού Δεδομένων Διαχείριση Δοσοληψιών Διαχείριση Αποθήκευσης Διαχειριστής Βάσης Δεδομένων Χρήστες Βάσης Δεδομένων Συνολική Δομή Συστήματος

Συστήματα Διαχείρισης Βάσεων Δεδομένων (ΣΔΒΔ) ΣΔΒΔ = μια συλλογή από συσχετιζόμενα δεδομένα (βάση δεδομένων) + ένα σύνολο προγραμμάτων για την πρόσβαση στα δεδομένα Το ΣΔΒΔ περιέχει πληροφορία για μια συγκεκριμένη εταιρεία Το ΣΔΒΔ παρέχει ένα περιβάλλον που είναι βολικό και εύχρηστο Εφαρμογές Βάσεων Δεδομένων: Τραπεζικός τομέας: όλες οι δοσοληψίες Αερογραμμές: κρατήσεις, δρομολόγια πτήσεων Πανεπιστήμια: εγγραφές, βαθμολογίες Πωλήσεις: πελάτες, προϊόντα, αγορές Κατασκευές: παραγωγή, αποθέματα, παραγγελίες, εφοδιαστική αλυσίδα Ανθρώπινο δυναμικό: αρχεία εργαζομένων, μισθοδοσία, φοροαπαλλαγές Οι βάσεις δεδομένων είναι παντού, σε όλες τις πτυχές της ζωής μας

Γιατί Βάσεις Δεδομένων; Παλαιότερα, οι εφαρμογές βάσεων δεδομένων χτίζονταν πάνω σε συστήματα αρχείων Μειονεκτήματα στη χρήση συστημάτων αρχείων για την αποθήκευση δεδομένων: Πλεονασμός πληροφορίας και έλλειψη συνοχής Πολλαπλοί τύποι αρχείων, επαναλαμβανόμενη πληροφορία σε διαφορετικά αρχεία Δυσκολία πρόσβασης στα δεδομένα Χρειαζόταν νέο πρόγραμμα για την εκτέλεση κάθε νέας εργασίας Απομόνωση δεδομένων δεδομένα σε πολλαπλά αρχεία και τύπους Πρόβλημα ακεραιότητας Περιορισμοί ακεραιότητας (πχ. Υπόλοιπο λογαριασμού > 25 Euro) γίνεται μέρος του κώδικα του προγράμματος Δύσκολη η προσθήκη νέων περιορισμών και η αλλαγή υπαρχόντων

Γιατί Βάσεις Δεδομένων; (συνέχεια) (άλλα) Μειονεκτήματα χρήσης συστημάτων αρχείων Ατομικότητα ενημερώσεων Οι αποτυχίες ενημέρωσης επέφεραν κατάσταση ασυνέπειας στη βάση με μέρος των ενημερώσεων να έχουν εκτελεστεί Πχ. Μεταφορά χρημάτων από έναν λογαριασμό σε άλλον θα έπρεπε είτε να ολοκληρωθεί εντελώς είτε να ξαναγίνει Ταυτόχρονη πρόσβαση πολλών χρηστών Αναγκαία η ταυτόχρονη πρόσβαση για την αποτελεσματικότητα Μη- ελεγχόμενες ταυτόχρονες προσβάσεις οδηγούν σε έλλειψη συνοχής Πχ. Δύο άτομα βλέπουν το υπόλοιπο και το ενημερώνουν ταυτόχρονα Προβλήματα ασφάλειας πρόσβαση σε ορισμένο μέρος της πληροφορίας Τα συστήματα βάσεων δεδομένων προσφέρουν λύσεις σε όλα τα παραπάνω προβλήματα!!!

Όψη Δεδομένων: Επίπεδα Αφαιρετικότητας Φυσικό επίπεδο: περιγράφει πώς ένα αρχείο (πχ. πελάτης) αποθηκεύεται Λογικό επίπεδο: περιγράφει ποια δεδομένα αποθηκεύονται στη βάση και τις μεταξύ τους συσχετίσεις type πελάτης = record όνομα : string; οδός : string; Πόλη : integer; end; Επίπεδο όψης: προγράμματα εφαρμογών που κρύβουν λεπτομέρειες των τύπων δεδομένων. Οι όψεις μπορούν επίσης να κρύψουν πληροφορία (πχ. μισθός) για λόγους ασφαλείας

Όψη δεδομένων Αρχιτεκτονική συστήματος βάσης δεδομένων Επίπεδο όψης Όψη 1 Όψη 2 Όψη n Λογικό επίπεδο Φυσικό επίπεδο

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

Όψη δεδομένων: Σχήματα και Στιγμιότυπα Φυσική Ανεξαρτησία Δεδομένων ;

Όψη δεδομένων: Σχήματα και Στιγμιότυπα Φυσική Ανεξαρτησία Δεδομένων δυνατότητα τροποποίησης του φυσικού σχήματος χωρίς αλλαγή του λογικού σχήματος Οι εφαρμογές εξαρτώνται από το λογικό σχήμα Γενικά, οι διεπαφές μεταξύ των διαφορετικών επιπέδων και των συστατικών θα πρέπει να καθορίζονται έτσι ώστε αλλαγές σε ορισμένα μέρη του συστήματος να μην επηρεάζουν σημαντικά άλλα μέρη

Μοντέλα Δεδομένων Μια συλλογή εργαλείων για την περιγραφή Δεδομένων Συσχετίσεων δεδομένων Σημασιολογία δεδομένων Περιορισμών δεδομένων Μοντέλο Οντοτήτων-Συσχετίσεων (E-R) Σχεσιακό Μοντέλο

Μοντέλα Δεδομένων (συνέχεια) Άλλα μοντέλα: Αντικειμενοστρεφές μοντέλο (επέκταση του E-R με ενθυλάκωση, μεθόδους και αντικείμενα) Αντικειμενοστρεφές-σχεσιακό μοντέλο Ημι-δομημένα μοντέλα δεδομένων δεδομένα του ίδιου τύπου μπορεί να έχουν διαφορετικά σύνολα γνωρισμάτων XML Παλαιότερα μοντέλα: δικτυωτό και ιεραρχικό

Μοντέλο Οντοτήτων-Συσχετίσεων Παράδειγμα σχήματος σε ένα μοντέλο Οντοτήτων - Συσχετίσεων όνομα-πελάτη οδός-πελάτη αριθμ-λογαρ ποσό id-πελάτη πόλη-πελάτη πελάτης καταθέτης λογαριασμός

Μοντέλο Οντοτήτων-Συσχετίσεων (συνέχεια) Μοντέλο E-R του πραγματικού κόσμου Οντότητες (αντικείμενα) Πχ. πελάτες, λογαριασμοί, υποκαταστήματα τράπεζας Συσχετίσεις μεταξύ οντοτήτων Πχ. Ο λογασιασμός A-101 διατηρείται από τον πελάτη Φωτίου Οτύποςσυσχέτισηςκαταθέτης συσχετίζει πελάτες και λογαριασμούς Ευρέως χρησιμοποιούμενο για το σχεδιασμό ΒΔ ΟσχεδιασμόςτηςΒΔστοE-R μοντέλο συνήθως μετατρέπεται σε σχεδιασμό στο σχεσιακό μοντέλο (θα το δούμε στη συνέχεια) το οποίο χρησιμοποιείται για αποθήκευση και επεξεργασία

Σχεσιακό Μοντέλο Παράδειγμα δεδομένων πίνακα στο σχεσιακό μοντέλο Γνωρίσματα Κωδ-πελάτη Όνομα-πελάτη Οδός-πελάτη Πόλη-πελάτη Αριθμόςλογαριασμού 192-83-7465 Ιωάννου Αιόλου Πάτρα A-101 019-28-3746 Σταύρου Νότου Ρόδος A-215 192-83-7465 Ιωάννου Αιόλου Πάτρα A-201 321-12-3123 Τζίμα Μηλιάς Χανιά A-217 019-28-3746 Στάυρου Νότου Ρόδος A-201

Παράδειγμα Σχεσιακής Βάσης Id-πελάτη Όνομα-πελάτη ιεύθυνση-πελάτη Πόλη-πελάτη 192-83-7465 Ιωάννου Αιόλου 12 Πάτρα 019-28-3746 Σταύρου Νότου 4 Ρόδος 677-89-9011 Χρήστου Μάχης 3 Χίος 182-73-6091 Τσάμης Πατρόκλου 123 Σύρος 321-12-9999 Τζίμα Μηλιάς 100 Χανιά 336-66-9999 Λυσίου Παράσχου 175 Πάργα 019-28-3746 Σταύρου Νότου 72 Ραψάνη ποσό Α-101 500 Α-215 700 Α-102 400 Α-305 350 Α-201 900 Α-217 750 Α-222 700 Id-πελάτη αριθμόςλογαριασμού αριθμόςλογαριασμού 192-83-7465 Α-101 019-28-3746 Α-215 677-89-9011 Α-102 182-73-6091 Α-305 321-12-9999 Α-201 336-66-9999 Α-217 019-28-3746 Α-222

Γλώσσες Βάσεων Δεδομένων: Γλώσσα Ορισμού Δεδομένων (ΓΟΔ) ΚαθορίζειτοσυμβολισμόγιατονορισμότουσχήματοςτηςΒΔ Πχ. create table λογαριασμός ( αριθμός-λογαριασμού υπόλοιπο char(10), integer) Η μεταγλωττιστής της ΓΟΔ δημιουργεί ένα σύνολο από πίνακες που αποθηκεύονται σε ένα λεξικό δεδομένων Το λεξικό δεδομένων περιέχει μετα-δεδομένα (;)

Γλώσσες Βάσεων Δεδομένων: Γλώσσα Ορισμού Δεδομένων (ΓΟΔ) Καθορίζει το συμβολισμό για τον ορισμό του σχήματος της ΒΔ Πχ. create table λογαρισμός (αριθμός-λογαριασμού υπόλοιπο char(10), integer) Ο μεταγλωττιστής της ΓΟΔ δημιουργεί ένα σύνολο από πίνακες που αποθηκεύονται σε ένα λεξικό δεδομένων Το λεξικό δεδομένων περιέχει μετα-δεδομένα (δηλ. δεδομένα για τα δεδομένα) Σχήμα βάσης Αποθήκευση δεδομένων και γλώσσα ορισμού Γλώσσα που χρησιμοποιείται από το σύστημα βάσης δεδομένων για τον προσδιορισμό της δομής αποθήκευσης και των μεθόδων πρόσβασης Συνήθως μια επέκταση της γλώσσας ορισμού δεδομένων Περιορισμοί συνέπειας (Consistency constraints)

Γλώσσες Βάσεων Δεδομένων: Γλώσσα Χειρισμού Δεδομένων (ΓΧΔ) Γλώσσα πρόσβασης και χειρισμού δεδομένων οργανωμένη από το κατάλληλο μοντέλο δεδομένων Η ΓΧΔ είναι γνωστή και ως γλώσσα επερωτήσεων Δύο κλάσεις γλωσσών Διαδικαστική ο χρήστης καθορίζει τα δεδομένα που απαιτούνται και πώς θα έχουμε πρόσβαση σε αυτά Μη-διαδικαστική / Δηλωτική ο χρήστης καθορίζει τα δεδομένα που απατούνται χωρίς να προσδιορίζει πώς θα έχουμεπρόσβασησεαυά Η SQL είναι η πιο ευρέως χρησιμοποιούμενη γλώσσα επερωτήσεων

SQL SQL: ευρέως χρησιμοποιούμενη μη-διαδικαστική γλώσσα Πχ. Βρες το όνομα του πελάτη με κωδικό-πελάτη 192-83-7465 select πελάτης.όνομα-πελάτη from πελάτης where πελάτης.κωδ-πελάτη = 192-83-7465 Πχ. Βρες τα υπόλοιπα όλων των λογαριασμών που διατηρεί ο πελάτης με κωδικό 192-83-7465 select λογαριασμός.υπόλοιπο from καταθέτης, λογαριασμός where καταθέτης.κωδ-πελάτη= 192-83-7465 and καταθέτης.αριθμός-λογαριασμού= λογαριασμός.αριθμός-λογαριασμού

SQL (συνέχεια) Τα προγράμματα εφαρμογών συνήθως προσπελαύνουν τις βάσεις δεδομένων μέσω μιας εκ των Γλωσσών επέκτασης (language extensions) που επιτρέπουν την εμφύτευση SQL στο πρόγραμμα της φιλόξενης γλώσσας (χρειάζεται ένας προ-μεταγλωττιστής) Διεπαφή προγράμματος εφαρμογής (δηλ. ένα σύνολο διεργασιών) (πχ. ODBC/JDBC) που επιτρέπουν την αποστολή SQL επερωτήσεων σε μια βάση δεδομένων ODBC: Open DataBase Connectivity (χρησιμοποιείται στη C) JDBC: Java DataBase Connectivity (χρησιμοποιείται στη Java)

Χρήστες Βάσεων Δεδομένων Οι χρήστες διαφοροποιούνται ανάλογα με τον τρόπο που αναμένεται να αλληλεπιδράσουν με το σύστημα Προγραμματιστές εφαρμογών αλληλεπιδρούν με το σύστημα μέσω κλήσεων της ΓΧΔ Τεχνολογικά καταρτισμένοι χρήστες διατυπώνουν ερωτήματα προς τη βάση σε μια γλώσσα επερωτήσεων Εξειδικευμένοι χρήστες γράφουν εξειδικευμένες εφαρμογές βάσεων δεδομένων που δεν εμπίπτουν στο παραδοσιακό πλαίσιο διαχείρισης δεδομένων (πχ. Γνωσιακέςβάσειςκαιέμπειρα συστήματα, CAD, κα) Απλοί χρήστες ενεργοποιούν ένα από τα μόνιμα προγράμματα εφαρμογών που έχουν προηγουμένως γραφτεί Πχ. Άτομα που προσπελάζουν μια βάση δεδομένων μέσω διαδικτύου, ταμείες τραπεζών, διοικητικό προσωπικό

Δαχειριστής Βάσης Δεδομένων Συντονίζει τις δραστηριότητες ενός συστήματος βάσης δεδομένων (κατανοεί πλήρως τους πόρους μιας εταιρείας που παρέχουν πληροφορία και τις ανάγκες της) Καθήκοντα του διαχειριστή της βάσης δεδομένων: Ορισμός σχήματος Δομή αποθήκευσης και ορισμός μεθόδων πρόσβασης Τροποποίηση σχήματος και φυσικής οργάνωσης Διασφάλιση εξουσιοδότησης χρήστη για την πρόσβαση στη ΒΔ Καθορισμός των περιορισμών ακεραιότητας Συνδετικός κρίκος με τους χρήστες Ρουτίνα Συντήρησης: παρακολούθηση απόδοσης, ανταπόκριση σε απαιτήσεις αλλαγών, τήρηση αντιγράφων, κα.

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

Διαχείριση Αποθηκευτικού Χώρου Διαχειριστής αποθηκευτικού χώρου Ένα συστατικό προγράμματος που παρέχει τη διεπαφή μεταξύ των αποθηκευμένων δεδομένων χαμηλού επιπέδου της βάσης και των προγραμμάτων εφαρμογής και των επερωτήσεων που υποβάλλονται στο σύστημα Καθήκοντα διαχειριστή αποθηκευτικού χώρου: Αλληλεπίδραση με τον διαχειριστή αρχείων Αποδοτική αποθήκευση, ανάκτηση και ενημέρωση δεδομένων Συστατικά του διαχειριστή αποθηκευτικού χώρου: Διαχειριστής εξουσιοδότησης και ακεραιότητας (ελέγχει την ακεραιότητα, κτλ) Διαχειριστής δοσοληψιών (διασφαλιζει τη συνέπεια) Διαχειριστής αρχείου (διαχειρίζεται την ανάθεση χώρου) Διαχειριστής ενδιάμεσης μνήμης (buffer) (φέρνει δεδομένα από το δίσκο)

Επεξεργασία Επερωτήσεων Διερμηνέας ΓΟΔ Καταγράφει τους ορισμούς στο λεξικό δεδομένων Μεταγλωττιστής ΓΧΔ Μεταφράζει τη ΓΧΔ σε ένα πλάνο αξιολόγησης Μηχανή αξιολόγησης της επερώτησης Εκτελεί οδηγίες χαμηλού επιπέδου που δημιουργούνται από τον μεταγλωττιστή της ΓΧΔ

Γενική Αρχιτεκτονική Συστήματος

Αρχιτεκτονικές Εφαρμογών Αρχιτεκτονική δύο επιπέδων: Πχ. Προγράμματα εξυπηρετητών χρησιμοποιούν ODBC/JDBC γιαναεπικοινωνήσουνμετηβδ Αρχιτεκτονική τριών επιπέδων: Πχ. Δικτυακές εφαρμογές και εφαρμογές που έχουν αναπτυχθεί με τη χρήση middleware