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

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

Κατανεμημένες Βάσεις Δεδομένων (ΚΒΔ) Δρ. Παναγιώτης Συμεωνίδης.

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


Παρουσίαση με θέμα: "Κατανεμημένες Βάσεις Δεδομένων (ΚΒΔ) Δρ. Παναγιώτης Συμεωνίδης."— Μεταγράφημα παρουσίασης:

1 Κατανεμημένες Βάσεις Δεδομένων (ΚΒΔ) Δρ. Παναγιώτης Συμεωνίδης

2 2 Ορισμός ΚΒΔ Μια μόνο βάση δεδομένων σε «λογικό» επίπεδο Σε «φυσικό» επίπεδο είναι τοποθετημένη σε περισσότερους υπολογιστές οι οποίοι βρίσκονται σε διαφορετικές τοποθεσίες συνδεδεμένοι μεταξύ τους. Μια κατανεμημένη βάση δεδομένων απαιτεί την ύπαρξη ενός DBMS για κάθε απομακρυσμένη τοποθεσία.

3 3 Λόγοι για χρήση ΚΒΔ Η γεωγραφική κατανομή διαφορετικών μονάδων της επιχείρησης. Η ανάγκη για διαμοιρασμό κάποιων δεδομένων. Τα κόστη επικοινωνίας που αναγκάζουν κάποιες εφαρμογές να είναι τοποθετημένες εκεί όπου τους χρειάζονται περισσότερο.

4 4 Πλεονεκτήματα ΚΒΔ Αξιοπιστία Διαθεσιμότητα Τοπικός Έλεγχος Χαμηλά Κόστη Επικοινωνίας Γρήγορη Απόκριση

5 5 Μειονεκτήματα ΚΒΔ Κόστος Λογισμικού Κόστος Επεξεργασίας (overhead) Ακεραιότητα Δεδομένων Χαμηλός χρόνος απόκρισης αν δεν έχει γίνει σωστή κατανομή

6 Είδη ΚΒΔ Κατανεμημένη Βάση δεδομένων Ομογενής (Δομείται με ίδιου τύπου DBMS) Ετερογενής (Δομείται με διαφορετικού τύπου DBMS) Αυτόνομη (Κάθε DBMS λειτουργεί αυτόνομα) Μη αυτόνομη (ένα κεντρικό DBMS συντονίζει τις προσβάσεις και τις ενημερώσεις) Συστήματος (υποστηρίζει τις λειτουργίες μιας λογικής βάσης δεδομένων)

7 7 Βασικές Διαφορές Ομογενών και Ετερογενών ΚΒΔ Ο τύπος των DBMSs. Στις ετερογενείς υπάρχει και η έννοια του τοπικού χρήστη που βλέπει μόνο το τοπικό σχήμα και όχι ένα ενιαία σχήμα.

8 8 Αρχές Σχεδίασης ΚΒΔ αρχή της διαφάνειας (δεν πρέπει να καταλαβαίνει ο χρήστης από ποια τοποθεσία έρχονται τα δεδομένα) αρχή της αυτονομίας (κάθε τοποθεσία πρέπει να λειτουργεί κανονικά ακόμα και στην περίπτωση που δεν είναι δυνατή η σύνδεση της με άλλες τοποθεσίες.

9 9 Αρχιτεκτονικές ΚΒΔ

10 Μοντέλο Πελάτη-Εξυπηρέτη ΠΕΛΑΤΗΣ ΕΞΥΠΗΡΕΤΗΣ Ερώτηση Ο πελάτης στέλνει την ερώτηση σε μία πλευρά. Η επεξεργασία της ερώτησης γίνεται στον εξυπηρέτη.

11 11 Αρχιτεκτονικές ΚΒΔ/Τοπική Δοσοληψία Local transaction – all data stored locally

12 Αρχιτεκτονικές ΚΒΔ  Μοντέλο Συνεργαζόμενων εξυπηρετών ερώτηση Μια ερώτηση εκτελείται σε πολλές πλευρές ΕΞΥΠΗΡΕΤΗΣ ΠΕΛΑΤΗΣ

13 13 Αρχιτεκτονικές ΚΒΔ/Καθολική Δοσοληψία Global transaction – some data is at remote site(s)

14 Στρατηγικές για την κατανομή μιας ΚΒΔ Replication (δημιουργία ενός πανομοιότυπου αντιγράφου) Horizontal partitioning (Οριζόντιος κατατεμαχισμός). Vertical partitioning (Κάθετος κατατεμαχισμός).

15 Replication ( Πανομοιότυπο Αντίγραφο ). R1 R2 R3 Κόμβος A Κόμβος Β Αξιοπιστία (δεν χάνονται τα δεδομένα) Απόκριση (οι ερωτήσεις γίνονται τοπικά) Γρηγορότερος υπολογισμός ερωτήσεων Μείωση του φόρτου του δικτύου. Σύγχρονος και Ασύγχρονος υπολογισμός Υπάρχει το push και το pull replication.

16 16 Σύγχρονος και Ασύγχρονος υπολογισμός Σύγχρονη ΚΒΔ είναι εκείνη όπου όλες οι αλλαγές ενημερώνουν όλες τις τοποθεσίες έτσι ώστε ανά πάσα στιγμή κάθε χρήστης να βλέπει όλες τις αλλαγές. Ασύγχρονη ΚΒΔ όπου αντίγραφα ανά τακτά χρονικά διαστήματα ενημερώνουν την κάθε τοποθεσία.(γίνεται για λόγους υψηλού κόστους επικοινωνίας)

17 Επεξεργασία Ερωτήματος για Replication (Πανομοιότυπο Αντίγραφο) Υπάρχουν αντίγραφα της σχέσης Sailors και στους δύο κόμβους Η ε πιλογή του κόμβου γίνεται με βάση το τοπικό κόστος, κόστος για την μεταφορά του αποτελέσματος SELECT AVG(S.age) FROM Sailors S WHERE S.rating > 3 AND S.rating < 7

18 18 Horizontal partitioning ( Οριζόντιος κατατεμαχισμός) Οι γραμμές ενός πίνακα χωρίζονται και αποθηκεύονται σε διαφορετικές τοποθεσίες Τα δεδομένα αποθηκεύονται εκεί που τα χρειάζονται Καλύτερη ασφάλεια. Χρησιμοποιείται σε περιπτώσεις όπου απαιτούνται οι ίδιες διαδικασίες στα δεδομένα από άλλα τμήματα.

19 Επεξεργασία Ερωτήσεων για Οριζόντιο κατατεμαχισμό Οι πλειάδες με rating = 5 στοTokyo. Πρέπει να υπολογίσουμε SUM(age), COUNT(age) και στους δύο κόμβους. Αν το WHERE περιείχε μόνο S.rating>6, θα αρκούσε ο υπολογισμός σε έναν μόνο κόμβο. SELECT AVG(S.age) FROM Sailors S WHERE S.rating > 3 AND S.rating < 7

20 20 Vertical partitioning (κάθετος κατακερματισμός) Οι στήλες ενός πίνακα χωρίζονται και αποθηκεύονται σε διαφορετικές τοποθεσίες είναι πολύ πιο δύσκολη αφού χωρίζονται τα πρωτεύοντα κλειδιά κτλ. χρησιμοποιείται κυρίως για περιπτώσεις όπου απαιτούνται άλλες διαδικασίες στα δεδομένα.

21 Επεξεργασία Ερωτήσεων για Κάθετο κατατεμαχισμό Τα πεδία sid και rating στη Shanghai, sname and age στοTokyo, tid και στους δύο κόμβους. Πρέπει πρώτα να ξανά-σχηματιστεί η σχέση με συνένωση στο tid, και μετά να υπολογιστεί η ερώτηση SELECT AVG(S.age) FROM Sailors S WHERE S.rating > 3 AND S.rating < 7

22 Ενημέρωση Δεδομένων σε ΚΒΔ Ο κόμβος από τον οποίο ξεκίνησε μια δοσοληψία είναι ο συντονιστής (coordinate) -- οι υπόλοιποι κόμβοι που συμμετέχουν στην εκτέλεση της δοσοληψίας ορίζονται ως συμμετέχοντες (subordinates). Πρωτόκολλο Επικύρωσης Δύο Φάσεων (Two Phase Commit Protocol 2PC)

23 Πρωτόκολλο Επικύρωσης Δύο Φάσεων Αποτελείται από δύο στάδια : VOTING PHASE (στάδιο ψηφίσματος) COMMIT PHASE (στάδιο δέσμευσης) Παράδειγμα καθορισμού ραντεβού μεταξύ πολλών προσώπων.

24 Κατανεμημένες Βάσεις Δεδομένων (ΚΒΔ) Δρ. Παναγιώτης Συμεωνίδης


Κατέβασμα ppt "Κατανεμημένες Βάσεις Δεδομένων (ΚΒΔ) Δρ. Παναγιώτης Συμεωνίδης."

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


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