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

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

Transactions & P2P Systems Διονύσης Αθανασόπουλος Βασίλης Φωτόπουλος.

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


Παρουσίαση με θέμα: "Transactions & P2P Systems Διονύσης Αθανασόπουλος Βασίλης Φωτόπουλος."— Μεταγράφημα παρουσίασης:

1 Transactions & P2P Systems Διονύσης Αθανασόπουλος Βασίλης Φωτόπουλος

2 2 AGENDA  Διαχείριση κατανεμημένων συναλλαγών πάνω από Ρ2Ρ σύστημα  Οι οντότητες των πρωτοκόλλων  Τα διαγράμματα καταστάσεων των πρωτοκόλλων  Simulation  Συμπεράσματα

3 3 Διαχείριση κατανεμημένων συναλλαγών πάνω από Ρ2Ρ σύστημα  Διαχειριστής της συναλλαγής = κόμβος έναρξης της συναλλαγής  Κατανεμημένη συναλλαγή = #(υποσυναλλαγές) σε διαφορετικούς κόμβους  Στόχος : να αποδοθούν οι αλγόριθμοι Strict 2PL, Conservative 2PL σε P2P δίκτυο  Πρέπει να ληφθούν υπόψιν οι ιδιαιτερότητες των Ρ2Ρ συστημάτων

4 4 Ιδιαιτερότητες των Ρ2Ρ συστημάτων στην υλοποίηση συναλλαγών  Λόγω της ισοτιμίας των κόμβων, η κατάσταση της συναλλαγής πρέπει να είναι κατανεμημένη σε όλους τους κόμβους της συναλλαγής (distributed state)  Ο δυναμικός χαρακτήρας οδηγεί σε υψηλό ρυθμό αφίξεων και αναχωρήσεων (mobile nodes)  O έλεγχος ταυτοχρονισμού με κλειδαριές σε Ρ2Ρ συστήματα πρέπει να ενσωματώνει αυτά τα χαρακτηριστικά τους

5 5 Κατανεμημένος έλεγχος ταυτοχρονισμού  Για να μετατραπεί ο έλεγχος ταυτοχρονισμού σε κατανεμημένη μορφή χρειάζονται ορισμένες επιλογές :  Πλήρως κατανεμημένη διαχείριση των κλειδαριών  Το πρωτόκολλο κλειδώματος που θα χρησιμοποιηθεί (Strict 2PL, Conservative 2PL)

6 6 Αυστηρό πρωτόκολλο 2 φάσεων σε Ρ2Ρ σύστημα  Το μειονέκτημα του Strict 2PL είναι η εμφάνιση αδιεξόδων  Λόγω του σχήματος της κατανεμημένης διαχείρισης των κλειδαριών, οδηγούμαστε σε κατανεμημένα αδιέξοδα  Για να αποτραπεί ένα αδιέξοδο χρησιμοποιούμε την στρατηγική wait-die σε συνδυασμό με την απόδοση προτεραιοτήτων στα transactions

7 7 Υλοποίηση προτεραιοτήτων σε κατανεμημένο περιβάλλον  Η προτεραιότητα ενός transaction αντιστοιχίζεται στην χρονική στιγμή που ξεκίνησε το transaction  Το πρόβλημα είναι κατά πόσο όλοι οι κόμβοι μπορούν να έχουν συγχρονισμένα ρολόγια  Για να αποφθεχθεί αυτό, όταν ένας κόμβος λαμβάνει αίτηση για transaction, συγκρίνει το χρονόσημο του transaction με το ρολόι του

8 8 Αποτροπή κατανεμημένων αδιεξόδων  Υποθέτουμε ότι έχουμε τα transactions Τ1, Τ2  Priority (T1) > Priority (T2)  T1 αποκλειστική κλειδαριά στον peer A για το Ο1  T2 αποκλειστική κλειδαριά στον peer Β για το Ο2  Έστω ότι η T1 ζητά κλειδαριά από τον peer Β για το Ο2 και η T2 ζητά κλειδαριά από τον peer Α για το Ο1  Για να αποτραπεί αυτό το αδιέξοδο, χρησιμοποιούμε τις προτεραιότητες αυτών των transactions

9 9 Αποτροπή κατανεμημένων αδιεξόδων

10 10 Αποτροπή κατανεμημένων αδιεξόδων  Ο διαχειριστής συναλλαγών στον peer Β, θα οδηγήσει την Τ1 σε κατάσταση αναμονής  Η Τ2 θα οδηγηθεί στην φάση της συρρίκνωσης των κλειδαριών της  Η Τ2 μπορεί να τερματίσει είτε με επιτυχία(commit) είτε με αποτυχία(abort)  Εάν η T2 ζητήσει μια νέα κλειδαριά, θα κάνει restart  Τέλος μόλις η Τ2 ολοκληρωθεί παραχωρεί τις κλειδαριές της και η Τ1 συνεχίζει κανονικά την εκτέλεση της

11 11 Conservative 2PL  Για την αποτροπή των αδιεξόδων δεσμεύονται όλες οι κλειδαριές εκ των προτέρων  Ο peer που ξεκινάει την συναλλαγή αρχικά ελέγχει να δει εάν μπορεί να πάρει όλα τα κλειδιά που χρειάζεται για να εκτελέσει το transaction.  Ένα ναι το transaction ξεκινάει  Διαφορετικά μια άλλη χρονική στιγμή προσπαθεί ξανά

12 12 AGENDA  Διαχείριση κατανεμημένων συναλλαγών πάνω από Ρ2Ρ σύστημα  Οι οντότητες των πρωτοκόλλων  Τα διαγράμματα καταστάσεων των πρωτοκόλλων  Simulation  Συμπεράσματα

13 13 Οι υπηρεσίες που προσφέρει το Structured Overlay Network  Χρησιμοποιούμε δομημένο overlay network γιατί η αναζήτηση των αποθηκευμένων δεδομένων στο δίκτυο είναι γρήγορη και αποτελεσματική (π.χ chord)  Το επίπεδο που περιλαμβάνει τις υπηρεσίες που προσφέρει το DHT για την αναζήτηση και την αποθήκευση των αντικειμένων στο δίκτυο ονομάζεται Data Manager (DM)

14 14 Οι οντότητες για την υλοποίηση της εκτέλεσης συναλλαγών στο Structured Overlay Network  Όταν υποβάλετε ένα transaction σε έναν peer μια διεργασία Transaction Manager (TM) εκκινείτε σε αυτόν τον κόμβο  Σε κάθε peer υπάρχει ένας διαφορετικός TM για κάθε transaction  O TM είναι υπεύθυνος για τα εξής:  αρχικοποιεί την εκτέλεση της συναλλαγής  επικοινωνεί με τους peers που θα εκτελέσουν τις επιμέρους ενέργειες της συναλλαγής  τερματίζει το transaction (commit ή abort ή restart)

15 15 Οι οντότητες για την υλοποίηση της εκτέλεσης συναλλαγών στο Structured Overlay Network  Όταν ο TM που εκκινεί την συναλλαγή (master) θέλει να αποκτήσει κλειδαριές πάνω σε object άλλου peer επικοινωνεί με τον TM του αντίστοιχου peer  Στην συνέχεια ο TM αυτού του peer καλεί την οντότητα Object Manager (OM) η οποία είναι υπεύθυνη για την διαχείριση των κλειδαριών και για τις πράξεις πάνω στα αντικείμενα του peer

16 16 Οι οντότητες για την υλοποίηση της εκτέλεσης συναλλαγών στο Structured Overlay Network Transaction Manager Object Manager Data Manager

17 17 AGENDA  Διαχείριση κατανεμημένων συναλλαγών πάνω από Ρ2Ρ σύστημα  Οι οντότητες των πρωτοκόλλων  Τα διαγράμματα καταστάσεων των πρωτοκόλλων  Simulation  Συμπεράσματα

18 18 Τα διαγράμματα καταστάσεων του strict 2PL  Η συνολική κατάσταση του distributed transaction είναι κατανεμημένη και επομένως κάθε κόμβος εκτελεί ένα δικό του αυτόματο καταστάσεων  Έχουμε δυο αυτόματα καταστάσεων ανάλογα με την προτεραιότητα που έχει ο TM που εκκινεί το transaction

19 19 Αυτόματο Καταστάσεων για ένα peer master με μικρό χρονόσημο (I) Κατάσταση Πρόληψης Αδιεξόδου Κατάσταση Εκτέλεσης Κατάσταση Τερματισμού (Commit / Abort) Κατάσταση Επανεκκίνησης

20 20 Αυτόματο Καταστάσεων για ένα peer master με μεγάλο χρονόσημο (II) Κατάσταση Αναμονής Κατάσταση Εκτέλεσης Κατάσταση Τερματισμού (Commit / Abort)

21 21 Αυτόματο Καταστάσεων για Conservative 2PL Αρχική κατάσταση Κατάσταση Τερματισμού (Commit / Abort) Κατάσταση αναμονής κλειδωμάτων Κατάσταση Εκτέλεσης

22 22 AGENDA  Διαχείριση κατανεμημένων συναλλαγών πάνω από Ρ2Ρ σύστημα  Οι οντότητες των πρωτοκόλλων  Τα διαγράμματα καταστάσεων των πρωτοκόλλων  Simulation  Συμπεράσματα

23 23 Παράμετροι Simulation  Πλήθος peers στο δίκτυο  Πλήθος objects ανά peer (θεωρούμε πως κάθε peer έχει το ίδιο πλήθος από object)  Μέσος χρόνος παραμονής των peers στο δίκτυο  Μέσος χρόνος εκτέλεσης κάθε κατανεμημένης συναλλαγής (~ του πλήθους των action)  Ρυθμός υποβολής αιτήσεων για συναλλαγές στο δίκτυο  Χρόνος υποβολής τελευταίας συναλλαγής (ρυθμίζει και το τέλος του simulation)

24 24 Γεννήτορας Συναλλαγών  Αρχικά μέσω ενός γεννήτορα συναλλαγών ρυθμίζοντας τις προηγούμενες παραμέτρους δημιουργούμε set από κατανεμημένες συναλλαγές και ύστερα τις εκτελούμε σε ένα δίκτυο που αρχικά χρησιμοποιεί το πρωτόκολλο Conservative και μετά το Strict 2PL  Η κάθε συναλλαγή είναι ένα σύνολο από Read και Write πράξεις πάνω σε objects peers κόμβων

25 25 Γραμματική συναλλαγών  Κάθε συναλλαγή ακολουθεί την εξής γραμματική: :: TIMESTART constant DTIDconstant MID constant * :: CID constant ACTION READ | WRITE OBJECT constant

26 26 Παράδειγμα Συναλλαγής  Μια συναλλαγή: TIMESTART 12 DTID 2 MID 29 CID 33 ACTION READ OBJECT 12 CID 26 ACTION WRITE OBJECT 0 CID 10 ACTION READ OBJECT 19

27 27 Πείραμα 1 ο – Σταθεροί Παράμετροι  MIN_DURATION_VISITING=40  MAX_DURATION_VISITING=80  MIN_SUBTRANSACTION=10  MIN_SUBTRANSACTION=30  Πλήθος Objects ανά peer = 10  Πλήθος των peers = 80  Κατά Μ.Ο σε 100 χρονικές στιγμές υποβάλλονται προς εκτέλεση 20 transactions  H διάρκεια του simulation είναι κάτι παραπάνω από 1000 χρονικές στιγμές

28 28 Πείραμα 1 ο – Αποτελέσματα

29 29 AGENDA  Διαχείριση κατανεμημένων συναλλαγών πάνω από Ρ2Ρ σύστημα  Οι οντότητες των πρωτοκόλλων  Τα διαγράμματα καταστάσεων των πρωτοκόλλων  Simulation  Συμπεράσματα

30 30 Συμπεράσματα  Οι πρώτες ενδείξεις μας δείχνουν πως το Conservative υπερτερεί έστω και λίγο στο ποσοστό των commit συναλλαγών έναντι του stict 2PL  Πιθανόν σε ένα P2P δίκτυο που οι peers εισέρχονται και εξέρχονται με υψηλό ρυθμό η διαπλοκή των συναλλαγών να οδηγεί σε περισσότερα abort από ότι μια πιο σειριακή εκτέλεση των συναλλαγών όπως γίνεται μέσω του conservative


Κατέβασμα ppt "Transactions & P2P Systems Διονύσης Αθανασόπουλος Βασίλης Φωτόπουλος."

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


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