Data Management in p2p A Comparative Study of Pub/Sub Methods in Structured P2P Networks Μαρίνα Δρόσου – ΑΜ 135 Μυρτώ Ντέτσικα – ΑΜ 144 Γρηγόριος Τζώρτζης – ΑΜ 147
Data Management in p2p Εισαγωγή Κάθε χρήστης που συμμετέχει σε ένα p2p έχει συγκεκριμένα ενδιαφέροντα Συνήθως ο χρήστης αναζητά ο ίδιος δεδομένα Μία άλλη προσέγγιση είναι να ειδοποιείται αυτόματα από το δίκτυο μόλις εμφανίζονται δεδομένα σχετικά με τα ενδιαφέροντά του
Data Management in p2p Publish/Subscribe συστήματα Λύση στο προηγούμενο πρόβλημα δίνουν τα συστήματα publish/subscribe −Συνήθως υλοποιούνται με χρήση DHT Στο σύστημα υπάρχουν: −Publishers: Κόμβοι οι οποίοι δημοσιεύουν νέα δεδομένα στο δίκτυο −Subscribers: Κόμβοι που δηλώνουν ενδιαφέρον για δεδομένα με συγκεκριμένο περιεχόμενο
Data Management in p2p Motivation User-to-user −Πολλοί χρήστες που ανταλλάσσουν πληροφορίες π.χ. Blogs, Wikis −Κάθε κόμβος είναι ταυτόχρονα και subscriber και publisher Συνήθως παράγει δεδομένα με χαμηλό ρυθμό Publisher-to-user −Λίγοι publishers και πολλοί subscribers (με διακριτούς ρόλους) Οι publishers παράγουν δεδομένα με μεγάλο ρυθμό −π.χ. ειδησεογραφικά πρακτορεία
Data Management in p2p Contribution Περιγραφή δύο διαφορετικών προτύπων σχεδίασης για συστήματα Publish/Subscribe Ανάλυση πολυπλοκότητας για κάθε πρότυπο σχεδίασης Παρουσίαση πειραματικών μετρήσεων που επιβεβαιώνουν τη θεωρητική ανάλυση
Data Management in p2p System Model (1/2) Θεωρούμε ένα δίκτυο Ν κόμβων. Κάθε κόμβος μπορεί να είναι ή publisher ή subscriber ή και τα δύο −Οι subscribers παράγουν subscriptions, δηλ. ένα σύνολο από terms (π.χ. ) −Οι publishers παράγουν δεδομένα, δηλ. αρχεία που αποτελούνται από terms.
Data Management in p2p System Model (2/2) Υποθέσεις: −Οι subscribers ενδιαφέρονται για αρχεία που περιέχουν όλους τους όρους του subscription (π.χ. «sport AND music») −Το p2p δίκτυο είναι δομημένο (π.χ. CHORD) −Οι κόμβοι είναι συνδεδεμένοι σε ένα DHT που παρέχει μία λειτουργία nodeID lookup(key) −Οι publishers δεν διακινούν τα δεδομένα που παράγουν σε ολόκληρο το δίκτυο, καθώς αυτό οδηγεί σε προβλήματα κλιμάκωσης
Data Management in p2p Store-Sub (1/4) Οι subscribers αποθηκεύουν τις subscriptions τους στο DHT. −Κάθε subscription αποθηκεύεται σε πολλούς κόμβους, ανάλογα με τον αριθμό των terms που περιέχει Όταν ένας publisher παράγει ένα νέο δεδομένο −Αναζητά στο DHT τις αντίστοιχες subscriptions, κατακερματίζοντας κάθε term −Στέλνει το νέο δεδομένο στους subscribers που είχαν δηλώσει ενδιαφέρον για αυτό
Data Management in p2p Store-Sub (2/4) Επειδή το πλήθος των terms είναι μεγάλο, η αναζήτηση των subscriptions από τους publishers δεν είναι αποδοτική −Μία λύση είναι να ομαδοποιήσουμε τα terms σε topics, μειώνοντας έτσι τον αριθμό των μηνυμάτων που απαιτούνται κατά την αναζήτηση
Data Management in p2p Store-Sub (3/4)
Data Management in p2p Store-Sub (4/4) Πολυπλοκότητα μηνυμάτων −Μηνύματα λόγω της εισαγωγής των subscriptions στο DHT −Μηνύματα λόγω της ανάκτησης των subscriptions από τους publishers Πολυπλοκότητα Αποστολή subscriptions Ανάκτηση subscriptions
Data Management in p2p Store-Pub (1/3) Οι publishers δημιουργούν profiles που περιγράφουν το είδος των δεδομένων που παράγουν −Αναμένουμε ότι στο μέλλον θα παράγουν παρόμοια δεδομένα με αυτά που έχουν δημοσιεύσει έως τώρα −Τα profiles αποθηκεύονται στο DHT Οι subscribers αναζητούν στο DHT profiles σχετικά με τα ενδιαφέροντά τους −Στη συνέχεια κάνουν register στους αντίστοιχους publishers −Η αναζήτηση επαναλαμβάνεται περιοδικά καθώς τα profiles αλλάζουν κατά τη διάρκεια του χρόνου
Data Management in p2p Store-Pub (2/3)
Data Management in p2p Store-Pub (3/3) Πολυπλοκότητα μηνυμάτων −Μηνύματα λόγω της εισαγωγής των profiles στο DHT −Μηνύματα λόγω της ανάκτησης των profiles από τους subscribers Πολυπλοκότητα Αποστολή subscriptions Ανάκτηση subscriptions
Data Management in p2p Σύγκριση μεθόδων Πλεονεκτήματα Store-Pub −Οι subscribers μπορούν να επιλέγουν τους publishers από τους οποίους λαμβάνουν δεδομένα −Επίσης μπορούν να καθορίσουν το πλήθος των δεδομένων που λαμβάνουν κάνοντας register/unregister Μειονεκτήματα Store-Pub −Τα profiles βασίζονται στο τι έχει δημοσιευθεί στο παρελθόν Η μέθοδος Store-Pub δεν εγγυάται ότι κάθε subscriber εντοπίζει όλα όλα τα δεδομένα που τον ενδιαφέρουν