Detecting Duplicates over Distributed Data Sources Δημήτρης Σουραβλιάς
Δομή παρουσίασης Εισαγωγή Ορισμός του προβλήματος Παράδειγμα Αρχιτεκτονικές ανίχνευσης διπλότυπων Γενικές παρατηρήσεις Αναφορές DMOD Laboratory, University of Ioannina 2
Εισαγωγή Ένα σημαντικό ποσοστό των δεδομένων που ανήκουν σε ένα σύνολο δεδομένων είναι διπλότυπα στοιχεία (duplicate items) Η ανίχνευση και εξάλειψη διπλότυπων στοιχείων αποτελεί σημαντική λειτουργία για λόγους: αποθήκευσης επικοινωνιακού φόρτου ποιότητας υπηρεσιών προς τον χρήστη DMOD Laboratory, University of Ioannina 3
Εισαγωγή Παραδείγματα διπλότυπων: έγγραφα (documents) που ανήκουν σε ίδια ή διαφορετικές συλλογές γεγονότα που προωθούνται στο συνδρομητή ενός συστήματος έκδοσης/συνδρομής από έναν ή περισσότερους εκδότες αποτελέσματα που δίνονται στο χρήστη που υποβάλλει μια ερώτηση με όρους σε μια μηχανή αναζήτησης αποτελέσματα από διαφορετικές μηχανές αναζήτησης που τροφοδοτούν μια μεταμηχανή αναζήτησης Τα διπλότυπα δεδομένα κάνουν αισθητή την παρουσία τους στο διαδίκτυο: «Το 30% των σελίδων στο διαδίκτυο είναι διπλότυπα ή (σχεδόν) διπλότυπα» DMOD Laboratory, University of Ioannina 4
Εισαγωγή Για την ανίχνευση και εξάλειψη διπλότυπων δεδομένων σε ένα σύστημα υπάρχουν 2 στρατηγικές: 1 η στρατηγική: Στη δομή ευρετηρίασης εισάγουμε μόνο μοναδικά δεδομένα Η εξάλειψη γίνεται πριν την εισαγωγή δεδομένων στη δομή 2 η στρατηγική: Στη δομή ευρετηρίασης εισάγουμε όλα τα δεδομένα και η εξάλειψη γίνεται αφού υποβάλλει ο χρήστης ένα ερώτημα στο σύστημα Η εξάλειψη γίνεται πριν την προώθηση δεδομένων στο χρήστη DMOD Laboratory, University of Ioannina 5
Ορισμός του προβλήματος Θεωρούμε Ν απομακρυσμένους ιστόχωρους (sites). Σε κάθε ιστόχωρο τα δεδομένα φτάνουν μέσω μιας αδιάλειπτης, ανεξάρτητης ροής δεδομένων S i, i = 1,, N Κάθε στοιχείο στο S i παίρνει μια τιμή από το πεδίο ορισμού ακεραίων [D] = {0,..., D 1} Έστω S = S 1 S 2... S N η ένωση των κατανεμημένων ροών δεδομένων (πολυσύνολο) και U το σύνολο των μοναδικών δεδομένων, δηλαδή U S Στόχος μας είναι να προωθούμε στο χρήστη τα στοιχεία του U και μόνο αυτά DMOD Laboratory, University of Ioannina 6
Παράδειγμα DMOD Laboratory, University of Ioannina 7
Δομή παρουσίασης Εισαγωγή Ορισμός του προβλήματος Παράδειγμα Αρχιτεκτονικές ανίχνευσης διπλότυπων Γενικές παρατηρήσεις Αναφορές DMOD Laboratory, University of Ioannina 8
Αρχιτεκτονικές ανίχνευσης διπλότυπων (1) Ιεραρχικό σχήμα Κάθε πηγή δεδομένων διατηρεί μια δομή ευρετηρίασης τοπικά, όπου αποθηκεύονται τα k πιο πρόσφατα δεδομένα της ροής της Ο χρήστης ζητά να προωθηθούν σε αυτόν τα μοναδικά δεδομένα στο σύνολο των δεδομένων που παράγονται από τις κατανεμημένες πηγές Το σύστημα συνενώνει (merge) τα δεδομένα μεταξύ διαφορετικών πηγών δεδομένων και τρέχει σε κάθε επίπεδο τον αλγόριθμο ανίχνευσης διπλότυπων Πρόβλημα: Ποιες πηγές δεδομένων θα επιλέξω σε κάθε επίπεδο ιεραρχίας; Αυτές με τις πιο κοντινές τοποθεσίες στο δίκτυο Αυτές με τη μεγαλύτερη επικάλυψη DMOD Laboratory, University of Ioannina 9
Αρχιτεκτονικές ανίχνευσης διπλότυπων (1) Select distinct id From S1, S2, S3, S4 Within 2 hours; DMOD Laboratory, University of Ioannina 10
Αρχιτεκτονικές ανίχνευσης διπλότυπων (2) Ιεραρχικό σχήμα με χρήση συντονιστών (coordinators) Για κάθε ομάδα πηγών δεδομένων υπάρχει ένας συντονιστής που διατηρεί μια δομή ευρετηρίασης για το σύνολο των δεδομένων των πηγών Οι συντονιστές επικοινωνούν μεταξύ τους και ανταλλάσουν μοναδικά δεδομένα Ο κάθε συντονιστής μπορεί να στέλνει τη δομή που διατηρεί σε κάθε πηγή για την οποία είναι υπεύθυνος και διπλότυπα δεδομένα να εξαλείφονται τοπικά Πρόβλημα: Κάθε πότε θα στέλνει ο συντονιστής τη δομή ευρετηρίασης; DMOD Laboratory, University of Ioannina 11
Αρχιτεκτονικές ανίχνευσης διπλότυπων (2) Select distinct id From S1, S2, S3, S4 Within 2 hours; DMOD Laboratory, University of Ioannina 12
Αρχιτεκτονικές ανίχνευσης διπλότυπων (3) Ανάθεση συγκεκριμένου συνόλου δεδομένων σε κάθε κόμβο Το [D] διαχωρίζεται σε μη επικαλυπτόμενα υποσύνολα D 1, D 2,..., D M Για κάθε D i είναι υπεύθυνος ο κόμβος j, με i [1, M] και j [1, N] Όταν ένα νέο δεδομένο φτάσει στο σύστημα, τότε με χρήση μιας συνάρτησης κατακερματισμού h αποθηκεύεται στη δομή ευρετηρίασης του κόμβου που κατακερματίζεται Πρόβλημα: Πώς διαχωρίζω αποδοτικά το πεδίο ορισμού DMOD Laboratory, University of Ioannina 13
Δομή παρουσίασης Εισαγωγή Ορισμός του προβλήματος Παράδειγμα Αρχιτεκτονικές ανίχνευσης διπλότυπων Γενικές παρατηρήσεις Αναφορές DMOD Laboratory, University of Ioannina 14
Γενικές παρατηρήσεις Τα θέματα που καλούμαστε να αντιμετωπίσουμε για την επιλογή της κατάλληλης κατανεμημένης αρχιτεκτονικής: Η αποδοτική ομαδοποίηση των πηγών δεδομένων Η ανάθεση συντονιστών στις ομάδες πηγών Η επιλογή της κατάλληλης θέσης για τις δομές ευρετηρίασης/περιληπτικές δομές π.χ. τοπικά σε κάθε πηγή ή στους συντονιστές Η πολυπλοκότητα αυξάνεται αν θέσουμε περισσότερους περιορισμούς π.χ. τα δεδομένα φτάνουν στο σύστημα ακολουθώντας το μοντέλο κυλιόμενου παραθύρου DMOD Laboratory, University of Ioannina 15
Αναφορές 1. Cormode Graham, Muthukrishnan S., Zhuang Wei. What s Different: Distributed, Continuous Monitoring of Duplicate-Resilient Aggregates on Data Streams. In ICDE, 2006. 2. Wang Xiaowei, Zhang Qiang, Jia Yan. Efficiently Filtering Duplicates over Distributed Data Streams. In Proc. of the International Conference on Computer Science and Software Engineering, 2008. 3. Xia Tian, Jin Cheqing, Zhou Xiaofang and Zhou Aoying. Filtering Duplicate Items over Distributed Data Streams. In WAIM, 2005. DMOD Laboratory, University of Ioannina 16
Ευχαριστώ! DMOD Laboratory, University of Ioannina 17