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

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Προχωρημένα Θέματα Βάσεων Δεδομένων
Advertisements

Big Data + Data Analytics
Λειτουργικά Συστήματα ΙΙ
HTML FTP, E -mail, Gopher Web Pages “Browse the Web” “Program the Web” Η εξέλιξη του Web Τεχνολογία Web Services XML Προγραμματισμός Παρουσίαση T C P/IP.
Μοντέλο Οντοτήτων-Συσχετισμών
Ορισμοί Σχεσιακού Μοντέλου και (απλές)Τροποποιήσεις Σχέσεων στην SQL
 Ιστορία  ACID  CAP Theorem  Eventual consistency και BASE  Enter NoSQL  Χαρακτηριστικά NoSQL βάσεων  NoSQL taxonomy  Ρολόγια Lamport 2.
Entity-Relationship Παραδείγματα Πληροφοριακά Συστήματα και Βάσεις Δεδομένων Φροντιστήριο 1 Δαμιανός Χατζηαντωνίου.
Σχεσιακό Μοντέλο Δεδομένων
PHP/MYSQL ΠΑΡΟΥΣΙΑΣΗ ΣΤΑ ΠΛΑΙΣΙΑ ΤΟΥ ΜΑΘΗΜΑΤΟΣ ΕΠΟΙΚΟΙΝΩΝΙΑ ΑΝΘΡΩΠΟΥ-ΜΗΧΑΝΗΣ ΤΥΡΟΛΟΓΟΥ ΓΛΥΚΕΡΙΑ ΑΜ 875 ΡΙΖΟΥ ΔΕΣΠΟΙΝΑ ΑΜ 816.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL.
ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Διασύνδεση Java Εφαρμογών με ΒΔ Π. Φιτσιλής 1.
9 Η Γλώσσα SQL  Εισαγωγή – Βασικές Έννοιες  Τύποι Δεδομένων  Ορισμός Δεδομένων (data definition)  Χειρισμός Δεδομένων (data manipulation)
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή.
Προηγμένες Υπηρεσίες Τηλεκπαίδευσης στο Τ.Ε.Ι. Σερρών Το εκπαιδευτικό υλικό που ακολουθεί αναπτύχθηκε στα πλαίσια του έργου «Προηγμένες Υπηρεσίες Τηλεκπαίδευσης.
Βάσεις Δεδομένων Ενότητα 2: Συστήματα Διαχείρισης Βάσεων Δεδομένων Βασίλης Βουτσινάς Τμήμα: Οργάνωση & Διοίκηση Επιχειρήσεων.
ΤΑΞΙΝΟΜΗΣΗ ΤΩΝ ΠΕΡΙΦΕΡΕΙΩΝ ΜΕ ΒΑΣΗ ΤΟ ΒΑΘΜΟ ΑΝΑΠΤΥΞΗΣ ΑΝΑΠΤΥΓΜΕΝΕΣ ΠΕΡΙΦΕΡΕΙΕΣ Ισόρροπης ανάπτυξης Κορεσμένες ή συμφορημένες - Υψηλό βαθμό ανάπτυξης- Υπερσυγκέντρωση.
Calvin:Fast Distributed Transactions for Partitioned Database System Ηλίας Σπανός Αντωνία Νικολάου Calvin: Fast Distributed Transactions for Partitioned.
Πληροφορική Κεφάλαιο 4 ο : Βάσεις Δεδομένων Κλεπετσάνης Παύλος, Επίκουρος Καθηγητής Τμήμα Φαρμακευτικής.
ΔΙΑΔΙΚΑΣΙΕΣ & ΑΝΑΠΤΥΞΗ ΕΞΑΓΩΓΩΝ B2B-B2D Πριν μόλις χρόνια η ανάπτυξη σε ξένες αγορές εξαρτιόταν αποκλειστικά από τις διαδικασίες των εκθέσεων και.
Μάθημα 4 Server side προγραμματισμός Βάσεις δεδομένων PHP.
Καλώς ήλθατε, μαθητές! Όνομα δασκάλου. Πρόγραμμα τάξης 8:15 - 9:00Το σχολείο ξεκινά, παίρνουμε παρουσίες 9: :00Ανάγνωση και έκθεση 10: :00Ορθογραφία.
Ο ΡΟΛΟΣ ΤΗΣ ΚΑΙΝΟΤΟΜΙΑΣ ΣΤΗΝ ΥΛΟΠΟΙΗΣΗ ΤΗΣ ΝΕΑΣ ΒΙΟΜΗΧΑΝΙΚΗΣ ΠΟΛΙΤΙΚΗΣ
Εισαγωγή στις βάσεις δεδομένων
Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας
Σύστημα διαχείρισης αρχείων (file system)
Βάσεις Δεδομένων Ι 4η διάλεξη
Εισαγωγή στις βάσεις δεδομένων - Η ανατομία μιας βάσης δεδομένων
Σχεσιακό Μοντέλο Δεδομένων
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Βάσεις Δεδομένων ΙΙ 9η διάλεξη
Εισαγωγικά Θέματα Διαχείρισης Δικτύων
Περιγραφή Ενότητας Σκοπός του μαθήματος αυτού και κεντρικός σκοπός του μαθήματος των Βάσεων Δεδομένων Ι είναι η παρουσίαση των απαραίτητων εννοιών ώστε.
Βάσεις Δεδομένων Ι Εισαγωγή
Διδάσκουσα: Ευαγγελία Πιτουρά
Θερινό Σχολείο, 14 – 20 Ιουλίου 2014
Βάσεις Δεδομένων Ι Επανάληψη
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
“Κατασκευή εφαρμογής διαχείρισης προγράμματος διδασκαλίας εκπαιδευτικών ιδρυμάτων με έλεγχο της ακεραιότητας, προσπέλασης και ασφάλειας των δεδομένων”
Β. Μάγκλαρης 14/11/2016 ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ Αρχιτεκτονικές Διαχείρισης Δικτύων SNMP MIB - Αντικείμενα & Ορισμοί.
9 Η Γλώσσα SQL Εισαγωγή – Βασικές Έννοιες Τύποι Δεδομένων
Η Epsilon Net σας καλωσορίζει
Περιγραφή Ενότητας Σκοπός του μαθήματος είναι να κατανοήσουμε την έννοια της όψης της γλώσσας SQL. Χ. Σκουρλάς.
Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL
Βάσεις Δεδομένων Εισαγωγή για το Εργαστήριο Δρ. Τιάκας Ελευθέριος
Βάσεις Δεδομένων Κωδικός Μαθήματος: MK741
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Βάσεις Δεδομένων ΙΙ Triggers
Αρχιτεκτονική Συστημάτων
Εισαγωγή στις Βάσεις Δεδομένων
Όνομα σχολείου Ημερομηνία
23ο Συνέδριο Ακαδημαϊκών Βιβλιοθηκών
Βάσεις Δεδομένων ΙΙ Ενότητα 8: Συναλλαγές (Transactions) Χ. Σκουρλάς
Μία πρακτική εισαγωγή στην χρήση του R
Εισαγωγή στα Ευρετήρια
Databases Θ. Βαρβαρίγου Καθηγήτρια ΕΜΠ Τηλ
Εισαγωγή στις Βάσεις Δεδομένων
Σχεσιακεσ βασεισ δεδομενων
Κυκλοφοριακή αγωγή Ένα πρόγραμμα για να μάθουμε να κυκλοφορούμε με ασφάλεια. Β΄ Δημοτικού 12ου Δημοτικού Σχολείου Βόλου Υπεύθυνοι προγράμματος : Θωμάς.
POSTGRESQL Η PostgreSQL είναι ένα αντικείμενο-σχεσιακό σύστημα διαχείρισης βάσεων δεδομένων (object relational database management system - ORDBMS) και.
Βάσεις Δεδομένων 28/11/2018 Ενότητα Γ6.Μ2 (Βασικά Δομικά Συστατικά Στοιχεία και Κύρια Αντικείμενα μιας Βάσης Δεδομένων ) Ο Δάσκαλος.
ΤΙΤΛΟΣ ΤΗΣ ΕΚΔΗΛΩΣΗΣ ΣΑΣ
Βάσεις Δεδομένων 16/2/2019 Ενότητα Γ6.3 (Δημιουργία και Αποθήκευση Βάσης Δεδομένων και Πίνακα. Καθορισμός Πεδίων του Πίνακα, Τύπων Δεδομένων και Ιδιότητες.
ΠΑΡΑΔΕΙΓΜΑΤΑ SQL Ή ΠΑΡΑΔΕΙΓΜΑΤΑ SQL Ή
Καλώς ήλθατε, μαθητές! Όνομα δασκάλου.
Ενότητα 1: «Προσανατολισμού» (orientation) - Εισαγωγή Χ. Σκουρλάς
SQL Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Εφαρμογές ιστού και δημιουργία ιστοσελίδων
Programmable Logic Device PLD. Φύλλο δεδομένων (Data Sheet) των TTL ICs.
Παράδειγμα στόχος Έμπνευση Ενέργειες/εργασίες Πόροι Σκέψεις
Μεταγράφημα παρουσίασης:

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

1 Βάσεις Δεδομένων

Αποθηκευμένη με δομημένο τρόπο Δυνατότητα διασύνδεσης Τι είναι; Δομημένη πληροφορία Αποθηκευμένη με δομημένο τρόπο Δυνατότητα διασύνδεσης Δυνατότητα διαχείρισης

Ποιος κάνει τη δουλειά; Τα συστήματα διαχείρισης βάσης δεδομένων Διαχείριση: Create - δημιουργία Read - ανάγνωση Update - επεξεργασιά Delete - διαγραφή

Σχεσιακές βάσεις δεδομένων Πίνακες Συσχετίσεις Τρόπος λειτουργίας Σχεσιακές βάσεις δεδομένων Πίνακες Συσχετίσεις

Πως σχετίζονται Κλειδιά Ξένα κλειδια Τύποι δεδομένων

Που βρίσκω ΒΔ; Παντού

Τι χρειάζομαι για να φτιάξω ΒΔ Χρειάζομαι σύστημα διαχείρισης βάσης δεδομένων Είναι αρκετό; ΟΧΙ

Τι χρειάζομαι για να φτιάξω ΒΔ Χρειάζομαι σύστημα διαχείρισης βάσης δεδομένων Είναι αρκετό; ΟΧΙ

Τι κάνω τη ΒΔ Με τη βάση δεδομένων έχω τη δυνατότητα να δημιουργήσω μεγάλης κλίμακας συστήματα λογισμικού που να μπορούν να διαχειρίζονται μεγάλους όγκους δεδομένων

Τι χρειάζομαι εκτός από τη ΒΔ Να δημιουργήσω ένα λογισμικό που θα πραγματοποιεί τις «διαδικασίες» Να χρησιμοποιήσω ένα «λογισμικό διασύνδεσης» με τη ΒΔ για να μπορώ να ανταλλάξω πληροφορία

Βελτιστοποίηση σχήματος Ασφάλεια συστήματος Βήματα δημιουργίας ΒΔ Προδιαγραφές Διάγραμμα ER Σχήμα ΒΔ Εφαρμογή σε ένα ΣΔΒΔ Βελτιστοποίηση σχήματος Ασφάλεια συστήματος

Χρειάζομαι το κομμάτι αυτό το οποίο είναι εμφανές στον τελικό χρήστη! Και μετά…; Μετά (ή και παράλληλα) σχεδιάζω ένα πρόγραμμα (λογισμικό) το οποίο να διαχειρίζεται τη ΒΔ. Μα δεν το κάνει το ΣΔΒΔ? Χρειάζομαι το κομμάτι αυτό το οποίο είναι εμφανές στον τελικό χρήστη!

Αρχιτεκτονική Λογισμικό Σύστημα διασύνδεσης στη ΒΔ (ORM) Σύστημα διαχείρισης βάσης δεδομένων ΒΔ

2 NOSQL

RDBMS Relational Data Base Management System …Codd 70s

Κανόνας ACID Atomic Consistent Isolated Durable

Κατανεμημένα συστήματα Πολλαπλοί υπολογιστές και συστήματα λογισμικού που μπορούν να επικοινωνήσουν μέσα από ένα δίκτυο ώστε να επιτελέσουν μαζί έναν κοινό σκοπό

Αξιοπιστία Επεκτασιμότητα Κατανομή των πόρων Ταχύτητα Γιατί τα χρειάζομαι Αξιοπιστία Επεκτασιμότητα Κατανομή των πόρων Ταχύτητα Ανοιχτά συστήματα Επιδόσεις

Αντιμετώπιση προβλημάτων Λογισμικό Δικτύωση Ασφάλεια Προβλήματα Αντιμετώπιση προβλημάτων Λογισμικό Δικτύωση Ασφάλεια

Scale out (Οριζόντια κλιμάκωση): να προστεθούν επιπλέον συστήματα Κλιμάκωση! Δυνατότητα επέκτασης ενός συστήματος ώστε να καλύπτει κάθε είδους ανάγκες (πόρους) Scale up (Κάθετη κλιμάκωση): να προστεθούν επιπλέον πόροι σε ένα σύστημα για να μπορεί να ανταποκρίνεται καλύτερα Scale out (Οριζόντια κλιμάκωση): να προστεθούν επιπλέον συστήματα

Μη σχεσιακές βάσεις δεδομένων NOSQL NOT ONLY SQL Μη σχεσιακές βάσεις δεδομένων Σχεδιάστηκε για να καλύψει ανάγκες κατανεμημένων αποθηκών δεδομένων που έχουν πολύ μεγάλη κλίμακα δεδομένων αποθήκευσης και βέβαια μεγάλες ανάγκες αλληλεπίδρασης με τα δεδομένα

Γιατί noSQL Η δημιουργία δεδομένων και η κατανάλωση web services, web applications, mobile applications με πρόσβαση σε μεγάλα data είναι μια πραγματικότητα

Γιατί noSQL

Δομημένα και οργανωμένα δεδομένα Σύγκριση RDBMS Δομημένα και οργανωμένα δεδομένα Δομημένα και αυστηρή γλώσσα ερωτημάτων Τα δεδομένα και οι σχέσεις αποθηκεύονται στη ΒΔ DML, DDL Αυστηρή ακεραιότητα δεδομένων. noSQL Not only SQL Δεν υπάρχει δηλωτική γλώσσα ερωτημάτων Δεν υπάρχει προκαθορισμένο σχήμα Τρόποι αποθήκευσης: Key-Value pairs, Column store, document store, Graph DB Ακεραιότητα γεγονότων και όχι δεδομένων CAP Theorem Προέχει υψηλή απόδοση, επεκτασιμότητα, διαθεσιμότητα

Consistency (συνέπεια) Availability (διαθεσιμότητα) Θεώρημα CAP Consistency (συνέπεια) Availability (διαθεσιμότητα) Partitioning [tolerance] (ανεκτικότητα στο διαχωρισμό)

AP: κάποια από τα δεδομένα μπορεί να μην είναι ακριβή Θεώρημα CAP Αν και θεωρητικά όλα πρέπει να ισχύουν, αρκεί να έχω 2 από τα 3 για να έχω ΒΔ CA: single site cluster. Όλοι οι κόμβοι να είναι σε επαφή. Αν χαθεί ένας καταστρέφεται στο σύνολο CP: κάποια δεδομένα μπορεί να είναι απροσπέλαστα, το υπόλοιπο λειτουργεί μια χαρά AP: κάποια από τα δεδομένα μπορεί να μην είναι ακριβή

Θεώρημα CAP

Εύκολη επεκτασιμότητα Κατανεμημένα συστήματα Χαμηλότερο κόστος Στα θετικά… Εύκολη επεκτασιμότητα Κατανεμημένα συστήματα Χαμηλότερο κόστος Ευελιξια (στη μη ύπαρξη δομημένου σχήματος) Δεν υπάρχουν περίπλοκες σχέσεις

Δεν υπάρχει κάποια τυποποίηση (είναι εξ ορισμού fuzzy logic) όμως Δεν υπάρχει κάποια τυποποίηση (είναι εξ ορισμού fuzzy logic) Είναι πολύ περιορισμένος ο τρόπος ερωτημάτων Τι γίνεται αν το σύστημα δεν έχει εν τέλει ακρίβεια;

Δεν υπάρχει κάποια τυποποίηση (είναι εξ ορισμού fuzzy logic) όμως Δεν υπάρχει κάποια τυποποίηση (είναι εξ ορισμού fuzzy logic) Είναι πολύ περιορισμένος ο τρόπος ερωτημάτων Τι γίνεται αν το σύστημα δεν έχει εν τέλει ακρίβεια;

Key-value stores Column-oriented Graph Document oriented Κατηγορίες noSQL Key-value stores Column-oriented Graph Document oriented

Όλοι οι βασικοί τύποι noSQL Key-value Όλοι οι βασικοί τύποι noSQL Μπορούν να διαχειριστούν τεράστιους όγκους δεδομένων Το «κλειδί» είναι ένα μοναδικό αναγνωριστικό και η τιμή μπορεί να είναι οτιδήποτε αδόμητο (string) ή δομημένο (JSON, BLOB, etc) Εμφανίζονται στις περιπτώσεις AP (CAP theorem) Redis, dynamo, ryak

Τα δεδομένα αποθηκεύονται σε στήλες Column oriented Τα δεδομένα αποθηκεύονται σε στήλες Οι τιμές σε μια στήλη αποθηκεύονται σε σειρά (συνεχόμενα) Κάθε στήλη έχει δικό της χώρο αποθήκευσης Έχει τεράστιες δυνατότητες συμπίεσης Έχει υψηλές επιδόσεις σε ερωτήματα συνάθροισης Big Table, Cassandra, SimpleDB, etc

Σχηματικά

Graph Τα δεδομένα αποτελούνται από έναν πεπερασμένο αριθμό από διατεταγμένα ζεύγη που ονομάζονται ακμές και οντότητες που ονομάζονται κόμβοι OrientDB, Neo4J, etc

Αποθηκεύονται σε ομάδες με παραπλήσια δεδομένα MongoDB, CouchDB, etc Document Oriented Συλλογές από έγγραφα Δεν υπάρχει κάποια συνοχή μεταξύ τους απλά κάθε ένα έχει ένα κλειδί και τα περιεχόμενα του εγγράφου είναι η τιμη Αποθηκεύονται σε ομάδες με παραπλήσια δεδομένα MongoDB, CouchDB, etc

3 Κατασκευή ΒΔ

Ας βρούμε τι θα φτιάξουμε Διαδικασία Ας βρούμε τι θα φτιάξουμε

…τι σημαίνει το κάθε ένα στον πίνακα που θα φτιάξω ER Σχέσεις… Πολλά με πολλά Ένα με πολλά Πολλά με ένα …τι σημαίνει το κάθε ένα στον πίνακα που θα φτιάξω

Σχήμα Πίνακες της ΒΔ

Εφαρμογή του συστήματος και εκτέλεση βασικών εντολών Εφαρμογή σε DBMS Εφαρμογή του συστήματος και εκτέλεση βασικών εντολών