Lecture 3: Introduction III



Σχετικά έγγραφα
schema Άρθρο 2 Καθήκοντα

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

(1 ο μάθημα)

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

ΒΙΟΛΟΓΙΑ ΓΕΝΙΚΗΣ ΠΑΙ ΕΙΑΣ Γ ΛΥΚΕΙΟΥ & ΕΠΑ.Λ. Β 14 ΜΑΪΟΥ 2011 ΑΠΑΝΤΗΣΕΙΣ ÍÔÁÂÏÓ ÁÈÇÍÁ

Η εξέλιξη της επιστηµονικής σκέψης και του πειραµατισµού στην Ελληνιστική

7. ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΕΛΛΗΝΙΚΗΣ ΝΟΗΜΑΤΙΚΗΣ ΓΛΩΣΣΑΣ ΤΗΣ ΠΡΩΤΗΣ ΤΑΞΗΣ ΤΟΥ ΔΗΜΟΤΙΚΟΥ ΣΧΟΛΕΙΟΥ

ΥΠΟΥΡΓΕΙΟ ΕΘΝΙΚΗΣ ΠΑΙ ΕΙΑΣ & ΘΡΗΣΚΕΥΜΑΤΩΝ. ΙΑΧΕΙΡΙΣΤΙΚΗ ΑΡΧΗ του ΕΠΕΑΕΚ ΓΡΑΦΕΙΟ Ο.Π.Σ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΝΝΟΙΑ CLIENT-SERVER COMPUTING

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

Ο Οδικός Χάρτης για την Ελλάδα της δημιουργίας

Σηµειώσεις στο ταξινοµούµε

ΚΩΣΤΑΣ ΣΥΡΓΟΥΔΗΣ_επιµόρφωση β ΜΑΘΗΜΑ: Γλώσσα Γ τάξης, ανθολόγιο «Ο ωραίος Δαρείος», της Σοφίας Ζαραµπούκα.

Ελένη Σκούρτου Πανεπιστήµιο Αιγαίου. Από το σπίτι στο σχολείο: Οι οµιλητές και οι γλώσσες τους

ΤΙΜΟΛΟΓΙΟ ΜΕΛΕΤΗΣ Τιµαριθµική 2012Γ

ΝΕΟΕΛΛΗΝΙΚΗ ΓΛΩΣΣΑ Γ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ

Σηµειώσεις στις Εµπορικές Εταιρίες

ΥΠ.Ε.Π.Θ. / ΠΑΙ ΑΓΩΓΙΚΟ ΙΝΣΤΙΤΟΥΤΟ ΕΠΙΧΕΙΡΗΣΙΑΚΟ ΠΡΟΓΡΑΜΜΑ «ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ»

5 η Ενότητα Κουλτούρα και στρατηγική

ΤΜΗΜΑ ΗΜΟΣΙΩΝ ΣΧΕΣΕΩΝ & ΕΠΙΚΟΙΝΩΝΙΑΣ

Αφήγηση. Βασικά στοιχεία αφηγηµατικού κειµένου:

Βρήκαμε πολλά φυτά στο δάσος, αλλά και ήλιο, νερό, αέρα, έδαφος!

Περίληψη Εκδήλωσης. I. Ποια είναι η σχέση της έννοιας της λογοδοσίας µε την Ανοιχτή Κοινωνία;

14.00 µ.µ µ.µ. ένα (1) άτοµα (προετοιµασία παρασκευή) π.µ π.µ. δύο (2) άτοµα (προετοιµασία παρασκευή)

ΤΟ ΝΕΟ ΑΣΦΑΛΙΣΤΙΚΟ ΤΟΠΙΟ

Συµπεράσµατα από την ανάλυση συχνοτήτων στη Γεωµετρία Α Λυκείου. Για το 1 ο θέµα που αφορά τη θεωρία:

«Πολιτιστικές διαδροµές στα µεταλλευτικά τοπία της Kύθνου»

Αναλυτικό Πρόγραµµα Σπουδών του Μαθήµατος. Α Τάξη 1 ου Κύκλου Τ.Ε.Ε. 2 ώρες /εβδοµάδα. Αθήνα, Απρίλιος 2001

Προγραμματισμός ΙΙ (Java) 6. Διαχείριση δεδομένων

ΤΙΤΛΟΣ I ΕΥΡΩΠΑΪΚΑ ΣΧΟΛΕΙΑ

/νση: ΧΑΡΑΚΟΠΟΥΛΟΣ ΧΡΗΣΤΟΣ Μ. Αλεξάνδρου 49, 66100, ράµα Τηλ&φαξ: , κιν.: info@akademia.

ΥΠΟΜΝΗΜΑ ΣΕΒΕ ΣΤΟ ΥΠΟΥΡΓΕΙΟ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΟΙΚΟΝΟΜΙΚΩΝ Θεσσαλονίκη,

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

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

Ερµού & Κορνάρου 2 ΤΗΛ: FAX: olme@otenet.gr Αθήνα, 3/3/08 Α.Π.: 656

ΠΡΟΣ: ΚΟΙΝ: ΘΕΜΑ: Ενηµερωτικό σηµείωµα για το πρόβληµα της παράνοµης υλοτοµίας και ειδικά αυτό της καυσοξύλευσης

Ακολουθούν όλα τα σχετικά έγγραφα - αποφάσεις για το ωράριο, όπως οµόφωνα ψηφίστηκαν και επικυρώθηκαν από το συνέδριο στο Λουτράκι το 2007

ΕΓΧΕΙΡΙ ΙΟ ΛΕΙΤΟΥΡΓΙΑΣ ΚΑΙ ΟΡΓΑΝΩΣΗΣ

Α Β

Η υποστήριξη της επαγγελματικής μάθησης μέσα από την έρευνα-δράση: διαδικασίες και αποτελέσματα

ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ για το εκπαιδευτικό σενάριο: ΕΚΛΕΙΨΕΙΣ

ΝΑΙ ΣΤΗΝ ΕΥΡΩΠΗ - ΟΧΙ ΣΤΗ ΣΥΝΘΗΚΗ ΤΟΥ ΑΜΣΤΕΡΝΤΑΜ

ΑΞΙΟΛΟΓΗΣΗ ΤΩΝ ΜΑΘΗΤΩΝ ΤΗΣ Β ΛΥΚΕΙΟΥ

Όμιλος Λογοτεχνίας. Δράκογλου Αναστασία, Κιννά Πασχαλίνα

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΚΟΙΝΟΤΗΤΑΣ

«Φιλολογικό» Φροντιστήριο Επαναληπτικό διαγώνισμα στη Νεοελληνική Γλώσσα. Ενδεικτικές απαντήσεις. Περιθωριοποίηση μαθητών από μαθητές!

Αναλυτικό Πρόγραµµα Σπουδών του Μαθήµατος. Α Τάξη 1 ου Κύκλου Τ.Ε.Ε. 3 ώρες /εβδοµάδα. Αθήνα, Απρίλιος 2001

Απομόνωση χλωροφύλλης

Oδηγία 94/33/ΕΚ του Συµβουλίου της 22ας Ιουνίου 1994 για την προστασία των νέων κατά την εργασία

Φρύγανα, ο θησαυρός: ο πλούτος ενός ταπεινού οικοσυστήµατος

Ι.Ε.Κ. Ε ΕΣΣΑΣ ΦΘΙΝΟΠΩΡΙΝΟ ΕΞΑΜΗΝΟ ΕΙ ΙΚΟΤΗΤΑ: ΕΙ ΙΚΟΣ ΜΗΧΑΝΟΓΡΑΦΗΜΕΝΟΥ ΛΟΓΙΣΤΗΡΙΟΥ & ΦΟΡΟΤΕΧΝΙΚΟΥ ΓΡΑΦΕΙΟΥ ΜΑΘΗΜΑ: ΛΟΓΙΣΤΙΚΗ ΚΟΣΤΟΥΣ Ι

ΠΡΑΣΙΝΟΙ ΤΟΙΧΟΙ - ΠΡΑΣΙΝΑ ΣΧΟΛΕΙΑ

περισσότερο από το γεγονός του ότι αυτό δεν ήταν τότε ένα ζήτηµα έγκρισης του ίδιου του κοινοβουλευτισµού αλλά κριτικής στην αστική εξουσία.

Τα «µονοπάτια» του Σκιρώνειου Κέντρου Κηφισιάς

Εισηγητής: Εµµανουήλ Σταµατάκης. Επιβλέπουσα: Χατζάκη Μαρία ΗΡΑΚΛΕΙΟ

Βιβλιοπαρουσίαση: Χτίζοντας ένα δηµοκρατικό και ανθρώπινο σχολείο

ΒΙΟΛΟΓΙΑ ΓΕΝΙΚΗΣ ΠΑΙ ΕΙΑΣ 2010 ΕΚΦΩΝΗΣΕΙΣ

35η ιδακτική Ενότητα ΕΝΟΧΙΚΕΣ ΣΧΕΣΕΙΣ ( ΕΝΟΧΙΚΟ ΙΚΑΙΟ)

Γ. ΙΩΑΝΝΟΥ, «ΣΤΟΥ ΚΕΜΑΛ ΤΟ ΣΠΙΤΙ»

Έφη Κατσαδήµα, Αθηνά Νέγρη, Χρυσάνθη Παλαµά

ΣΥΝΤΟΝΙΣΤΕΣ ΟΜΑΔΑΣ PROJECT ΑΝΘΡΩΠΙΣΤΙΚΕΣ ΕΠΙΣΤΗΜΕΣ: ΟΜΑΔΑ PROJECT ΑΝΘΡΩΠΙΣΤΙΚΕΣ ΕΠΙΣΤΗΜΕΣ:

Α. ΚΑΤΑΣΤΑΤΙΚΟ ΚΟΙΝΟΠΡΑΞΙΑΣ ΜΕ ΤΗΝ ΕΠΩΝΥΜΙΑ

qwφιertyuiopasdfghjklzxερυυξnmηq σwωψerβνtyuςiopasdρfghjklzxcvbn mqwertyuiopasdfghjklzxcvbnφγιmλι qπςπζαwωeτrtνyuτioρνμpκaλsdfghςj

ΕΛΛΗΝΙΚΗ ΗΜΟΚΡΑΤΙΑ ΝΟΜΟΣ ΘΕΣΣΑΛΟΝΙΚΗΣ Ο ΗΜΑΡΧΟΣ ΘΕΣΣΑΛΟΝΙΚΗΣ /ΝΣΗ ΟΙΚΟΝΟΜΙΚΗΣ & ΤΑΜΕΙΑΚΗΣ ΙΑΧΕΙΡΙΣΗΣ ΤΜΗΜΑ ΠΡΟΚΗΡΥΞΕΩΝ & ΗΜΟΠΡΑΣΙΩΝ

ΚΕΦΑΛΑΙΟ 9 ΑΞΙΟΛΟΓΗΣΗ ΕΦΑΡΜΟΓΗΣ «ΕΝΑ ΟΝΕΙΡΙΚΟ ΤΑΞΙΔΙ ΣΤΗΝ ΚΝΩΣΟ» - ΠΕΡΙΓΡΑΦΗ ΔΙΑΔΙΚΑΣΙΑΣ ΚΑΙ ΑΝΑΛΥΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ

ΣΥΝΕΝΤΕΥΞΗ ΤΥΠΟΥ. Η ολοκληρωμένη προσέγγιση θα εφαρμοστεί με τα παρακάτω Εργαλεία

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

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

ΤΕΙ ΚΑΛΑΜΑΤΑΣ. ΑΡΓΥΡΗ ΔΗΜΗΤΡΑ Σχολής Διοίκησης και Οικονομίας Τμήμα Χρηματοοικονομικής και Ελεγκτικής Επιστήμης Εισηγητής :Λυγγίτσος Αλέξανδρος

ΣΗΜΕΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ ΤΗΣ ΘΕΣΣΑΛΟΝΙΚΗΣ ΠΟΥ ΠΕΡΙΛΑΜΒΑΝΟΝΤΑΙ ΣΤΗ ΛΙΣΤΑ ΜΕΤΑΡΡΥΘΜΙΣΕΩΝ. Η ελληνική κυβέρνηση επαναβεβαιώνει το σχέδιό της να:

Γ Ι Ώ Ρ Γ Ο Σ ΧΑΤΖΗΜΙΧΆΛΗΣ Ο ΖΩΓΡΆΦΟΣ Α.Κ.

ΤΙΜΟΛΟΓΙΟ Η/Μ ΕΡΓΑΣΙΩΝ

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

ΞΕΝΕΣ ΓΛΩΣΣΕΣ ΞΕΝΕΣ ΓΛΩΣΣΕΣ

Με το λογισµικό kidspiration για τo νηπιαγωγείο

ΙΑ ΙΚΑΣΙΑ Σ ΕΠ ΠΟΛΙΤΙΚΗ ΠΡΟΜΗΘΕΙΩΝ ( Π.3.4.1) 1. ΣΚΟΠΟΣ

ΑΠΟΛΥΤΗΡΙΕΣ ΕΞΕΤΑΣΕΙΣ Γ ΤΑΞΗΣ ΗΜΕΡΗΣΙΟΥ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΠΑΡΑΣΚΕΥΗ 15 ΜΑΪΟΥ 2009 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΝΕΟΕΛΛΗΝΙΚΗ ΓΛΩΣΣΑ ΓΕΝΙΚΗΣ ΠΑΙΔΕΙΑΣ

Βασιλική Σελιώτη, Φιλόλογος Λαμπριανή Ματθαίου, Σύμβουλος Φιλολογικών Μαθημάτων

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Πρώτες βοήθειες και αντιλήψεις του πληθυσμού στους Νομούς Χανίων, Ηρακλείου, Λασιθίου και Μεσσηνίας

ΒΙΟΛΟΓΙΑ Γ ΤΑΞΗΣ ΕΝΙΑΙΟΥ ΛΥΚΕΙΟΥ ΓΕΝΙΚΗΣ ΠΑΙ ΕΙΑΣ 2005 ΕΚΦΩΝΗΣΕΙΣ

Η Αγορά Ηλεκτρικής Ενέργειας στην Κύπρο έχει οργανωθεί σε τομείς που υπόκεινται στις ακόλουθες ρυθμίσεις:

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

& ../../ , :.. : FAX :... & :...

Ειδικότητα: Ύφασµα Ένδυση

ΠΕΡΙΕΧΟΜΕΝΑ ΕΙΣΑΓΩΓΙΚΟ ΣΗΜΕΙΩΜΑ 13 Α' ΜΕΡΟΣ ΑΠΟ ΤΟΝ ΠΟΛΕΜΟ ΤΟΥ 1897 ΣΤΟ ΓΟΥΔΙ

«Αναδιάρθρωση της καλλιέργειας του καπνού µε άλλες ανταγωνιστικές καλλιέργειες»

1. ΕΡΩΤΗΣΗ: Οι ρυθμίσεις του νόμου για το Ασφαλιστικό θα είναι μόνιμες; Οι περικοπές του σταθερές; ΑΠΑΝΤΗΣΗ:

ΠΕΡΙΦΕΡΕΙΑΚΗ ΕΦΟΡΕΙΑ ΑΘΗΝΩΝ. Αθήνα, 19 Ιανουαρίου 2015 Α ΝΑΚΟΙΝΩΣΗ 3/15. ΠΡΟΣ : Όλους τους Βαθμοφόρους της Αθήνας ΚΟΙΝΟΠΟΙΗΣΗ :

Μάριος Χάκκας. Το Ψαράκι της γυάλας

Πρόσκληση. Με συναδελφικούς χαιρετισµούς, Ο συντονιστής του προγράµµατος

Αθήνα 14 Ιουνίου 2007 A.Π.

Ερωτηµατολόγιο Επιχειρήσεων µε Γενική Άδεια Παροχής Ταχυδροµικών Υπηρεσιών Ποσοτικά εδοµένα Έτους 2009 (Χρήση από 1/1/2009 έως 31/12/2009)

Υποψήφιοι Σχολικοί Σύμβουλοι

Ξαναδίνουμε ζωή στο δικό μας ΗΡΑΚΛΕΙΟ Δ.Α.Σ.Η. ΓΙΩΡΓΟΣ ΜΑΣΤΟΡΑΚΟΣ. Δημοτική Ανεξάρτητη Συνεργασία Ηρακλείου

Μη ανταγωνιστικές δραστηριότητες και παιχνίδια (υλικό)

Ο συγγραφέας χρησιμοποιεί συνδυασμό μεθόδων για την ανάπτυξη της έβδομης παραγράφου.

Ο ΡΟΛΟΣ ΤΟΥ ΧΗΜΙΚΟΥ ΜΗΧΑΝΙΚΟΥ ΣΤΗΝ ΥΓΙΕΙΝΗ ΚΑΙ AΣΦΑΛΕΙΑ - OHSAS 18001

ΙΑΚΗΡΥΞΗ 37 /2014 ΗΜΟΣΙΟΥ ΠΛΕΙΟ ΟΤΙΚΟΥ ΙΑΓΩΝΙΣΜΟΥ ΓΙΑ ΤΗΝ ΕΚΜΙΣΘΩΣΗ ΤΟΥ ΚΥΛΙΚΕΙΟΥ ΤΟΥ Γ.Ν. ΚΟΜΟΤΗΝΗΣ

ΠΑΝΕΛΛΑΔΙΚΕΣ ΕΞΕΤΑΣΕΙΣ Γ ΤΑΞΗΣ ΗΜΕΡΗΣΙΟΥ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ & ΠΑΝΕΛΛΗΝΙΕΣ ΕΞΕΤΑΣΕΙΣ Γ ΤΑΞΗΣ ΗΜΕΡΗΣΙΟΥ ΕΠΑΛ (ΟΜΑΔΑ Β )

Ι ΑΚΤΙΚΟ ΣΕΝΑΡΙΟ: Αυτή είναι η οικογένειά μου

Transcript:

Department of Computer Science University of Cyprus EPL342 Databases Lecture 3: Introduction III System Concepts and Architecture (Chapters 2.2-2.7, Elmasri-Navathe 5ED) ιδάσκων: Παναγιώτης Ανδρέου http://www.cs.ucy.ac.cy/courses/epl342 3-1

Περιεχόµενο ιάλεξης Κεφάλαιο 2 2.2) Αρχιτεκτονική Τριών Σχηµάτων και Ανεξαρτησία εδοµένων 2.3) Γλώσσεςκαι ιεπαφέςβάσεων εδοµένων 2.4-2.6) Περιβάλλον & Αρχιτεκτονικές Συστηµάτων ιαχ. Βάσεων εδ. ιασύνδεση Συσκευών Αποθήκευσης Συγκεντρωτικές Πελάτη-Εξυπηρετητή (2-επιπεδων & Ν-επιπέδων) Κατανεµηµένες 3-2

Αρχιτεκτονική Τριών-Σχηµάτων Εξωτερικό Επίπεδο Εννοιολογικό Επίπεδο Εσωτερικό Επίπεδο 3-3

Αρχιτεκτονική Τριών-Σχηµάτων Αρχιτεκτονική Τριών Σχηµάτων (Three-Schema Architecture): Μια αφαιρετικήαρχιτεκτονική Σ Β (DBMS)η οποία αποσκοπεί στο να διαχωρίσειτις εφαρµογές χρηστών από τη φυσική αποθήκευση των δεδοµένων, δηλ. Της Ανεξαρτησίας Προγράµµατος- εδοµένων. Της Υποστήριξης Πολλαπλών Όψεων. Μια τέτοια αρχιτεκτονική δεν χρησιµοποιείται ρητά σε κάθε εµπορική DBMS, αλλά είναι χρήσιµη για να επεξηγηθεί η οργάνωση βάσεων δεδοµένων 3-4

Αρχιτεκτονική Τριών-Σχηµάτων Η Αρχιτεκτονική αυτή ορίζει Σχήµατα (Schemas)σε τρία διαφορετικά επίπεδα: Εσωτερικά Σχήµατα: Για περιγραφή των φυσικών δοµών αποθήκευσης (storage structures) και των δοµών ανάκτησης (access paths) Χρήση Φυσικού Μοντέλου εδοµένωνπ.χ., τα δεδοµένα είναι οργανωµένα σε αρχεία σωρών, ταξινοµηµένα αρχεία, κτλ. Εννοιολογικά Σχήµατα:Για περιγραφή της δοµήςκαι των περιορισµών σε µορφή κατανοητή στους χρήστες Χρήση Εννοιολογικού (Conceptual) ή Αναπαραστατικού (Representational) Μοντέλου εδοµένων. Εξωτερικά Σχήµατα:Για περιγραφή των όψεωνπου βλέπουν οι χρήστες. Και πάλι χρήση εννοιολογικού σχήµατος 3-5

Ανεξαρτησία εδοµένων Λογική Ανεξαρτησία εδοµένων (Logical Data Independence) Η δυνατότητα αλλαγής του εννοιολογικού σχήµατος χωρίς να απαιτείται να αλλάξει το εξωτερικό σχήµα (αυτό που βλέπει ο χρήστης) Φυσική Ανεξαρτησία εδοµένων (Physical Data Independence) Η δυνατότητα αλλαγής του εσωτερικού σχήµατος χωρίς να απαιτείται να αλλάξει το εννοιολογικό σχήµα. Παράδειγµα: Θεωρήστε ότι οι εγγραφές της οντότητας STUDENTS είναι αποθηκευµένες στο δίσκο σε τυχαία διάταξη Εάν προστεθεί ένα ευρετήριο (index) το οποίο µας επιτρέπει να βρίσκουµε γρηγορότερα τους φοιτητές βάσει της ηλικίαςτους τότε θα έχει αλλάξει το φυσικό σχήµα. 3-6

Γλώσσες Βάσεων εδοµένων Όταν ολοκληρωθεί η φάση της εννοιολογικής µοντελοποίησηςτων απαιτήσεων του χρήστη τότε ένας DBA ή DB Designer προχωρεί στην υλοποίηση της βάσης δεδοµένων µε τα ακόλουθα: Α) Γλώσσα Ορισµού ( οµής) εδοµένων Data Definition Language (DDL), Χρησιµοποιείται από τον DBA και τον DB Σχεδιαστή για τον ορισµό του Εννοιολογικού Σχήµατος (Αναπαραστατικού Μοντέλου) µιας βάσης. Β) Γλώσσα Χειρισµού (Επεξεργασίας) εδοµένων Data Manipulation Language (DML), π.χ,, Χρησιµοποιείται στον ορισµό ανακτήσεων (retrievals) και ενηµερώσεων (updates) 3-7

Γλώσσες Βάσεων εδοµένων Α) Γλώσσα Ορισµού εδοµένων [ Data Definition Language (DDL)]: Παράδειγµα σε SQL-DDL*: CREATE TABLE products ( product_no integer, name text, price numeric ); * ηµιουργεί ένα πίνακα products µε 3 πεδία (γνωρίσµατα) Σε πολλές DBMSs, το DDLχρησιµοποιείται επίσης για τον ορισµό των εσωτερικών (π.χ., indexes) και εξωτερικώνσχηµάτων (π.χ., views). Π.χ., CREATE VIEW expensive_products AS SELECT name, price FROM products WHERE price>100; * ηµιουργεί ένα νοητό πίνακα που περιλαµβάνει µόνο τα ακριβά προϊόντα 3-8

Γλώσσες Βάσεων εδοµένων Γλώσσα Χειρισµού εδοµένων [ Data Manipulation Language (DML)]: Παράδειγµα SQL-DML*: SELECT * FROM products; * Επιστρέφει όλα τα προϊόντα στον πίνακα products; Οι εντολές DML (υπόγλωσσα δεδοµένων) µπορούν να ενσωµατωθούν σε µια γλώσσα προγραµµατισµού (π.χ., C, C++, C#, Java, κτλ.). Εναλλακτικά, µπορούµε να εκτελέσουµε τέτοιες εντολές απευθείας από τη γραµµή εντολών κάποιου κελύφους SQL (psql/postgresql, SQL*Plus/Oracle, SQLCMD/SQLServer κτλ) ή ακόµα και µέσω γραφικού περιβάλλοντος διαπροσωπείας 3-9

Γλώσσες Βάσεων εδοµένων Program or Script (JAVA, PHP, κτλ. DML DBMS shell (π.χ., psql) Graphical User Interface (π.χ., Access, SQLServer Management Console) DML DML DBMS 3-10

Γλώσσες Βάσεων εδοµένων To psql (PostgreSQL) DBMS shell SQL Query Builder στον SQLServer Management Studio 3-11

Τύποι DML Υψηλού Επιπέδου ή Μη-διαδικαστικές (δηλωτικές): Π.χ., η SQL είναι µια τέτοια γλώσσα. Συνολοστρεφείς ( set -oriented) Επιστρέφουν τα αποτελέσµατα σε σύνολα και όχι µια-πλειάδα-κάθεφορά (record-at-a-time) ηλωτικές (declarative) Ο χρήστης δηλώνει ΤΙθέλει να ανακτήσει και όχι ΠΩΣθέλει να το ανακτήσει., Π.χ., SELECT * FROM product; Χαµηλού Επιπέδου ή ιαδικαστικές (imperative): Εγγραφοστρεφείς ( tuple -oriented) Ανακτούν τα δεδοµένα µια-εγγραφή-κάθε-φορά (record-at-a-time) Παρέχουν βρόχους επανάληψης, εντολές επιλογής, λογικές παραστάσεις, κτλ µαζί µε δείκτες πλοήγησης (cursors). Προεκτάσεις της SQL (δηλ., η SQL3) παρέχουν τέτοιες δυνατότητες Π.χ., ANSI SQL/PSM (Persistent Stored Modules), PL/SQL (Oracle), TSQL (Microsoft 3-12 EPL342: SQL Databases Server), - Demetris SPL (Informix), Zeinalipour PL/pgPSM (University(PostgreSQL) of Cyprus)

Τύποι DML Παράδειγµα Χαµηλού Επιπέδoυ ( ιαδικαστικής) SQL (µε χρήση του PL/pgPSM στη PostgreSQL) * εν χρειάζεται να καταλάβετε την ακριβή λειτουργία του πιο κάτω κώδικα CREATE OR REPLACE FUNCTION hello(uid integer) RETURNS varchar AS $$ BEGIN DECLARE real_name varchar; -- Get real name SET real_name = (SELECT name FROM Users WHERE Users.uid = hello.uid); RETURN 'Hello, ' real_name; END; $$ LANGUAGE plpgsql; Ένα τέτοιο πρόγραµµα θα καταχωρείτω απευθείας στη βάση δεδοµένων Η Εκτέλεση του θα γινόταν µε αποστολή µιας εντολής SQL, π.χ., SELECT hello(123); SELECT hello(123); 3-13

Εργαλεία Ωφελιµότητας Βάσεων (Database System Utilities) Τέτοια εργαλεία συνοδεύουν τα εµπορικά και µη Σ Β, και εκτελούν λειτουργίες όπως: Φόρτωση εδοµένων (συµπεριλαµβανοµένου και της µετατροπής µεταξύ διαφορετικών τύπων βάσεων). Αντιγραφή/Επαναφορά (Backup/Restore) Αναδιοργάνωση Αρχείων, κτλ. (π.χ., Shrink, Detach) Κτλ.. System Utilities στον SQL Server Πολλά επιπλέον utilities προσφέρονται ως επεκτάσεις σε µια DBMS (π.χ., SQL Server Management Studio). Τέτοιες προεκτάσεις συµπερ.: Αναφορές, Έλεγχος 3-14 Επίδοσης, EPL342: Databases Έλεγχος - Demetris Χρηστών, Zeinalipour Συµπίεση (University of Πινάκων, Cyprus) κτλ)

Εργαλεία Ωφελιµότητας Βάσεων (Database System Utilities) Ανάλυση Εκτέλεσης Επερωτήσεων στον SQL Server 2008 (SQL Server Management Studio) 3-15

Θα µελετήσουµε τρία επί µέρους θέµατα: 1. ιασύνδεση Συσκευών Αποθήκευσης ( ίσκων) 2. ιασύνδεση Πελάτη και DBMS 3. ιασύνδεση µεταξύ DBMS 3-16

1) ιασύνδεση Συσκευών Αποθήκευσης Απ ευθείας σύνδεσης µέσω κάποιας διεπαφής (αλλά όχι µέσω δικτύου) (π.χ., SCSI, SATA, κτλ.) Π.χ., Direct Attached Storage (DAS) Σύνδεση µέσω ικτύου µε σύστηµα αποθήκευσης Network attached storage (NAS) Χρησιµοποιείται σήµερα και σε µικρές επιχειρήσεις, οικίες µε χρήση πρωτοκόλλων όπως TCP/IP, κτλ. Σύνδεση µέσω (οπτικού)κόµβου (switch)µε αποθηκευτές Storage area network (SAN) Για µεγάλες επιχειρήσεις µε πολλά TB δεδοµένων (σήµερα υπάρχουν και λύσεις πάνω από TCP/IP το οποίο οδηγεί στη σύγκλιση NAS/SAN) 3-17

1) ιασύνδεση Συσκευών Αποθήκευσης Direct Attached Storage (DAS) Παράρτηµα (Λεµεσός) Κεντρικό DB 1 Παράρτηµα (Λευκωσία) DB 2 DAS Αποθηκευτής Γ DB DB SAN ίκτυο Τηλεπικοινωνιών Αποθηκευτής Β Παράρτηµα (Πάφος) Αποθηκευτής Α DB DB DB NAS Network attached storage (NAS) DB 3-18

1) ιασύνδεση Συσκευών Αποθήκευσης RAID*: Είδος DASόπου γίνεται διάταξη πολλαπλών δίσκων το οποίο δίνει την εντύπωση ενός µεγάλου δίσκου υψηλών αποδόσεων! Στόχοι: Αύξηση Επίδοσης Γιατί; Οι δίσκοι έχουν µηχανικά συστατικά είναι αργοί! Αύξηση Αξιοπιστίας Γιατί; Μηχανικά και Ηλεκτρονικά Συστατικά έχουν σφάλµατα! RAID*: Redundant Array of Independent* (Inexpensive) Disks (Εφεδρικές Συστοιχίες Ανεξαρτήτων ίσκων ) 3-19

2) ιασύνδεση Πελάτη και DBMS Α) Κεντρικοποιηµένη (Centralized) DBMS: Συνδυάζει τα πάντα σε ένα ενιαίο σύστηµα Συµπεριλαµβανοµένου: Λογισµικού DBMS, υλικού, προγραµµάτων εφαρµογών και λογισµικό αλληλεπίδρασης χρήστη. Οι Χρήστες συνδέονται µέσω τερµατικώνκαι η επεξεργασία γίνεται κεντρικοποιηµένα. Mainframe Databases 3-20

2) Πελάτη/Εξυπηρετητή 2-επιπέδων Β) Βασική Αρχιτ. Πελάτη-Εξυπ. 2-επιπέδων 2-επιπέδων: To λογισµικόείναι κατανεµηµένοπάνω από δυο συστήµατα: τον πελάτη και τον εξυπηρετητή Οι πελάτες ζητούν υπηρεσίεςαπό τους εξυπηρετητές (διακοµιστές) όπως απαιτείται. Π.χ, Print servers, File servers, DBMS servers, Web servers, Email servers, κτλ. Θα ορίσουµε τώρα τι είναι πελάτης και τι διαθέτης. 3-21

2) Πελάτη/Εξυπηρετητή 2-επιπέδων Πελάτης (Client): Εάν πληροί τα ακόλουθα: Προϋπόθεση Α: ιαθέτουν κάποιας µορφής τοπικής µονάδας επεξεργασίας Π.χ., PC, Workstations, Smartphonesαλλά ακόµη και µηχανές χωρίς δευτερεύουσα µνήµητα οποία τρέχουν το λογισµικό του «Πελάτη» εν είναι δηλαδή απλά τερµατικά (γιατί θα ήταν Κεντρικοποιηµένη Αρχ.) Προϋπόθεση Β: Συνδεδεµένα µε τους εξυπηρετητές µέσω κάποιου είδους δικτύου. LAN, WIFI, κτλ. Προϋπόθεση Γ: ιαθέτουν διεπαφές (interfaces)στο χρήστη µέσω των οποίων µπορεί να έχει πρόσβαση στις υπηρεσίεςτου εξυπηρετητή. 3-22

2) ιαθέτης DBMS ιαθέτης (Server) ή ιακοµιστής: Ένα σύστηµα το οποίο παρέχει το υλικόκαι το λογισµικόγια την παροχή υπηρεσιών προς τους πελάτες. Υπηρεσίες: Εκτέλεση Επερωτήσεων και οσοληψιών Ένα µηχάνηµα µπορεί να φέρει ένα ή περισσότερους ρόλους, π.χ.,: 3-23

2) ιαθέτης DBMS Οι Σχεσιακοί (Relational) DBMS servers ονοµάζονται συχνά και SQL servers, query servers, ή transaction servers Οι εφαρµογές των πελατών κάνουν χρήση κάποιας βιβλιοθήκης (Application Program Interface - API) για να συνδεθούν µε ένα εξυπηρετητή µε κάποιο προτυποποιηµένο τρόπο: ODBC: Open Database Connectivity standard (υλοποιήσεις για όλα τα Λειτουργικά Συστήµατα) JDBC: JAVA DB Connectivity για πρόσβαση από προγράµµατα JAVA (η JAVA είναι cross-platform) Τόσο ο πελάτης όσο και ο εξυπηρετητής πρέπει να είναι εφοδιασµένοι µε κατάλληλο λογισµικό για χρήση των πιο πάνω standards (ακολουθεί παράδειγµα) 3-24

2) Παράδειγµα Σύνδεσης Πελάτη-Εξυπηρετητή Παράδειγµα χρήσης JDBC driver σε ένα πελάτη γραµµένο σε JAVA για σύνδεση µε βάση PostgreSQL εγκατεστηµένη στο ίδιο µηχάνηµα. import java.sql.*; // Αντίστοιχος Μηχανισµός στο.net Framework public static void main (String[] args) { Class.forName("org.postgresql.Driver"); Connection conn = DriverManager.getConnection( "jdbc:postgresql:test", some-user, some-password ); String query = "SELECT * FROM EMPLOYEE WHERE employeeid="; query += 14; // παράδειγµα δυναµικής SQL (παράγεται διαφορετική εντολή SQL ανάλογα µε την ροη εκτέλεσης του προγράµµατος Statement stmt = conn.createstatement(); ResultSet rs =; stmt.executequery(query) while ( rs.next() ) {.} // Επεξεργασία αποτελεσµάτων στη JAVA 3-25

2) Πελάτη-Εξυπηρετητή 2-επιπέδων Ένα πρόγραµµα πελάτη µπορεί να συνδέεται µε πολλαπλά DBMSs, τα οποία ονοµάζονται κάποτε πηγές δεδοµένων Πηγές εδοµένων (Data Sources)µπορεί να είναι από απλά αρχεία µέχρι δεδοµένα εξειδικευµένου λογισµικού το οποίο διαχειρίζεται δεδοµένα (όχι απαραίτητα DBMS) Π.χ., Αρχεία Excel, Αρχεία Κειµένου, XML, κτλ. Τα DBMSs ξεκίνησαν ως κεντρικοποιηµένα, στη συνέχεια αποκεντρώθηκε το UIκαι οι εφαρµογές. Η εκτέλεση επερωτήσεων (queries) και οι δοσοληψίες παρέµειναν στο διαθέτη. Η SQLµπορεί να θεωρηθεί ότι είναι το «πρωτόκολλο» µεταξύ του πελάτηκαι του εξυπηρετητή (αυτό µε το οποίο ζητά λειτουργίες ο πελάτης από την εξυπηρετητή) 3-26

2) Πελάτη/Εξυπηρετητή 3-επιπέδων Γ) Πελάτη-Εξυπ. 3-επιπέδων Η έννοια αυτή δηµιουργήθηκε µε την εξέλιξη του Web. 3-επιπέδων: To λογισµικό είναι κατανεµηµένο πάνω από 3 συστήµατα: τον Πελάτη, τον Application Server ( ιαθέτης Εφαρµογών ή Web Server) και τον Εξυπηρετητή Οι πελάτες ζητούν υπηρεσίες από τους Application Servers, αυτοί µε την σειρά τους από τους εξυπηρετητές. Οι Application Servers επιβάλλουν διάφορους υψηλού επιπέδου περιορισµούςπου επιβάλει ένας οργανισµός (π.χ., διαδικασίες, κανονισµούς, κτλ) και κυρίως ασφάλεια Ένας πελάτης ΕΝ µπορεί να έχει άµεση πρόσβαση στη DBMS! Π.χ, IBM Websphere Server, Oracle Weblogic Server,.NET Framework, Adobe s JRUN, Apple s WebObjects, SAP Netweaver, 3-27

2) Πελάτη/Εξυπηρετητή 3-επιπέδων Παράδειγµα Αρχιτεκτονικής 3-επιπέδων µε πολλαπλούς ιαθέτες Εφαρµογών Server (DBMS) Client Application Server 3-28

2) Πελάτη/Εξυπηρετητή 3-επιπέδων Πελάτης Επίπεδο Παρουσίασης ιαθέτης Εφαρµογών Επίπεδο Επιχειρηµατικής Λογικής ιαθέτης Βάσης εδοµένων υο διαφορετικές αναπαραστάσεις της αρχιτεκτονικής 3 επιπέδων Επίπεδο Υπηρεσιών Βάσεως εδοµένων 3-29

3) ιασύνδεση µεταξύ DBMS Τυπική Αρχιτεκτονική Client/Server ή Centralized Παράρτηµα (Λεµεσός) Παράρτηµα (Πάφος) DB 1 Κεντρικό Παράρτηµα DB 2 (Λευκωσία) ίκτυο Τηλεπικοινωνιών Παράρτηµα (Λάρνακα) Παράρτηµα (Αµµόχωστος) Παράρτηµα (Κερύνεια) 3-30

3) ιασύνδεση µεταξύ DBMS Κατανεµηµένη Αρχιτεκτονική Παράρτηµα 6 Παράρτηµα 5 Παράρτηµα 4 ίκτυο Τηλεπικοινωνιών Παράρτηµα 1 Παράρτηµα 2 Παράρτηµα 3 3-31

3) ιασύνδεση µεταξύ DBMS Κατανεµηµένη Βάση (DDB) Μια συλλογήαπό λογικά συσχετιζόµενες αλλά ανεξάρτητεςβάσεις δεδοµένων προσβάσιµες πάνω από ένα δίκτυο υπολογιστών. Κατανεµηµένο Συσ. ιαχ. Βασ. εδ. (DDBMS) Α γενικό λογισµικό σύστηµα το οποίο διαχειρίζεται κατανεµηµένες βάσεις κάνοντας την κατανοµή (δεδοµένων, φόρτου, κτλ.,) διαφανή στο χρήστη. Οι περισσότερες βάσεις (εµπορικές και µη) προσφέρουν κάποιου είδους δυνατότητες/επεκτάσειςγια να µετατραπεί η βάση σε κατανεµηµένη βάση δεδοµένων. Βασικό Πρόβληµα: H έλλειψη κοινών αποδεκτών προτύπων (δηλ., η κατανοµή περιορίζεται κυρίως µεταξύ οµογενών (όµοιων) βάσεων) 3-32

3) ιασύνδεση µεταξύ DBMS Οµογενής (Homogeneous): Κάθε site τρέχει την ίδια DBMS (π.χ., όλες είναι εφοδιασµένες µε Oracle) Το Λειτουργικό Σύστηµα µπορεί ωστόσο να διαφέρει µεταξύ των sites: Π.χ., ΌΛΑ τα sites τρέχουν Oracle xor DB2, xor Sybase xorκάποιο άλλο DBMS. TαΛειτουργικά Συστήµατα των κόµβων µπορεί να είναι ένα κράµα από Linux, Window, Unix, etc. Oracle Βάση 3-33

3) ιασύνδεση µεταξύ DBMS Ετερογενής (Heterogeneous): ιαφορετικά sites τρέχουν διαφορετικά DBMSs (ή ακόµη non-relational DBMSs). Τύποι Ετερογενών Βάσεων Οµόσπονδα (Federated): Ένα Σχήµα.Κάθε site µπορεί να τρέχει διαφορετικό DBMS αλλά η πρόσβαση στη πληροφορία οργανώνεται µέσω ενός ενιαίου σχήµατος (schema) Υπάρχει κεντρικοποιηµένη διαχείριση ασφάλειας. εν υπάρχει πολύ τοπική αυτονοµία σε κάθε βάση. Πολλαπλών Βάσεων (Multidatabase): Καθόλου Σχήµα. εν υπάρχει ένα καθολικό εννοιολογικό σχήµα. Για πρόσβαση στη πληροφορία οργανώνεται από τις εφαρµογές. Παράδειγµα EPL342: Databases Πολλαπλών - Demetris Zeinalipour Βάσεων (University (Multidatabase) of Cyprus) 3-34

3) ιασύνδεση µεταξύ DBMS Στις κατανεµηµένες βάσεις σηµαντικό είναι το θέµα της Κατάτµησης (Fragmentation) και Αντίγραφα (Replication) Π.χ., Οι πίνακες EMPLOYEE, PROJECT, and WORKS_ONµπορεί να κατατµηθούν οριζόντια (fragmented horizontally) και να αντιγραφούν (replication) για αύξηση επίδοσης, αξιοπιστίας, κτλ. oπως πιο κάτω: Fragmentation / Replication fragmentation 3-35