Λειτουργικότητα Δημοσίευσης / Συνδρομής

Αυτή η υποενότητα περιγράφει τον τρόπο με τον οποίο μπορούν να επεκταθούν οι υποενότητες 3.2.5 και 3.2.6 έτσι ώστε να προσφερθεί η λειτουργικότητα της Δημοσίευσης / Συνδρομής.

Για τον ευρετηριασμό μιας επερώτησης διαρκείας, $ cq$ , το πρωτόκολλο κατάθεσης μίας στιγμιαίας επερώτησης θα πρέπει να τροποποιηθεί. Τα δύο πρώτα βήματα είναι ακριβώς ίδια, ενώ το τρίτο έχει ως εξής. Κάθε υπερ-κόμβος που παραλαμβάνει ένα $ cq$ , το αποθηκεύει σε μία τοπική δομή δεδομένων για επερωτήσεις διαρκείας έτσι ώστε να τις ταιριάζει με τις αφίξεις νέων δημοσιεύσεων. Ένας υπερ-κόμβος $ S$ χρησιμοποιεί ένα πίνακα κατακερματισμού για να ευρετηριάσει όλες τις ατομικές επερωτήσεις $ cq$ , χρησιμοποιώντας ως κλειδιά τα γνωρίσματα $ A_1, A_2, \dots, A_k$ . Για τον ευρετηριασμό κάθε ατομικής επερώτησης, χρησιμοποιούνται τρεις διαφορετικές δομές δεδομένων:

Ο υπερ-κόμβος $ S'$ (αυτός του βήματος 3, δηλαδή, ο υπερ-κόμβος στον οποίο τελικά φθάνει η επερώτηση διαρκείας για να απαντηθεί) χρησιμοποιεί τις παραπάνω δομές δεδομένων για να φιλτράρει τις επερωτήσεις διαρκείας και να βρει γρηγορότερα αυτές που ταιριάζουν με κάποια νέα δημοσίευση $ p$ . Αυτό γίνεται χρησιμοποιώντας έναν αλγόριθμο που συνδυάζει τους αλγορίθμους BestFitTrie [7] και SQI [33].

Για τον ευρετηριασμό ενός πόρου, δηλαδή μίας δημοσίευσης, το πρωτόκολλο της παραγράφου 3.2.5 χρειάζεται επέκταση. Τα δύο πρώτα βήματα είναι ακριβώς τα ίδια, ενώ στο τρίτο βήμα, κάθε υπερ-κόμβος που λαμβάνει το $ p$ , το ταιριάζει με τις τοπικές του επερωτήσεις διαρκείας χρησιμοποιώντας τους αλγορίθμους BestFitTrie και SQI. Θα πρέπει να σημειωθεί ότι στα πλαίσια της υλοποίησης της αρχιτεκτονικής του συστήματος LibraRing δεν προσφέρεται η λειτουργία του φιλτραρίσματος. Ως εκ τούτου, οι τρεις δομές που προαναφέρθηκαν, όπως και οι αλγόριθμοι BestFitTrie και SQI, τόσο για το φιλτράρισμα όσο και για το ταίριασμα που πραγματοποιείται στο βήμα 3, δεν χρησιμοποιούνται επίσης.



Charalampos Nikolaou 2008-04-02