Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΚΑΙ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Δαμιανός Χατζηαντωνίου ΤΜΗΜΑ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ.

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΚΑΙ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Δαμιανός Χατζηαντωνίου ΤΜΗΜΑ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ."— Μεταγράφημα παρουσίασης:

1 ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΚΑΙ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Δαμιανός Χατζηαντωνίου ΤΜΗΜΑ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ

2 ©Silberschatz, Korth and Sudarshan1.2Database System Concepts ΕΙΣΑΓΩΓΗ Ιστορική αναδρομή Σκοπός των Β.Δ. ‘Οψεις των δεδομένων (View of Data) Μοντέλα δεδομένων (Data Models) Γλώσσα ορισμού δεδομένων (Data Definition Language) Γλώσσα χειρισμού δεδομενων (Data Manipulation Language) Διαχείριση συναλλαγών (Transaction Management) Διαχείριση αποθήκευσης δεδομένων (Storage Management) Database Administrator Χρήστες Β.Δ. Συνολική δομή/αρχιτεκτονική ενός συστήματος Β.Δ.

3 ©Silberschatz, Korth and Sudarshan1.3Database System Concepts Ιστορική Αναδρομή Δεκαετία του 1950 Κάρτες και ταινίες (σειριακή επεξεργασία) – Batch processing Αρχή του 1960 πρώτο γενικού-σκοπού ΣΔΒΔ: Integrated Data Store (GE) Charles Bachman (Recipient of the 1 st Turing Award, 1973) network data model (δικτυωτό) Τέλη του 1960 Information Management System (IMS) IBM hierarchical data model (Ιεραρχικό) SABRE Airline Reservation System (AA+IBM, travelocity!!)

4 ©Silberschatz, Korth and Sudarshan1.4Database System Concepts Ιστορική Αναδρομή 1970 Edgar Codd (IBM, San Jose) relational data model (Recipient of the Turing Award, 1981) Ερευνητικά Προγράμματα: System R, INGRES - Γλώσσες: SEQUEL, QBE, QUEL Δεκαετία του 1980 SQL (μέρος του System R) transaction management (Jim Gray, Turing Award, 1999) [Τάσεις: αντικειμενοστραφή, αρχιτεκτονική πελάτη-εξυπηρέτη, κατανεμημένες, έμπειρα]

5 ©Silberschatz, Korth and Sudarshan1.5Database System Concepts Ιστορική Αναδρομή Δεκαετία του 1990 εμπορικά αντικειμενοστραφή συστήματα [Τάσεις: πολυβάσεις, χωρικές & χρονικές, πολυμέσα, αποθήκες δεδομένων, συμπερασματικες] Δεκαετία του 2000 [Τάσεις: Asilomar Report The Web Changes Everything Unifying Program Logic and Database Systems Hardware Advances: Scale up to MegaServers and Scale Down to Appliances]

6 ©Silberschatz, Korth and Sudarshan1.6Database System Concepts Συστήματα Διαχείρισης Β.Δ. (DBMS) Συλλογή αλληλοσυσχετιζόμενων δεδομένων Σύνολο προγραμμάτων που χειρίζονται τα δεδομένα ΣΔΒΔ περιέχουν πληροφορίες για μία συγκεκριμένη επιχείρηση Τα ΣΔΒΔ προσφέρουν ένα περιβάλλον που είναι εύκολο (convenient) και αποτελεσματικό (efficient). Εφαρμογές Β.Δ.:  Τραπεζικός χώρος: όλες οι συναλλαγές  Αεροπορικές εταιρείες: reservations, schedules  Πανεπιστήμια: εγγραφές, βαθμοί  Πωλήσεις: πελάτες, προϊόντα, αγορές  Μεταποίηση: παραγωγή, αποθήκη, παραγγελίες, supply chain  Ανθρώπινοι πόροι: στοιχεία υπαλλήλων, μισθοί, εφορία > Οι Β.Δ. βρίσκονται στην καθημερινή μας ζωή. <

7 ©Silberschatz, Korth and Sudarshan1.7Database System Concepts Σκοπός μίας Β.Δ. Στην αρχή, οι εφαρμογές των Β.Δ. «κάθονταν» πάνω σε file systems Προβλήματα των file systems ώστε να αποθηκεύουν δεδομένα:  Πλεονασμός (redundancy) των δεδομένων και ασυνέπεια (inconsistency)  Πολλαπλά file formats, επανάληψη πληροφοριών σε διαφορετικά files  Δυσκολία πρόσβασης στην πληροφορία  Συγγραφή προγραμμάτων για κάθε νέα λειτουργία  Απομόνωση δεδομένων (data isolation) — πολλαπλά files και formats  Προβλήματα ακεραιότητας (Integrity problems)  Οι περιορισμόι για την ακεραιότητα (integrity constraints) (π.χ. υπόλοιπο λογαριασμού > 0) ήταν κομμάτια των προγραμμάτων  Δύσκολο να προστεθούν νέοι περιορισμοί ή να αλλαχτούν ήδη υπάρχοντες.

8 ©Silberschatz, Korth and Sudarshan1.8Database System Concepts Σκοπός μίας Β.Δ. Προβλήματα των file systems ώστε να αποθηκεύουν δεδομένα:  Ατομικότητα των αλλαγών (atomicity of updates)  Προβλήματα κατα τις αλλαγές μπορέι να αφήσουν μία Β.Δ. σε ασυνεπή κατάσταση, με μερικές από τις αλλαγές να έχουν γίνει και άλλες όχι.  Π.χ. η μεταφορά χρημάτων από έναν λογαριασμό σε έναν άλλον θα πρέπει να ολοκληρωθεί ή να μη συμβεί καθόλου.  Ταυτόχρονη πρόσβαση πολλαπλών χρηστών (concurrent access)  Απαραίτητη για αποδοτικά συστήματα.  Ταυτόχρονη πρόσβαση μπορεί να οδηγήσει σε inconsistencies –Π.χ. ταυτόχρονη κατάθεση χρημάτων  Προβλήματα ασφάλειας Τα Σ.Δ.Β.Δ. προσφέρουν λύσεις σε όλα αυτά τα προβλήματα.

9 ©Silberschatz, Korth and Sudarshan1.9Database System Concepts Επίπεδα αφαιρετικότητας (abstraction) Στο φυσικό (physical) επίπεδο περιγράφουμε πως αποθηκευεται μία εγγραφή (record) για παράδειγμα τα στοιχεία ενός υπαλλήλου. Λογικό (logical) επίπεδο: περιγραφή των δεδομένων στη Β.Δ. και των σχέσεων μεταξύ τους. type customer = record name : string; street : string; city : integer; end; Επίπεδο όψεων (view): τα προγράμματα εφαρμογών «καλύπτουν» τις λεπτομέρειες των δεδομένων και των τύπων τους. Επίσης προσφέρουν και – πιθανόν – διαφορετικές όψεις των δεδομένων (π.χ. εγγραφή χωρίς μισθό)

10 ©Silberschatz, Korth and Sudarshan1.10Database System Concepts Αφαιρετική δομή μίας Β.Δ. Μια αρχιτεκτονική μιας Β.Δ.

11 ©Silberschatz, Korth and Sudarshan1.11Database System Concepts Στιγμιότυπα (Instances) και Schemas Παρεμφερή με τον τύπο και τις μεταβλητές στις γλώσσες προγραμματισμού. Schema – η λογική δομή μίας Β.Δ.  π.χ. μια βάση δεδομένων αποτελείται από πληροφορίες για πελάτες και λογαριασμούς, καθώς και τη σχέση μεταξύ των.  Παρόμοια με τον τύπο μίας μεταβλητής σε ένα πρόγραμμα.  Physical schema: σχεδίαση της Β.Δ. σε φυσικό επίπεδο  Logical/Conceptual schema: σχεδίαση της Β.Δ. σε λογικό επίπεδο Στιγμιότυπο – τα περιεχόμενα μίας Β.Δ. σε μια δεδομένη στιγμή.  Ανάλογο με την τιμή μιας μεταβλητής κατά τη διάρκεια εκτέλεσης.

12 ©Silberschatz, Korth and Sudarshan1.12Database System Concepts Ανεξαρτησία δεδομένων (Data Independency) Ανεξαρτησία Δεδομένων: αλλαγή του σχήματος ενός επιπέδου χωρίς να αλλάξουμε το σχήμα του αμέσως υψηλότερου επιπέδου. Αρχή της ανεξαρτησίας των δεδομένων σε φυσικό επίπεδο: η δυνατότητα να αλλάζει κάποιος το physical schema χωρίς να αλλάζει το logical schema  Ανάπτυξη εφαρμογών με βάση το λογικό schema  Οι διεπαφές μεταξύ των διαφόρων επιπέδων πρέπει να είναι πολύ καλά ορισμένες. Λογική ανεξαρτησία των δεδομένων: η δυνατότητα να αλλάζει κάποιος το conceptual schema χωρίς να αλλάζει το επιπέδο όψεως.

13 ©Silberschatz, Korth and Sudarshan1.13Database System Concepts Μοντέλα δεδομένων Ένα σύνολο από «θεμέλιους λίθους» για την περιγραφή:  δεδομένων  συσχετίσεων μεταξύ των δεδομένων  σημασιολογικού των δεδομένων (data semantics)  περιορισμών επί των δεδομένων Μοντέλο Οντοτήτων-Συσχετίσεων (Entity-Relationship) Σχεσιακό Μοντέλο (Relational) ΄Αλλα μοντέλα:  αντικειμενοστραφές (object-oriented model)  semi-structured data models  παλιότερα μοντέλα: network model και hierarchical model Διαφοροποίηση μεταξύ των object-based και value-based μοντέλα.

14 ©Silberschatz, Korth and Sudarshan1.14Database System Concepts Μοντέλο Ο-Σ (Ε-R) Παράδειγμα ενός schema στο μοντέλο Ο-Σ

15 ©Silberschatz, Korth and Sudarshan1.15Database System Concepts Μοντέλο Ο-Σ (Ε-R) Μοντέλο Ο-Σ στον πραγματικό κόσμο  Οντότητες (entities - objects)  Π.χ. πελάτης, λογαριασμός, υποκατάστημα  Συσχετίσεις μεταξύ των οντοτήτων  Π.χ. ο πελάτης Χατζηαντωνίου έχει το λογαριασμό  Γενικά: συσχέτιση μεταξύ πελατών και λογαριασμών Ευρέως διαδεδομένο στη σχεδίαση Β.Δ.  Μια σχεδίαση στο μοντέλο Ο-Σ συνήθως μετατρέπεται σε σχεδίαση στο σχεσιακό μοντέλο που σε δεύτερο επίπεδο, το οποίο μπορεί να χρησιμοποιηθεί για επεξεργασία και αποθήκευση

16 ©Silberschatz, Korth and Sudarshan1.16Database System Concepts Σχεσιακό Μοντέλο Παράδειγμα δεδομένων σε μορφή πίνακα customer- name Customer- id customer- street customer- city account- number Johnson Smith Johnson Jones Smith Alma North Alma Main North Palo Alto Rye Palo Alto Harrison Rye A-101 A-215 A-201 A-217 A-201 Χαρακτηριστικά (Attributes)

17 ©Silberschatz, Korth and Sudarshan1.17Database System Concepts Δείγμα Σχεσιακής Β.Δ.

18 ©Silberschatz, Korth and Sudarshan1.18Database System Concepts Γλώσσα Ορισμού Δεδομένων - Data Definition Language (DDL) Τρόπος ορισμού του database schema  Π.χ. create table account ( account-number char(10), balance integer) Ο μεταφραστής της DDL compiler δημιουργεί ένα σύνολο από πίνακες οι οποίοι αποθηκεύονται στο λεξικό δεδομένων (data dictionary) Τα λεξικά δεδομένων περιέχουν μέτα-δεδομενα (metadata)  database schema  Data storage and definition language  γλώσσα στην οποία περιγράφεται και η δομή αποθήκευσης και οι τρόποι/μέθοδοι πρόσβασης στα δεδομένα (storage structure and access methods)  συνήθως μία επέκταση της DDL

19 ©Silberschatz, Korth and Sudarshan1.19Database System Concepts Γλώσσα Χειρισμού Δεδομένων - Data Manipulation Language (DML) Γλώσσες για πρόσβαση και χειρισμό των δεδομένων που είναι αποθηκευμένα βάση ενός μοντέλου δεδομένων. Η Γ.Χ.Δ. είναι γνωστή και σαν γλώσσα αιτημάτων ή ερωτημάτων (query language) Δυο ειδών γλώσσες:  Διαδικαστικές (procedural) – ο χρήστης ορίζει τι δεδομένα απαιτούνται και πως θα πρέπει να ανακτηθούν (π.χ. πρόγραμμα σε Java)  Μη-διαδικαστικές ή Δηλωτικές (declarative) – ο χρήστης ορίζει τι δεδομένα απαιτούνται μόνο – κοντύτερα στη φυσική γλώσσα η SQL (Structured Query Language) είναι η πιο διαδεδομένη γλώσσα ερωτημάτων

20 ©Silberschatz, Korth and Sudarshan1.20Database System Concepts SQL SQL: H πιο διαδεδομένη δηλωτική γλώσσα ερωτημάτων  π.χ. βρες το όνομα του πελάτη με κωδικό select customer.customer-name from customer where customer.customer-id = ‘ ’  π.χ. βρες το υπόλοιπο όλων των λογαριασμών του πελάτη με κωδικό select account.balance from depositor, account where depositor.customer-id = ‘ ’ and depositor.account-number = account.account-number Τα προγράμματα εφαρμογών έχουν πρόσβαση στις Β.Δ. συνήθως:  Ειδικες εντολές της γλώσσας προγραμματισμού που επιτρέπουν ενσωματωμένη (embedded) SQL  Μέσω μίας διεπαφής (π.χ. ODBC/JDBC) που επιτρέπουν στα SQL ερωτήματα να σταλθούν σε μία Β.Δ.

21 ©Silberschatz, Korth and Sudarshan1.21Database System Concepts Χρήστες Β.Δ. Οι χρήστες διαφοροποιούνται ανάλογα τον τρόπο που επικοινωνούν με το σύστημα. Application programmers – interact with system through DML calls Sophisticated users – form requests in a database query language Specialized users – write specialized database applications that do not fit into the traditional data processing framework Naïve users – invoke one of the permanent application programs that have been written previously  E.g. people accessing database over the web, bank tellers, clerical staff

22 ©Silberschatz, Korth and Sudarshan1.22Database System Concepts Database Administrator Συντονίζει όλες τις δραστηριότητες ενός συστήματος Β.Δ. Πρεπει να έχει μια καλη γνώση των αναγκών (ΙΤ) και των πόρων της εταιρείας. Τα καθήκοντα ενός database administrator είναι:  ορισμός schema  ορισμός τρόπων αποθήκευσης και μεθόδων πρόσβασης  αλλαγές στο schema και στη φυσική οργάνωση των δεδομένων  διανομή επιπέδων security στους χρήστες  ορισμός των περιορισμών ακεραιότητας των δεδομένων  βοήθεια προς τους χρήστες  επίβλεψη απόδοσης του συστήματος

23 ©Silberschatz, Korth and Sudarshan1.23Database System Concepts Διαχείριση Συναλλαγών (Transaction) Μία συναλλαγή (transaction) είναι ένα σύνολο από πράξεις (operations) οι οποίες εκτελούν μία απλή λογική λειτουργία σε μια εφαρμογή Β.Δ. Το κομμάτι ενός Σ.Δ.Β.Δ. που διαχειρίζεται τις συναλλαγές (transaction manager) διασφαλίζει ότι η Β.Δ. παραμένει σε μια συνεπή κατάσταση άσχετα από αστοχίες (soft/hard failures) του συστήματος Ο concurrency-control manager ελέγχει την αλληλοεπίδραση ταυτόχρονων συναλλαγών ώστε να διασφαλίσει πάλι τη συνεπή κατάσταση της Β.Δ.

24 ©Silberschatz, Korth and Sudarshan1.24Database System Concepts Διαχείριση αποθήκευσης δεδομένων Ο storage manager είναι ένα κομμάτι του Σ.Δ.Β.Δ. που προσφέρει τη διεπαφή μεταξύ των low-level data που είναι αποθηκευμένα στη Β.Δ. και των εφαρμογών και των ερωτημάτων που φτάνουν σε αυτόν. Tα καθήκοντα του storage manager είναι:  επικοινωνία με τον file manager του λειτουργικού συστήματος (συνήθως)  αποτελεσματική αποθήκευση, ανάκτηση και ενημέρωση των δεδομένων

25 ©Silberschatz, Korth and Sudarshan1.25Database System Concepts Συνολική δομή ενός συστήματος Β.Δ.

26 ©Silberschatz, Korth and Sudarshan1.26Database System Concepts Αρχιτεκτονική εφαρμογών  Αρχιτεκτονική Two-tier: π.χ. client προγράμματ που χρησιμοποιούν ODBC/JDBC για να επικοινωνήσουν με μια Β.Δ.  Αρχιτεκτονική Three-tier : π.χ. web-based εφαρμογές και εφαρμογές χρησιμοποιώντας “middleware”


Κατέβασμα ppt "ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΚΑΙ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Δαμιανός Χατζηαντωνίου ΤΜΗΜΑ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google