Oracle 9i, IBM DB2, SQL Server

Σχετικά έγγραφα
Κεφάλαιο 1. Εισαγωγή και Ορισµοί σε Βάσεις εδοµένων Η Ύλη του µαθήµατος συνοπτικά. Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.1

Κεφάλαιο 1. Εισαγωγή και Ορισµοί σε Βάσεις εδοµένων Η Ύλη του µαθήµατος συνοπτικά. Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.1

ΕΙΣΑΓΩΓΗ. Εισαγωγή και Ορισμοί σε Βάσεις Δεδομένων Η Ύλη του μαθήματος συνοπτικά. Ι.Β -- Εισαγωγή στις Βάσεις Δεδομένων Σελίδα 1.1

Εισαγωγή-Ορισµοί Ε ΟΜΕΝΑ (DATA) Γνωστά γεγονότα / περιστατικά που καταγράφονται και έχουν νόηµα ΒΑΣΗ Ε ΟΜΕΝΩΝ (DATABASE) Μία ΟΛΟΚΛΗΡΩΜΕΝΗ συλλογή εδοµ

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

ΑΝΑΛΥΣΗ ΚΑΙ ΣΧΕ ΙΑΣΜΟΣ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

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

ΑΝΑΛΥΣΗ ΚΑΙ ΣΧΕ ΙΑΣΜΟΣ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

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

Εισαγωγή. Τι είναι µια βάση δεδοµένων;

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

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

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

Κεφάλαιο 1. Εισαγωγή και Ορισµοί σε Βάσεις εδοµένων Η Ύλη του µαθήµατος συνοπτικά. Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.1

Εισαγωγή. web σελίδα Βάσεις εδοµένων Αντικείµενο: Θεµελιώδες πρόβληµα της επιστήµης µας εδοµένα

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

(1 ο μάθημα)

Βάσεις Δεδομένων (Databases)

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

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

Εξόρυξη Γνώσης από εδοµένα (Data Mining)

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

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Επιβλέπων: ΠΟΤΗΡΑΚΗΣ ΑΝΤΩΝΙΟΣ

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

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

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

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

Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού

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

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

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

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

MOCϦϣΎϬϴϠϋϝϮμΤϟϢΗϊΟήϤϟ. USE northwind SELECT employeeid, lastname, firstname, title FROM employees GO

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

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

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

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

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

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

Βάσεις δεδομένων. Π. Φιτσιλής

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

Συγκριτικά Πλεονεκτήµατα Γραµµατείας 2003 έναντι Γραµµατείας 2.5

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

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

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

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

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

Certified Data Base Designer (CDBD)

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

Βάσεις Δεδομένων (Databases)

ΠΡΟΧΩΡΗΜΕΝΑ ΘΕΜΑΤΑ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ -2

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

Στόχοι και αντικείμενο ενότητας

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

Εξαγωγή Μετασχηματισμός Εισαγωγή Δεδομένων στην Αποθήκη Πληροφοριών (ETL) ETL) Αριστομένης Μακρής

Ολοκληρωµένη λύση επιλεκτικής συγκέντρωσης, αναδιοργάνωσης δεδοµένων και παραγωγής πληροφορίας

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

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

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

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

Θέματα Προγραμματισμού Διαδικτύου ~ MySQL & PHP ~

Information Technology for Business

Λογιστικές Εφαρµογές µε Η/Υ. Αριστοµένης Μακρής

Συστήματα ΟΔΕΠ (Ολοκληρωμένης. Διαχείρισης Επιχειρησιακών Πόρων)- ERP (Enterprise Resource Planning)

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

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

ΜΥΥ701: Βάσεις Δεδομένων Διδάσκουσα: Ευαγγελία Πιτουρά

Lecture 3: Introduction III

Information Technology for Business

Lecture 2: Introduction II

Σχεδίαση Σχεσιακών ΒΔ

Αποθήκες εδοµένων: Προκλήσεις και Ευκαιρίες

Πληροφοριακά Συστήµατα

A ΕΠΑ.Λ ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 5 η ΕΝΟΤΗΤΑ: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Εκπαιδευτικοί: ΓΑΛΑΝΟΣ ΓΕΩΡΓΙΟΣ ΜΠΟΥΣΟΥΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ

BΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΞΕΤΑΣΗ ΦΕΒΡΟΥΑΡΙΟΥ 2005

Microsoft Visual Studio Γιώργος Καµαρινός Developer Programs Marketing Manager Microsoft Hellas

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

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

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

Query-by-Example (QBE)

ΔΙΑΔΙΚΤΥΑΚΟ ΣΥΣΤΗΜΑ ΒΕΛΤΙΣΤΗΣ ΔΙΑΧΕΙΡΙΣΗΣ ΕΝΕΡΓΕΙΑΚΩΝ ΠΟΡΩΝ E.M.I.R. - Energy Management & Intelligent Reporting

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

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

ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ. Κωνσταντίνος Ταραµπάνης Καθηγητής γρ

Αριστοµένης Μακρής Εργαστήρια Η/Υ

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

Transcript:

Κεφάλαιο 1 Εισαγωγή και Ορισµοί σε Βάσεις εδοµένων Η Ύλη του µαθήµατος συνοπτικά Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.1

Βάσεις εδοµένων Περιεχόµενα Μαθήµατος (1) Σύντοµη Εισαγωγή και Ιστορική Αναδροµή (Κεφ. 1, 15, 16) Αρχιτεκτονικές Συστηµάτων (Κεφ. 1, 15, 16) Μοντελοποίηση, Σχεδιασµός και Ανάπτυξη Β.. (Κεφ. 2) ΤοΜοντέλο Entity-Relationship (E-R) Άλλα εννοιολογικά Μοντέλα (UML) (Κεφ. 2) Το Σχεσιακό (Relational) Μοντέλο (Κεφ. 3) Ορισµοί Σχεσιακή Άλγεβρα και Σχεσιακός Λογισµός ΣχεσιακάΣυστήµατα ηγλώσσα SQL (Κεφ. 4, 5, 6, 7) Η SQL και άλλες σχεσιακές γλώσσες Ακεραιότητα, ικαιοδοσία και Ασφάλεια Θεωρία Σχεδιασµού Βάσεων εδοµένων Κανονικοποίηση Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.2

Βάσεις εδοµένων Περιεχόµενα Μαθήµατος (2) ΦυσικήΟργάνωσηΒάσεων εδοµένων (Κεφ. 11, 12, 13, 14) οµές Αποθήκευσης και Συστήµατα Αρχείων Ευρετήρια και Hash Επεξεργασία και Βελτιστοποίηση Επερωτήσεων / Ερωτηµάτων Βελτιστοποίηση Ερωτηµάτων Αρχιτεκτονικές, ΣυστήµατακαιΛειτουργικάΘέµατα (Κεφ. 18, 23, 25-27) Oracle 9i, IBM DB2, SQL Server Νέες / Αναδυόµενες Τεχνολογίες και Συστήµατα ΚΑΛΥΠΤΟΝΤΑΙ από το Βιβλίο Korth & Silberschatz: Μέρος 1, 2, 4, 8 (καιµερικώς 5, 6, 7, 8) ΤΑΥΠΟΛΟΙΠΑΚΑΛΥΠΤΟΝΤΑΙΣΤΟΜΑΘΗΜΑ 9 ου ΕΞΑΜΗΝΟΥ: «Προχωρηµένα Θέµατα Βάσεων εδοµένων» Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.3

Εισαγωγή -Ορισµοί Ε ΟΜΕΝΑ (DATA) Γνωστά γεγονότα / περιστατικά που καταγράφονται και έχουν νόηµα ΒΑΣΗ Ε ΟΜΕΝΩΝ (DATABASE) Μία ΟΛΟΚΛΗΡΩΜΕΝΗ συλλογή εδοµένων που συσχετίζονται, η οποία αποθηκεύεται (συνήθως) σε δευτερεύουσα Μνήµη Η Βάση εδοµένων αναπαριστά ένα υποσύνολο των στοιχείων που µπορούµε να συλλέξουµε για τον µικρόκοσµο(πεδίο αναφοράς) µιας εφαρµογής. ΣΥΣΤΗΜΑ ΙΟΙΚΗΣΗΣ / ΙΑΧΕΙΡΙΣΗΣ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ (DATABASE MANAGEMENT SYSTEM - DBMS) Μια αυτοτελής συλλογή από τµήµατα λογισµικού (προγράµµατα) για την δηµιουργία, επεξεργασία και την συντήρηση βάσεων δεδοµένων. ΣΥΣΤΗΜΑ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ (DATABASE SYSTEM) Το λογισµικό (DBMS) µαζί µε τη Βάση εδοµένων. Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.4

3 ΟΨΕΙΣ ΤΩΝ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ 1. Μοντελοποίηση και Σχεδιασµός Β Τι κάνουµε πριν από την υλοποίηση και λειτουργία Β. 2. Προγραµµατισµός: Ερωτήσεις και Πράξεις σε Β SQL = παγκόσµιος γλώσσα 3. Υλοποίηση Συστηµάτων Β. 7 ο Εξάµηνο = (1) + (2), 9 ο Εξάµηνο = (3) Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.5

Ιστορική Αναδροµή (1) 1950s (Πρώτη Γενεά Αρχεία σε Ταινίες) batch processing, κάρτες και ταινίες (σειριακή επεξεργασία) 1960s ( εύτερη Γενεά - Αρχεία σε ίσκους) Εκτεταµένη χρήση των ίσκων» Επιστηµονικό Πεδίο Βάσεων εδοµένων Πρώτα Συστήµατα Αρχείων Γενικευµένα Πακέτα Ταξινόµησης εδοµένων ειλή παρουσία Γενικευµένων Λογισµικών Πακέτων Ορισµός των εδοµένων σε Γλώσσα Προγραµµατισµού» COBOL Ανάπτυξη Συστηµάτων Β για Ιδιωτική Χρήση Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.6

Το Σενάριο για Συστήµατα Αρχείου P1 P2 P3 P4 ΠΡΟΜΗΘΕΙΑ ΒΙΒΛΙΩΝ ΚΑΤΑΓΡΑΦΗ ΑΝΑΓΝΩΣΤΩΝ ΕΝΟΙΚΙΑΣΗ ΒΙΒΛΙΩΝ ΕΙ ΟΠΟΙΗΣΗ ΓΙΑ ΚΑΘΥΣΤΕΡΗΣΕΙΣ ΒΙΒΛΙΑ ΑΝΑΓΝΩΣΤΕΣ ΝΟΙΚΙΑΣΜΕΝΑ ΒΙΒΛΙΑ Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.7

ΕΦΑΡΜΟΓΕΣ πάνω σε Συστήµατα Αρχείων Μειονεκτήµατα στη χρήση Αρχείων για αποθήκευση δεδοµένων: Πλεονασµός / Επαναληπτικότητα εδοµένων και Ασυνέπειες» Πολλαπλές Μορφές, Επανάληψη των εδοµένων σε αρχεία υσκολίες πρόσβασης στα δεδοµένα» Για κάθε νέα ανάγκη πρέπει να γραφεί νέο (µεγάλο) πρόγραµµα Αποµόνωση των δεδοµένων σε πολλαπλά αρχεία διαφορετικής µορφής υσκολίες για υλοποίηση νέων εφαρµογών Προβλήµατα Ακεραιότητας» Οικανόνεςακεραιότητας (π.χ., υπόλοιπολογαριασµού > 0) πρέπει να γίνουν µέρος του κώδικα» ύσκολοναεισαχθούννέοικανόνεςήνααλλάξουνοιπαλιοί Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.8

ΕΦΑΡΜΟΓΕΣ πάνω σε Συστήµατα Αρχείων Μειονεκτήµατα στη χρήση Αρχείων για αποθήκευση δεδοµένων (συνέχεια): Ατοµικότητα των Αλλαγών» Σε περίπτωση αστοχίας του συστήµατος, υπάρχει κίνδυνος να µείνει η βάση δεδοµένων σε ενδιάµεση κατάσταση (δηλαδή, µε λάθη)» Ενδεικτικά, η µεταφορά χρηµάτων από λογαριασµό σε λογαριασµό ή πρέπει να γίνεται πλήρως ή καθόλου Ταυτόχρονη Χρήση από πολλούς χρήστες» Απαιτείται για καλύτερη απόδοση» Όταν δεν υπάρχει έλεγχος στην ταυτόχρονη χρήση φτάνουµε σε λάθη Π.χ., δύο χρήστες διαβάζουν το υπόλοιπο και το αλλάζουν ταυτόχρονα Προβλήµατα Ασφαλείας» Ποιος έχει πρόσβαση σε ποιο αρχείο? Τα Σ Β προσφέρουν ΛΥΣΕΙΣ ΣΕ ΟΛΑ ΤΑ ΠΑΡΑΠΑΝΩ Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.9

Συστήµατα ιαχείρισης // ιοίκησης Βάσεων εδοµένων Τιθέλουµεπαραπάνωαπόότιέχουµεσεένα Σύστηµα Αρχείων? Απλές, αποδοτικές επερωτήσεις (ερωτήσεις) που µπορείναγίνονταιανάλογαµετοθέµα / πρόβληµα που προκύπτει στη χρήση των δεδοµένων Έλεγχο Συνδροµικότητας / συγχρονισµού Ανάκαµψη από κάθε πρόβληµα Όλα τα καλά από τη δυνατότητα Μοντελοποίησης Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.10

Το Σενάριο Επεξεργασίας µε DBMS. Logical Files (VIEWS) F1 User/Group Application Programs P1 DATABASE (Integrated) DBMS (Software) F2 F3 P2 P3 F4.. P4.. Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.11

Ιστορική Αναδροµή (2) 1970s Τρίτη Γενεά Προ-Σχεσιακή (Pre-Relational) - ΤάσηγιαΠρότυπαµετην CODASYLαναφορέςπροτύπων 1969, 19, 73, 78, 81, 85..,» DBTG (Data Base Task Group) - ΑΠΟΘΗΚΕΥΣΗ δεδοµένων ΚΑΙ ΤΩΝ ΟΡΙΣΜΩΝ τους - εµφύτευση γενικής χρήσης προγραµµάτων προσπέλασης σε HOST γλώσσα (COBOL) - Συστήµατα ικτύου (NETWORK) και Ιεραρχικά (HIERARCHICAL) - ΘεωρητικόςΟρισµόςτουΣχεσιακούΜοντέλου (απότον CODD) - Ενδιαφέρον από την Ακαδηµαϊκή / Ερευνητική Κοινότητα (Computer Science) - Καθαρός ιαχωρισµός µεταξύ «φυσικής» και «λογικής» οργάνωσης Β - Θεωρητικές προσεγγίσεις σε Πρακτικά Θέµατα Λειτουργίας - Τα πρώτα πιλοτικά Σχεσιακά Συστήµατα (SYSTEM-R, INGRESS) - Αναγνώριση του ρόλου της Μοντελοποίησης. - ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΣΥΣΤΗΜΑΤΩΝ - ΕπεξεργασίαΒ σεχαμηλοεπίπεδο (κακόστηνπαραγωγικότητα, λάθη, κλπ.) Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.12

Παράδειγµα Βάσης εδοµένων Ένας Μικρόκοσµος - τµήµα των πληροφοριών για την λειτουργία ενός Καταστήµατος Μερικές ΟΝΤΟΤΗΤΕΣ του Μικρόκοσµου (ενδιαφέρουσες) Employees (Υπάλληλοι) Products (Προϊόντα) Suppliers (Προµηθευτές) Orders (Παραγγελίες) Customers (Πελάτες) Μερικές ΣΥΣΧΕΤΙΣΕΙΣ µεταξύ Οντοτήτων Οι Υπάλληλοι ετοιµάζουν Παραγγελίες Οι Προµηθευτές στέλνουν Προϊόντα Τα Προϊόντα αποστέλλονται στους Πελάτες Οι Πελάτες παραγγέλλουν Προϊόντα Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.13

Παράδειγµα Βάσης εδοµένων Suppliers SupplierID CompanyName ContactName Products ProductID ProductName SupplierID Order Details OrderID ProductID UnitPrice Orders OrderID CustomerID EmployeeID Customers CustomerID CompanyName ContactName ContactTitle Address City Region PostalCode Country Phone Fax HomePage Categories CategoryID CategoryName Description Picture CategoryID QuantityPerUnit UnitPrice UnitsInStock UnitsOnOrder ReorderLevel Discontinued Quantity Discount Employees EmployeeID LastName FirstName Title TitleOfCourtesy BirthDate HireDate Address City Region PostalCode Country HomePhone Extension Photo Notes ReportsTo OrderDate RequiredDate ShippedDate ShipVia Freight ShipName ShipAddress ShipCity ShipRegion ShipPostalCode ShipCountry ContactTitle Address City Region PostalCode Country Phone Fax Shippers ShipperID CompanyName Phone Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.14

Παράδειγµα Βάσης - Στιγµιότυπο (1). EmployeeID LastName FirstName Title BirthDate HireDate ReportsTo 8 Callahan Laura Inside Sales Coordinator 9/1/1958 5/3/1994 2 5 Buchanan Steven Sales Manager 4/3/1955 17/10/199 3 2 1 Davolio Nancy Sales Representative 8/12/1968 1/5/1992 2 3 Leverling Janet Sales Representative 30/8/1963 1/4/1992 2 4 Peacock Margaret Sales Representative 19/9/1958 3/5/1993 2 6 Suyama Michael Sales Representative 2/7/1963 17/10/199 3 5 7 King Robert Sales Representative 29/5/1960 2/1/1994 5 9 Dodsworth Anne Sales Representative 2/7/1969 15/11/199 4 5 2 Fuller Andrew Vice President, Sales 19/2/1952 14/8/1992 EMPLOYEES Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.15

Παράδειγµα Βάσης - Στιγµιότυπο (2) Products ProductID ProductName QuantityPerUnit UnitPrice UnitsInStock CategoryName 1 Chai 10 boxes x 20 bags 18,00 ρχ 39 Beverages 2 Chang 24-12 oz bottles 19,00 ρχ 17 Beverages 3 Aniseed Syrup 12-550 ml bottles 10,00 ρχ 13 Condiments 4 Chef Anton's Cajun Seasoning 48-6 oz jars 22,00 ρχ 53 Condiments 6 Grandma's Boysenberry Spread 12-8 oz jars 25,00 ρχ 120 Condiments 7 Uncle Bob's Organic Dried Pears 12-1 lb pkgs. 30,00 ρχ 15 Produce 8 Northwoods Cranberry Sauce 12-12 oz jars 40,00 ρχ 6 Condiments 10 Ikura 12-200 ml jars 31,00 ρχ 31 Seafood Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.16

Ιστορική Αναδροµή (3) 1980-1990s (Τετάρτη Γενεά Σχεσιακό Μοντέλο και Συστήµατα)» Relational Database Systems - ΥΨΗΛΟΥ επιπέδου, ισχυρότατες Γλώσσες Επεξεργασίας Set-Oriented (όχι Record-oriented) - Αναγνώριση της Θεωρίας Βάσεων εδοµένων - Αρχιτεκτονικές 3 επιπέδων - To DBMS ενσωµατωµένο σε µεγάλα Συστήµατα οσοληψιών (Transactional Systems) π.χ., σε ίκτυα. - SQL - Εµφάνιση των Αντικειµενοστραφών Συστηµάτων, Ευφυών Συστηµάτων, κλπ. Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.17

Το Σχεσιακό Μοντέλο σε σε µια ιαφάνεια.ο Μικρόκοσµος των Υπαλλήλων Τµηµάτων όπου εργάζονται Department dno name 10 Toy 20 Shoe Employee eno name salary dept 1 Lou 10000000 10 7 Laura 150000 20? 22 Mike 80000 20 select E.name, E.salary, D.no from Employee E, Department D where E.salary < 100000 and D.name = 'Shoe' and E.dept = D.dno; Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.18

Χαρακτηριστικά και Ιδιότητες των DBMS Αυτό-περιγραφική Φύση των Συστηµάτων Βάσεων εδοµένων Οµοιογένεια στην ηµιουργία, Πρόσβαση και Έλεγχο των εδοµένων Μοίρασµα (SHARING) δεδοµένων και χρήση από πολλούς χρήστες Υποστήριξη κανόνων Ακεραιότητας, Ασφάλειας, ικαιοδοσίας στα εδοµένα Κεντρικός έλεγχος Λειτουργίας (Database Administration) Πολλαπλοί Τρόποι Πρόσβασης Έλεγχος Συνδροµικότητας και Μηχανισµοί για Ανάκαµψη Τυποποιήσεις Αύξηση της Παραγωγικότητας στην Ανάπτυξη Εφαρµογών Αποµόνωση Προγραµµάτων και εδοµένων ΑΦΑΙΡΕΣΗ Ε ΟΜΕΝΩΝ (Abstraction) ΑΠΟ ΟΣΗ!!! (Performance - Performance Performance) Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.19

ΑπλήΕικόναενός DBMS. ΒΑΣΗ Ε ΟΜΕΝΩΝ DBMS ΟΨΕΙΣ της ΒΑΣΗΣ ΧΡΗΣΤΕΣ ή Προγράµµατα Εφαρµογών V1 U1 V2 P2 V3 P3 V4. U4. Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.20

.. Η τυποποιηµένη Αρχιτεκτονική 3-επιπέδων (ANSI/SPARC) USER INTERFACE EXTERNAL SCHEMA 1... EXTERNAL SCHEMA n CONCEPTUAL SCHEMA INTERFACE: External to Conceptual Schema Database Internal to Database Interface INTERNAL / PHYSICAL SCHEMA INTERFACE: Conceptual to Internal Schema DBMS: Υπεύθυνο για όλες τις ιεπαφές Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.21

Αφαιρετικά Επίπεδα Πολλές όψεις / προβολές (Views), µία µόνο εννοιολογική περιγραφή (conceptual (logical) schema)και µια µόνο φυσική περιγραφή (physical schema). Οι ΟΨΕΙΣ περιγράφουν πως οι χρήστες βλέπουν τα δεδοµένα Το Conceptual schema ορίζει την λογική δοµή των δεδοµένων Το Physical Schema περιγράφει την φυσική οργάνωση View 1 View 2 View 3 Conceptual Schema Physical Schema Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.22

Παράδειγµα Εννοιολογικό --- Conceptual schema (εννοιολογικήδιάταξη): Students(sid: string, name: string, login: string, age: integer, gpa:real) Courses(cid: string, cname:string, credits:integer) Enrolled(sid:string, cid:string, grade:string) Φυσικό --- Physical schema (φυσικήδιάταξη): Οισχέσειςαποθηκεύονταιως ISAM αρχεία. Ευρετήριο (Index) στην πρώτη στήλη του Students. Εξωτερικό (Λογικό, Όψη, Προβολή) --- External Schema (View): Course_info(cid:string,enrollment:integer) Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.23

ΗΑρχιτεκτονικήενός DBMS DBMS DATA MANAGER. Output Generator Dictionary Manager DATABASE Applic. USER Query I/O Processor Parser LOG Transaction Manager Recovery Manager Precompiler Authorization Control Optimizer Generation of Executable Code Data Dictionary (Schemas) Integrity Checker Update Processor Query Processor Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.24

ΈλεγχοςΣυνδροµικότητας - Concurrency Control Η ταυτόχρονή εκτέλεση δοσοληψιών / πράξεων σε ένα DBMS είναι ΑΠΑΡΑΙΤΗΤΗ για την ΚΑΛΗ ΑΠΟ ΟΣΗ. Επειδή οι προσβάσεις στον ίσκο είναι πολύ συχνές και σχετικάαργές, είναιπολύσηµαντικόνααφεθείηcpu να εργάζεται σε πολλά προγράµµατα χρηστών ΤΑΥΤΟΧΡΟΝΑ. Η τυχαία εναλλαγή µεταξύ προγραµµάτων των χρηστών µπορεί να οδηγήσει σε καταστροφή της ακεραιότητας της Βάσης Τα DBMS εξασφαλίζει ότι τέτοια φαινόµενα ΕΝ παρουσιάζονται οι χρήστες παραµένουν µε την εντύπωση ότι έχουν µοναδική χρήση του DBMS. Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.25

οσοληψία Η εκτέλεση ενός Προγράµµατος Η έννοια κλειδί είναι η οσοληψία (transaction), η οποία είναι µια ατοµική σειρά πράξεων στη Βάση (reads/writes). Κάθε οσοληψία εκτελείται εντελώς και αφήνει την Βάση σε σωστή / συνεπή κατάσταση (consistent state) εφόσον ήταν σε συνεπή κατάσταση όταν άρχιζε η οσοληψία. Οι χρήστες ορίζουν απλούς κανόνες ακεραιότητας (integrity constraints) σταδεδοµένα, καιτο DBMS αναλαµβάνει να τους τηρεί Πέραν αυτών το DBMS δεν καταλαβαίνει το νόηµα των πράξεων. (π.χ., δεν καταλαβαίνει πως και γιατί υπολογίζεται ο τόκος σε έναν τραπεζικό λογαριασµό) Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.26

Λίγα Στοιχεία για τη τησυνδροµικότητα Το DBMS εξασφαλίζει ότι η εκτέλεση των {T1,..., Tn} είναι ισοδύναµη (έχει το ίδιο αποτέλεσµα) µε την ΣΕΙΡΙΑΚΗ (serial) εκτέλεσητων T1... Tn. Πρινκάνει READ / WRITE σεµιαεγγραφή (αντικείµενοτηςβάσης) η οσοληψία ζητά το ΚΛΕΙ ΩΜΑ αυτού (LOCK), και περιµένει ώσπου να το πάρει. Όλα τα κλειδώµατα ελευθερώνονται στο τέλος της δοσοληψίας (Strict 2PL locking protocol.) Ιδέα: Ανκάποιαπράξητου Ti (π.χ. WRITE X) επηρεάζειτο Tj (π.χ., αυτόκάνει READ X), ένααπόαυτά, αςπούµετο Ti, θαπάρειτο κλειδίστο X πρώτοκαιτο Tj αναγκάζεταιναπεριµένει µέχρινα τελειώσει το Ti, δηλαδή, µπαίνει µια σειρά στις οσοληψίες. Τισυµβαίνειαντο Tj έχειήδηένακλειδίστο Y καιτο Ti ζητά αργότεραένακλειδίστο Y? (Deadlock!) Το Ti ήτο Tj αναγκάζεταιναεγκαταλείψει - abortedκαινα ξαναξεκινήσει! Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.27

Ατοµικότητα (Atomicity) Το DBMS διασφαλίζει την ατοµικότητα (η ιδιότητα «ή όλαήτίποτα») ακόµηκαιαντοσύστηµακαταπέσει (crash) στην διάρκεια µιας πράξης. Ιδέα: Κράτα ένα Ιστορικό ( log ) όλων των πράξεων του DBMS Πριν γίνει µια αλλαγή στην Βάση, το ανάλογο ιστορικό φυλάσσεται σε ασφαλές σηµείο. (WAL protocol) Οι µηχανισµοί του Λειτουργικού Συστήµατος ΕΝ είναι αρκετοί.) Μετά το crash, τα µερικά αποτελέσµατα µιας δοσοληψίας απαλείφονται (undone)µεχρήσητου log. Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.28

Απλούστευση της Αρχιτεκτονικής ενός DBMS Αυτές τα στρώµατα Λαµβάνουν υπόψη Concurrency Control και Recovery Το τυπικό DBMS έχει µια σειράαπόεπίπεδα / στρώµατα Αυτήείναιµιααπότις πιθανές αρχιτεκτονικές κάθε σύστηµα µπορεί να έχει κάποια άλλη παραλλαγή αυτής. Query Optimization and Execution Relational Operators Files and Access Methods Buffer Management Disk Space Management DB Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.29

ΟΙ ΧΡΗΣΤΕΣ ΤΩΝ DBMS ιαχειριστές (Database Administrators) - Υπεύθυνοι για την διαχείριση της Βάσης (βοηθούν χρήστες να ορίζουν όψεις, επιλέγουνεναλλακτικέςδοµέςµνήµηςκαιµεθόδουςπρόσβασης, επίσηςείναιυπεύθυνοιγιατηνασφάλειακαιτηνακεραιότητατηςβάσης, για την απόδοση του Συστήµατος, κλπ.) - Σχεδιαστές (Database Designers) - Υπεύθυνοι για τον Σχεδιασµό και Ανάπτυξη της Βάσης ΑναλυτέςΣυστηµάτωνκαιΠρογραµµατιστές (Application Programmers / Systems Analysts) - Αναπτύσσουν τις Εφαρµογές Τελικοί Χρήστες (End-Users) - Κάνουν χρήσεις των εφαρµογών, κάνουν ερωταποκρίσεις, κλπ. Περιστασιακοί (CASUAL USERS), Παραµετρικοί (PARAMETRIC) (π.χ., ταµίας τραπέζης έτοιµα από την εφαρµογή) και Εξειδικευµένοι (SOPHISTICATED) Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.30

ΑΛΛΟΙ ΣΗΜΑΝΤΙΚΟΙ ΧΡΗΣΤΕΣ Database Designers and Implementers - Αυτοί που αναπτύσσουν τα Ι ΙΑ τα DBMS Tool Developers - Αυτοίπουαναπτύσσουνεργαλείαγιακαλύτερηχρήσητων DBMS (design tools, performance tools, ειδικέςπροσβάσεις / διεπαφές.) Operators and Maintenance Personnel - Βοηθούν τον ιαχειριστή, κάνουν συντήρηση, κλπ. Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.31

Ενδεικτικοί Μισθοί SALARIES DB Developer DBA ALL Oracle SQL Server DB2 Sybase Access Contract Source: Dice Inc. $75,289 $83,170 $74,092 $80,885 $81,502 $69,455 $91,900 $82,430 $87,388 $82,019 $82,909 $85,489 $76,438 $99,900 Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.32

Ενδεικτικές εξιότητες Most common skills used by Database Administrators: Microsoft Office SQL Oracle DB TCP/IP Oracle Microsoft Access SQL Server Microsoft Exchange Visual Basic Top 10 certifications held by Database Administrators: Oracle8 Certified Database Administrator Oracle7 Certified Database Administrator Microsoft Certified Systems Engineer Microsoft Certified Database Administrator A+ Certification Microsoft Certified Professional + Internet Microsoft Office User Specialist '97 Network + Microsoft Certified Professional 2000 Certified Novell Administrator (NetWare 5 Track) Source: Dice Inc. Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.33

Γλώσσες σε ένα DBMS (1) ΓλώσσαΟρισµούτων εδοµένων --- Data Definition Language (DDL) - Χρησιµοποιείται για να ορισθεί το conceptual schema της Βάσης Αυτό αποθηκεύεται στον Κατάλογο (CATALOG). Συχνά, η DDL χρησιµοποιείται για τον ορισµό όψεων και φυσικών δοµών. Σε ορισµένα DBMS γίνεται διαχωρισµός µεταξύ: SDL - Storage Definition Language (φυσικέςδοµές) VDL - View Definition Language (όψεις) ΓλώσσαΕπεξεργασίας εδοµένων --- Data Manipulation Language (DML) - Για την πρόσβαση (retrieval) και αλλαγές των δεδοµένων (insert, delete, update) - υοβασικέςοικογένειες: Procedural DML, Declarative DML ( ιαδικαστικέςκαι ηλωτικές Γλώσσες) Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.34

LANGUAGES ASSOCIATED WITH A DBMS (2) Query Language - Ένα υποσύνολο µόνο για ερωταποκρίσεις - RETRIEVAL - Data Sub-language - Η DML και η DDL µαζί. Host Language - ΜιαΓΛΩΣΣΑΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ (COBOL, C, etc..) όπου εµφυτεύονται εντολές της DML Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.35

DBMS: Τρόποι Πρόσβασης Αυτόνοµη Query language Interface API (Application Programming Interface) για εµφυτευµένες Γλώσσες Pre-Compiler Procedure Calls (subroutines) Προσβάσεις µη-τεχνικών Χρηστών Menu-based, graphics-based, forms-based, φυσική γλώσσα, κλπ. Παραµετρικές Προσβάσεις (function keys) Προσβάσεις για Αναφορές RGL) Πρόσβαση του ιαχειριστή - DBA ηµιουργία Λογαριασµών, ικαιοδοσίες, κλπ Ρύθµιση παραγόντων Συστήµατος Αλλαγές Περιγραφών, οµών, κλπ. Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.36

ΒοηθητικάΠρογράµµατατου DBMS (UTILITIES) Λειτουργικότητα Loading δεδοµένα από αρχεία στην Βάση Backing up τα δεδοµένα σε Ταινίες Reorganizing οµές της Φυσικής Βάσης Report Generation Utilities Performance Monitoring Utilities ΆλλεςΛειτουργίες (sorting, user monitoring, data compression, κλπ.) Utilities του Καταλόγου Συστήµατος Αποθήκευσητωνπεριγραφών (schema descriptions), σχεδιαστικώναποφάσεων, προφίλτωνχρηστών, τυποποιήσεις, περιγραφέςεφαρµογών, κλπ. Ο ενεργός Κατάλογος είναι προσβάσιµος στους χρήστες και στο ίδιο το DBMS Το παθητικό λεξικό (data dictionary) είναι προσβάσιµο µόνο στους χρήστες Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.37

ΒήµαταγιατηνΧρήσηενός DBMS Προµήθεια του DBMS Εκπαίδευση Χρηστών Ορισµός των περιγραφών (Schemas) της Βάσης Εισαγωγή εδοµένων στη Βάση Υλοποίηση των Προγραµµάτων της Εφαρµογής Συνεχείς ΑΛΛΑΓΕΣ στη Βάση και την Εφαρµογή Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.38

Γιατί ΝΑ ΜΗΝ χρησιµοποιήσω DBMS ;;; Κόστος - Υψηλότατη αρχική επένδυση - Τεράστιο Πρόσθετο Κόστος (Overhead) για την ασφάλεια, ανάκαµψη ακεραιότητα, και συνδροµικότητα (κόστος στην απόδοση του Συστήµατος). Πότε ΕΝ Χρειάζεται για την εφαρµογή - Η Βάση εδοµένων µικρή και η Εφαρµογές είναι πολύ απλές και σταθερές (σε τέτοια περίπτωση, οι επιδόσεις λαµβάνοντας υπόψη και το overhead του DBMS πιθανόν να είναι χειρότερες µιας απλής υλοποίησης) - - εν απαιτείται πρόσβαση από πολλούς χρήστες Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.39

Ιστορική Αναδροµή (4) 1990-2000s (Πέµπτη Γενεά Μετά-Σχεσιακή Εποχή) - Η εποχή των ΣΥΝΘΕΤΩΝ ΟΝΤΟΤΗΤΩΝ σε Βάσεις εδοµένων (engineering objects, πολυµέσα - multimedia, software objects) - Object-Relational Database Systems Ενεργές (Active) Βάσεις εδοµένων, Intelligent Systems, Πολυµέσα Εξυπηρετητές / πελάτες Κατανεµηµένες (Multidatabases), Παραλληλοποίηση» Συστήµατα σε Προσωπικούς Υπολογιστές»Συστήµαταστο Internet (Web-based), Java, XML,»Αποθήκες εδοµένων (Data Warehouse) Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.40

Σχεσιακές και Αντικειµενοστραφείς Βάσεις Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.41

Πρώτη Γενεά Πελάτη-Εξυπηρετητή ΠΕΛΑΤΗΣ ΕΞΥΠΗΡΕΤΗΤΗΣ Υπηρεσίες Παρουσίασης Λογική παρουσίασης Λογική Εφαρµογής Επιχειρησιακοί Κανόνες Λογική εδοµένων Υπηρεσίες Βάσεων εδοµένων Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.42

Υπηρεσίες Παρουσίασης Αρχιτεκτονικά στοιχεία Παίρνει εισόδους και παρουσιάζει αποτελέσµατα Λογική Παρουσίασης Ελέγχει την σχέση µεταξύ χρήστη - εφαρµογής Λογική Εφαρµογής Υπολογισµοί, αποφάσεις, δράσεις για την εφαρµογή Επιχειρησιακοί Κανόνες Ολόκληρης της Επιχείρησης Λογική εδοµένων ηµιουργία µιας ερώτησης (π.χ. στην SQL) Υπηρεσίες Βάσεων εδοµένων Εξυπηρετεί τις αναφορές σε δεδοµένα Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.43

εύτερη Γενεά Client-Server ΠΕΛΑΤΗΣ Υπηρεσίες Παρουσίασης Λογική Παρουσίασης Υπηρεσίες Παρουσίασης Λογική Παρουσίασης ΕΞΥΠΗΡΕΤΗΤΗΣ Λογική Εφαρµογής Επιχειρησιακοί Κανόνες Λογική Εφαρµογής Επιχειρησιακοί Κανόνες ΕΞΥΠΗΡΕΤΗΤΗΣ Ε ΟΜΕΝΩΝ Λογική εδοµένων Υπηρεσίες Βάσεων εδοµένων Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.44

Υλικό και Λειτουργικό Σύστηµα Πελάτης Ένας επεξεργαστής PC (π.χ.., PowerPC, Power Mac) Windows XP, NT, 2000, Apple Mac, OS/2, Unix Εξυπηρετητής 2 έως 100 χρήστες µέχρι µεγάλες µηχανές (SMP, clusters, MPP) Windows NT, 2000, Novell Netware, Unix Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.45

Σηµερινή Τυπική ιάταξη - Αρχιτεκτονική Clients Web server Database server Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.46

Web και Βάσεις εδοµένων Πάνωαπό 1 ΙΣ. HTML pages, 15 terabytes Τεράστιος Πλούτος Πληροφοριών Βιβλιοπωλεία, Εστιατόρια, ΤαξιδιωτικόΥλικό, Αγορές, Λεξικά, Νέα, Χρηµαταγορές, Οδηγοί, Χάρτες, Πολλών Μορφών: κείµενα, εικόνες, φωνή, βίντεο Πολλών Τύπων: HTML, XML, postscript, pdf, JPEG, MPEG, MP3 Με Ιδιαίτερα υναµικά Χαρακτηριστικά 1 νέες σελίδες κάθε µέρα οµή γράφου µε συνδέσµους µεταξύ σελίδων (7-10 συνδέσµους) Εκατοντάδεςεκατοµµυρίωνερωτήσεις / επερωτήσεις την ηµέρα Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.47

Τεχνολογία ιοίκησης εδοµένων OLAP (Online Analytic Processing) ΑναλυτικήΕπεξεργασία Ανάλυση σε πολυδιάστατο χώρο» Πωλήσεις ΑΝΑ (Προϊόν, Πελάτη, Χρόνο)» Κύβος drill down, rollup Essbase, Commander, Oracle Express, SAS, Excel, SQL Server, Data Warehouses Νέα µορφή για Decision Support Systems (Συστήµατα Στήριξης Αποφάσεων) Redbrick, Oracle DW, Informix, Sybase, Micro Strategy Data Marts (Μικρότερα Data Warehouses) Data Mining (Εξόρυξη εδοµένων Πληροφοριών) Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.48

OLAP: Η έννοια του ΚΥΒΟΥ Sales Volumes M O D E L Mini Van Coupe Sedan Carr Gleaso n Clyde DEALERSHIP Blue Red W hite COLOR Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.49

Κλασσική Αρχιτεκτονική DW BUSINESS INTELLIGENCE (clients) OLAP Q&R DSS DM Data Mart Data Mart Administration REPOSITORY Agent Meta Database Data Warehouse Wrappers / Loaders Mediator Το MIDDLEWARE των Αποθηκών εδοµένων SOURCES Text File DB External data Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.50

ΕΞΕΛΙΞΗ στην Εφαρµογή και Τεχνολογία ιοίκησης // ιαχείρισης εδοµένων Απλή ιαχείριση εδοµένων Επιχειρησιακή ιαχείριση - ΟΠΣ Αρχές 80 Τέλη 80 Αρχές - Μέσα 90 Τέλη 90 21ος Αιώνας Προ- Σχεσιακά DBMS Πρώτα Σχεσιακά Client-server Σχεσιακά Επιχειρησιακή Κάλυψη Internet Computing Simple transactions, on-line backup & recovery Απλό OLTP Stored procedures, triggers Ενεργές Βάσεις εδοµένων Αποθήκες εδοµένων & Hi-end OLTP Scaleable OLTP, parallel query, partitioning, cluster support, row-level locking, high availability Support for all types of data, extensibility, objects Πακέτα & Κάθετες Εφαρµογές - Business Intelligence Middleware (messaging, queues, events) Java, CORBA, Web interfaces XML ) Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.51

DBMS : ΟιΠροϊστορικοίΠρωταγωνιστές Αυτά τα Συστήµατα παρουσιάστηκαν και έλαµψαν στην δεκαετία του 80 Πολλές εγκαταστάσεις ΑΚΟΜΗ υπάρχουν αλλά δεν γίνονται πωλήσεις και σιγά σιγά εξαφανίζονται IMS (IBM) -- Hierarchical Model (γλώσσα DL/1) I-D-S (Honeywell) -- Network DBTG (Integrated Data Store) IDMS (Cullinane) - Network (Integrated Data Mgmnt System) TOTAL (Cincom) - Network IMAGE (Hewlett-Packard) - Network SYSTEM 2000 (Intel-MRI) - Inverted (ad-hoc model) Other Inverted: ADABAS (Software AG), Model 204 (CCA)... Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.52

DBMS : ΟιΠρωταγωνιστές (α) ΣΗΜΕΡΑ ΕΧΟΥΝ ΜΕΙΝΕΙ ΤΡΙΑ (3) ΜΟΝΟ ΣΥΣΤΗΜΑΤΑ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ: DB2, σε κάθε IBM ή IBM-compatible πλατφόρµα (καιόχιµόνο!, Unix, Windows, κλπ.) ORACLE 10 (10g), σχεδόν παντού πρώτη σε µερίδιο αγοράς ειδικάσε Unix + µεγάλες εγκαταστάσεις Microsoft SQL Server 2005, σε Microsoft πλατφόρµες Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.53

DBMS : ΠαλιοίΠρωταγωνιστές SYBASE INFORMIX (Αγοράστηκε από IBM!) INGRES τώρα λέγεται, Computer Associates-Ask Group αλλά σβήνει και χάνεται από την αγορά Άλλοι (Φθίνουν ): Rdb (έκλεισε), Gupta Quadbase, Ralma, Watcom, XDB,... Οι (τέως) αναδυόµενοιστονκόσµοτων object-oriented: ILLUSTRA, O2 (έκλεισε), κλπ. Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.54

DBMS : ΕιδικοίΠρωταγωνιστές Οι MPP πρωταγωνιστές (massively parallel): Terradata (οµεγαλύτερος), Tandem (NonStop SQL), Oracle Parallel Server, Informix, Sybase (Navigator), DB2, DEC, (µερικοίέχουν κλείσει ήδη ) Οι µεγάλοι στον κόσµο των Windows / PC - MICROSOFT ΑCCESS - Powersoft, Gupta Χαρακτηριστικά: (a) SQL πρόσβαση (gateways) (b) Εξαίρεταγια Client-Server (DBMS) (c) Μοιάζουν πολύ µε τα «µεγάλα» DBMS OPEN DBMS (Ανοικτάσυστήµατα) MySQL, OpenSQL, Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.55

DBMS : Παλιοί Πρωταγωνιστές σε PC Ακόµηστο PC Paradox (Borland) Q&A (Symantec) FileMaker Pro (Claris Corp.) DataEase Express Approach (Lotus) Alpha Four ΑκόµηΠαλαιότερα: xbase, dbase, FoxPro, MicroRIM... Συνήθως έχουν ένα υποσύνολο των δυνατοτήτων των µεγάλων DBMS Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.56

ΤΕΛΙΚΕΣ ΣΚΕΨΕΙΣ Το DBMS χρησιµοποιείται για την συντήρηση ΜΕΓΑΛΩΝ Βάσεων εδοµένων. Μεταξύ των πλεονεκτηµάτων, είναι η Ανάκαµψη από Καταστροφέςτουσυστήµατος, ησυνδροµικότητα, γρήγορηανάπτυξηεφαρµογών, ακεραιότητα, ασφάλεια. Πεδία αφαίρεσης βοηθούν στην ανεξαρτησία των προγραµµάτων από τις Φυσικές οµές. Οι ιαχειριστές (DBA) έχουν υπεύθυνες εργασίες και πληρώνονται πολύ καλά! DBMS R&D είναι από τις πλέον ελκυστικές περιοχές της Πληροφορικής (τέλειος συνδυασµός Πράξης Θεωρίας) Ι.Β -- Εισαγωγή στις Βάσεις εδοµένων Σελίδα 1.57