Κατέβασμα παρουσίασης
Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε
1
Βάσεις Δεδομένων Ι 10η διάλεξη
2
1 Βάσεις Δεδομένων
3
Αποθηκευμένη με δομημένο τρόπο Δυνατότητα διασύνδεσης
Τι είναι; Δομημένη πληροφορία Αποθηκευμένη με δομημένο τρόπο Δυνατότητα διασύνδεσης Δυνατότητα διαχείρισης
4
Ποιος κάνει τη δουλειά;
Τα συστήματα διαχείρισης βάσης δεδομένων Διαχείριση: Create - δημιουργία Read - ανάγνωση Update - επεξεργασιά Delete - διαγραφή
5
Σχεσιακές βάσεις δεδομένων Πίνακες Συσχετίσεις
Τρόπος λειτουργίας Σχεσιακές βάσεις δεδομένων Πίνακες Συσχετίσεις
6
Πως σχετίζονται Κλειδιά Ξένα κλειδια Τύποι δεδομένων
7
Που βρίσκω ΒΔ; Παντού
8
Τι χρειάζομαι για να φτιάξω ΒΔ
Χρειάζομαι σύστημα διαχείρισης βάσης δεδομένων Είναι αρκετό; ΟΧΙ
9
Τι χρειάζομαι για να φτιάξω ΒΔ
Χρειάζομαι σύστημα διαχείρισης βάσης δεδομένων Είναι αρκετό; ΟΧΙ
10
Τι κάνω τη ΒΔ Με τη βάση δεδομένων έχω τη δυνατότητα να δημιουργήσω μεγάλης κλίμακας συστήματα λογισμικού που να μπορούν να διαχειρίζονται μεγάλους όγκους δεδομένων
11
Τι χρειάζομαι εκτός από τη ΒΔ
Να δημιουργήσω ένα λογισμικό που θα πραγματοποιεί τις «διαδικασίες» Να χρησιμοποιήσω ένα «λογισμικό διασύνδεσης» με τη ΒΔ για να μπορώ να ανταλλάξω πληροφορία
12
Βελτιστοποίηση σχήματος Ασφάλεια συστήματος
Βήματα δημιουργίας ΒΔ Προδιαγραφές Διάγραμμα ER Σχήμα ΒΔ Εφαρμογή σε ένα ΣΔΒΔ Βελτιστοποίηση σχήματος Ασφάλεια συστήματος
13
Χρειάζομαι το κομμάτι αυτό το οποίο είναι εμφανές στον τελικό χρήστη!
Και μετά…; Μετά (ή και παράλληλα) σχεδιάζω ένα πρόγραμμα (λογισμικό) το οποίο να διαχειρίζεται τη ΒΔ. Μα δεν το κάνει το ΣΔΒΔ? Χρειάζομαι το κομμάτι αυτό το οποίο είναι εμφανές στον τελικό χρήστη!
14
Αρχιτεκτονική Λογισμικό Σύστημα διασύνδεσης στη ΒΔ (ORM)
Σύστημα διαχείρισης βάσης δεδομένων ΒΔ
15
2 NOSQL
16
RDBMS Relational Data Base Management System …Codd 70s
17
Κανόνας ACID Atomic Consistent Isolated Durable
18
Κατανεμημένα συστήματα
Πολλαπλοί υπολογιστές και συστήματα λογισμικού που μπορούν να επικοινωνήσουν μέσα από ένα δίκτυο ώστε να επιτελέσουν μαζί έναν κοινό σκοπό
19
Αξιοπιστία Επεκτασιμότητα Κατανομή των πόρων Ταχύτητα
Γιατί τα χρειάζομαι Αξιοπιστία Επεκτασιμότητα Κατανομή των πόρων Ταχύτητα Ανοιχτά συστήματα Επιδόσεις
20
Αντιμετώπιση προβλημάτων Λογισμικό Δικτύωση Ασφάλεια
Προβλήματα Αντιμετώπιση προβλημάτων Λογισμικό Δικτύωση Ασφάλεια
21
Scale out (Οριζόντια κλιμάκωση): να προστεθούν επιπλέον συστήματα
Κλιμάκωση! Δυνατότητα επέκτασης ενός συστήματος ώστε να καλύπτει κάθε είδους ανάγκες (πόρους) Scale up (Κάθετη κλιμάκωση): να προστεθούν επιπλέον πόροι σε ένα σύστημα για να μπορεί να ανταποκρίνεται καλύτερα Scale out (Οριζόντια κλιμάκωση): να προστεθούν επιπλέον συστήματα
22
Μη σχεσιακές βάσεις δεδομένων
NOSQL NOT ONLY SQL Μη σχεσιακές βάσεις δεδομένων Σχεδιάστηκε για να καλύψει ανάγκες κατανεμημένων αποθηκών δεδομένων που έχουν πολύ μεγάλη κλίμακα δεδομένων αποθήκευσης και βέβαια μεγάλες ανάγκες αλληλεπίδρασης με τα δεδομένα
23
Γιατί noSQL Η δημιουργία δεδομένων και η κατανάλωση web services, web applications, mobile applications με πρόσβαση σε μεγάλα data είναι μια πραγματικότητα
24
Γιατί noSQL
25
Δομημένα και οργανωμένα δεδομένα
Σύγκριση RDBMS Δομημένα και οργανωμένα δεδομένα Δομημένα και αυστηρή γλώσσα ερωτημάτων Τα δεδομένα και οι σχέσεις αποθηκεύονται στη ΒΔ DML, DDL Αυστηρή ακεραιότητα δεδομένων. noSQL Not only SQL Δεν υπάρχει δηλωτική γλώσσα ερωτημάτων Δεν υπάρχει προκαθορισμένο σχήμα Τρόποι αποθήκευσης: Key-Value pairs, Column store, document store, Graph DB Ακεραιότητα γεγονότων και όχι δεδομένων CAP Theorem Προέχει υψηλή απόδοση, επεκτασιμότητα, διαθεσιμότητα
26
Consistency (συνέπεια) Availability (διαθεσιμότητα)
Θεώρημα CAP Consistency (συνέπεια) Availability (διαθεσιμότητα) Partitioning [tolerance] (ανεκτικότητα στο διαχωρισμό)
27
AP: κάποια από τα δεδομένα μπορεί να μην είναι ακριβή
Θεώρημα CAP Αν και θεωρητικά όλα πρέπει να ισχύουν, αρκεί να έχω 2 από τα 3 για να έχω ΒΔ CA: single site cluster. Όλοι οι κόμβοι να είναι σε επαφή. Αν χαθεί ένας καταστρέφεται στο σύνολο CP: κάποια δεδομένα μπορεί να είναι απροσπέλαστα, το υπόλοιπο λειτουργεί μια χαρά AP: κάποια από τα δεδομένα μπορεί να μην είναι ακριβή
28
Θεώρημα CAP
29
Εύκολη επεκτασιμότητα Κατανεμημένα συστήματα Χαμηλότερο κόστος
Στα θετικά… Εύκολη επεκτασιμότητα Κατανεμημένα συστήματα Χαμηλότερο κόστος Ευελιξια (στη μη ύπαρξη δομημένου σχήματος) Δεν υπάρχουν περίπλοκες σχέσεις
30
Δεν υπάρχει κάποια τυποποίηση (είναι εξ ορισμού fuzzy logic)
όμως Δεν υπάρχει κάποια τυποποίηση (είναι εξ ορισμού fuzzy logic) Είναι πολύ περιορισμένος ο τρόπος ερωτημάτων Τι γίνεται αν το σύστημα δεν έχει εν τέλει ακρίβεια;
31
Δεν υπάρχει κάποια τυποποίηση (είναι εξ ορισμού fuzzy logic)
όμως Δεν υπάρχει κάποια τυποποίηση (είναι εξ ορισμού fuzzy logic) Είναι πολύ περιορισμένος ο τρόπος ερωτημάτων Τι γίνεται αν το σύστημα δεν έχει εν τέλει ακρίβεια;
32
Key-value stores Column-oriented Graph Document oriented
Κατηγορίες noSQL Key-value stores Column-oriented Graph Document oriented
33
Όλοι οι βασικοί τύποι noSQL
Key-value Όλοι οι βασικοί τύποι noSQL Μπορούν να διαχειριστούν τεράστιους όγκους δεδομένων Το «κλειδί» είναι ένα μοναδικό αναγνωριστικό και η τιμή μπορεί να είναι οτιδήποτε αδόμητο (string) ή δομημένο (JSON, BLOB, etc) Εμφανίζονται στις περιπτώσεις AP (CAP theorem) Redis, dynamo, ryak
34
Τα δεδομένα αποθηκεύονται σε στήλες
Column oriented Τα δεδομένα αποθηκεύονται σε στήλες Οι τιμές σε μια στήλη αποθηκεύονται σε σειρά (συνεχόμενα) Κάθε στήλη έχει δικό της χώρο αποθήκευσης Έχει τεράστιες δυνατότητες συμπίεσης Έχει υψηλές επιδόσεις σε ερωτήματα συνάθροισης Big Table, Cassandra, SimpleDB, etc
35
Σχηματικά
36
Graph Τα δεδομένα αποτελούνται από έναν πεπερασμένο αριθμό από διατεταγμένα ζεύγη που ονομάζονται ακμές και οντότητες που ονομάζονται κόμβοι OrientDB, Neo4J, etc
37
Αποθηκεύονται σε ομάδες με παραπλήσια δεδομένα MongoDB, CouchDB, etc
Document Oriented Συλλογές από έγγραφα Δεν υπάρχει κάποια συνοχή μεταξύ τους απλά κάθε ένα έχει ένα κλειδί και τα περιεχόμενα του εγγράφου είναι η τιμη Αποθηκεύονται σε ομάδες με παραπλήσια δεδομένα MongoDB, CouchDB, etc
38
3 Κατασκευή ΒΔ
39
Ας βρούμε τι θα φτιάξουμε
Διαδικασία Ας βρούμε τι θα φτιάξουμε
40
…τι σημαίνει το κάθε ένα στον πίνακα που θα φτιάξω
ER Σχέσεις… Πολλά με πολλά Ένα με πολλά Πολλά με ένα …τι σημαίνει το κάθε ένα στον πίνακα που θα φτιάξω
41
Σχήμα Πίνακες της ΒΔ
42
Εφαρμογή του συστήματος και εκτέλεση βασικών εντολών
Εφαρμογή σε DBMS Εφαρμογή του συστήματος και εκτέλεση βασικών εντολών
Παρόμοιες παρουσιάσεις
© 2024 SlidePlayer.gr Inc.
All rights reserved.