Ιεραρχίες Κόμβων Δομημένες σε Δακτύλιο για Ρ2Ρ Συστήματα Βασισμένα σε RDF Σχήματα Παρουσίαση Μεταπτυχιακής Διατριβής: Νικόλαος Κρεμμυδάς Επιβλέπουσα καθηγήτρια: Ευαγγελία Πιτουρά
Κίνητρο για την εργασία Υπάρχοντα Ρ2Ρ συστήματα παρέχουν περιορισμένες δυνατότητες διαχείρισης δεδομένων Αναζήτηση με βάση κλειδί χρησιμοποιεί καθορισμένο σύνολο από attributes Ικανοποιητικά για διαμοίραση αρχείων Οργανισμοί (π.χ. εκπαιδευτικοί) απαιτούν «πλουσιότερες» λειτουργίες Ανταλλαγή, αναζήτηση κ ενοποίηση δομημένων δεδομένων P2P Συστήματα που βασίζονται σε Σχήμα επιτρέπουν τέτοιες λειτουργίες
Στη συνέχεια θα δούμε… Ρ2Ρ Συστήματα RDF Σχήματα Γενικό Πρόβλημα κ τεχνικές επίλυσης Παρουσίαση δικής μας λύσης (σύστημά μας) Πειραματική μελέτη Συστήματός μας Πειραματική σύγκριση με άλλα Συστήματα Συμπεράσματα/μελλοντική δουλειά
Ρ2Ρ Συστήματα Κατανεμημένα δίκτυα κόμβων, χωρίς κεντρικό έλεγχο Ομότιμοι κόμβοι: κρατούν ίδιο όγκο πληροφορίας, έχουν ίδιες υποχρεώσεις Πλεονεκτούν έναντι client-server δικτύων Ανεκτικά σε σφάλματα Κλιμακούμενα Γρήγοροι χρόνοι για εισαγωγή/διαγραφή κόμβων και αναζήτηση ερωτημάτων Μετρικές στα Ρ2Ρ: Hops (πόσο γρήγορα γίνεται μια λειτουργία) Μηνύματα (πόσοι κόμβοι απασχολούνται) Τύποι Ρ2Ρ: Δομημένα κ Αδόμητα
Δομημένα Ρ2Ρ Συστήματα Κόμβοι συνδέονται ώστε να σχηματίζουν δομή Δεδομένα διαμοιράζονται στους κόμβους Λογαριθμικοί χρόνοι για εισαγωγή/ διαγραφή κόμβου κ αναζήτηση ερωτήματος Παραδείγματα: Chord, Can, P-Grid
Αδόμητα Ρ2Ρ Συστήματα Κόμβοι συνδέονται τυχαία μεταξύ τους Ο(1) χρόνος για εισαγωγή/διαγραφή κόμβου Υψηλοί χρόνοι για αναζήτηση ερωτήματος Βασίζονται σε ειδικούς αλγορίθμους για αναζήτηση ερωτημάτων Παραδείγματα: Gnutella, Random Walks
RDF Δεδομένα RDF (Resource Description Framework): σημασιολογική απεικόνιση μετά-δεδομένων Βασικό δομικό στοιχείο RDF δεδομένων: Υποκείμενο, Αντικείμενο, Κατηγόρημα RDF στοιχεία απεικονίζονται με URIs, π.χ. με URL μιας ιστοσελίδας Σχ. 1: RDF statement
RDF Σχήμα RDFS (RDF Schema): σημασιολογική απεικόνιση βάσης μετά- δεδομένων Δομικά στοιχεία: τριάδα σχήματος Τριάδα: 2 Κλάσεις - 1 Ιδιότητα Δημιουργούνται ιεραρχίες από κλάσεις κ ιδιότητες RDFS περιγράφονται με namespaces S0: Σχ. 2: Ένα RDF Σχήμα και το αντίστοιχο namespace
Υπαγωγή RDF Σχημάτων Έστω 2 Σχήματα S1 και S2 Οριζόντια υπαγωγή: Αν κάθε τριάδα του S2 ανήκει κ στο S1, S1 υπάγει οριζόντια S2 Κάθετη υπαγωγή: Αν για κάθε τριάδα Τ2 του S2 υπάρχει τριάδα Τ1 του S1, ώστε Τ2 isA Τ1, S1 υπάγει κάθετα S2 Αν S1 υπάγει οριζόντια ή (και) κάθετα S2, S1 υπάγει S2 Σχ. 3: Οριζόντια υπαγωγή σχημάτων Σχ. 4: Κάθετη υπαγωγή σχημάτων
Περιγραφή Προβλήματος Κόμβοι με βάσεις μετά-δεδομένων Κόμβοι εκφράζουν τις βάσεις τους με RDF Σχήματα Μπορούμε να δομήσουμε δίκτυο κόμβων, ώστε: Γρήγορη αναζήτηση ερωτήματος Γρήγορη εισαγωγή/διαγραφή κόμβου Εναλλακτικά, μπορούμε να βρούμε αλγόριθμο ώστε να έχουμε γρήγορη αναζήτηση ερωτήματος σε αδόμητο δίκτυο
Σχετική Δουλειά “Super-Peer-Based Routing Strategies for RDF-Based Peer-to- Peer Networks” by W. Nejdl, M. Wolpers, W.Siberski, C. Schmitz, M. Schlosser, I. Brunkhorst. Κόμβοι κρατάνε μεγάλο όγκο πληροφορίας για διατήρηση υπερκύβου “Efficient Query Routing in RDF/S schema-based P2P Systems” by L. Sidirourgos, G. Kokkinidis, T. Dalamagas [12]. “Index Structures and Algorithms for Querying Distributed RDF Repositories” by H. Stuckenschmidt, R. Vdovjak, G. Houben, J. Broekstra. Μεγάλοι χρόνοι για αναζήτηση ερωτήματος “Remindin': Semantic Query Routing in Peer-to-Peer Networks based on Social Metaphors” by C. Tempich, S. Staab, A. Wranik. Μεγάλοι χρόνοι για αναζήτηση ερωτήματος
Τι ψάχνουμε...; Σύστημα στο οποίο, κόμβοι κρατάνε μικρό όγκο πληροφορίας Εισαγωγή/διαγραφή κόμβου σε μικρό χρόνο Αναζήτηση ερωτήματος σε μικρό χρόνο
To Σύστημά μας… Ιεραρχίες κόμβων Ιεραρχίες δομούνται σε δακτύλιο Κόμβοι με σχήματα που υπάγονται σε σχήματα άλλων κόμβων, δομούνται στην ίδια ιεραρχία Ριζικός κόμβος ιεραρχίας κρατάει γενικότερο σχήμα Σχ. 5 Τοπολογία συστήματος
Υποθέσεις για το σύστημά μας Καθολικό Σχήμα Κάθε κόμβος εκδίδει σχήμα που υπάγεται στο καθολικό σχήμα Ένας κόμβος εκδίδει ένα σχήμα Σχήματα βρίσκονται σε κόμβους που τα εκδίδουν Δημιουργία τοπολογίας σχημάτων που εκδίδουν κόμβοι
Τοπολογία Συστήματος (Δακτύλιος) Δακτύλιος (παρόμοιος με chord) κρατάει ριζικά σχήματα ιεραρχιών (υπερσχήματα) Υπερσχήματα δεν υπάγονται από κανένα άλλο σχήμα Κάθε υπερσχήμα παίρνει m- bit id (n=2 m ) Κάθε υπερσχήμα κρατάει πίνακα με logn άλλα υπερσχήματα (fingertables), όπως Chord i-οστή θέση πίνακα σχήματος N κρατάει σχήμα s: s = successor (N+2 i-1 ) Σχ. 6 Τοπολογία δακτυλίου με fingertables
Τοπολογία Συστήματος (Ιεραρχίες) Ιεραρχίες σχημάτων κάτω από υπερσχήματα Κάθε σχήμα κρατάει σχήματα του πατέρα και των παιδιών του Κάθε σχήμα ιεραρχίας υπάγεται από σχήμα πατέρα του κ υπάγει σχήματα παιδιών του Σχ. 7 Τοπολογία Δακτυλίου με Ιεραρχίες
Εισαγωγή Σχήματος Έστω κόμβος p εκδίδει σχήμα S S επικοινωνεί με τυχαίο σχήμα Q Q προωθεί S στο υπερσχήμα SP SP στέλνει με broadcast το S στα υπόλοιπα υπερσχήματα Σχήμα S συγκρίνεται με λοιπά υπερσχήματα Σχ. 8 Τοπολογία συστήματος δεδομένη στιγμή Σχ. 9 SP1 κάνει broadcast το σχήμα S
Αποδοτικό broadcast στο δακτύλιο Έστω κόμβος N0 ξεκινάει broadcast N0 στέλνει μήνυμα σε κάθε finger(i) με limit = finger(i+1) Κάθε κόμβος Ν που λαμβάνει μήνυμα στέλνει το μήνυμα στα fingers: Ν<Ν.finger(i)<limit Κόστος (s: αριθμός υπερσχημάτων): Ο(logs) hops s-1 μηνύματα Σχ. 10 Broadcast στο δακτύλιο σε logn hops
Εισαγωγή Σχήματος(1/3) Αν S υπάγει υπερσχήματα SP i : SP i διαγράφονται από δακτύλιο SP i συνδέονται με S ως παιδιά του S παίρνει θέση στο δακτύλιο Ανανεώνονται fingertables λοιπών υπερσχημάτων Σχ.11 Τοπολογία συστήματος μετά τη διαγραφή των SP0 και SP1, τη σύνδεση τους με S και την εισαγωγή του S στο δακτύλιο
Εισαγωγή Σχήματος(2/3) Αν S υπάγεται από υπερσχήμα SP: S προωθείται στην ιεραρχία SP S συγκρίνεται με παιδιά SP Αν S δεν υπάγεται κ δεν υπάγει κανένα παιδί s, τότε S συνδέεται με SP ως παιδί του Αν S υπάγει κάποιο παιδί s, τότε S ενώνεται με SP ως παιδί του κ με s, ως πατέρας του Αν S υπάγεται από κάποιο παιδί s, τότε προωθείται στο s κ.ο.κ. Σχ. 12 Τοπολογία συστήματος μετά την εισαγωγή του σχήματος S στην ιεραρχία SP3
Εισαγωγή Σχήματος(3/3) Αν S δεν υπάγεται ούτε υπάγει κανένα υπερσχήμα: S παίρνει θέση στο δακτύλιο Ανανεώνονται τα fingertables λοιπών υπερσχημάτων Κόστος (s: # υπερσχημάτων, h: μέγιστο ύψος ιεραρχίας, k # διαγραφέντων υπερσχημάτων): k*Ο(logs) + O(h) hops O(s) + O(h) μηνύματα Σχ. 13 Τοπολογία συστήματος μετά την εισαγωγή του σχήματος S στο δακτύλιο
Διαγραφή Σχήματος Διαγραφή υπερσχήματος Ανανέωση fingertables λοιπών υπερσχημάτων Εισαγωγή παιδιών υπερσχήματος Ανανέωση fingertables λοιπών υπερσχημάτων Διαγραφή σχήματος ιεραρχίας Σύνδεση παιδιών σχήματος με πατέρα Κόστος (c: #παιδιών υπερσχήματος): c*Ο(log(s)) hops κ μηνύματα Σχ. 14 Διαγραφή υπερσχήματος Σχ. 15 Διαγραφή σχήματος ιεραρχίας
Αναζήτηση ερωτήματος (1/3) Έστω σχήμα ΡΧ εκδίδει ερώτημα: «Θέλω όλους τους καλλιτέχνες με όλα τα δημιουργήματά τους που υπάρχουν σε μουσεία» ΡΧ στέλνει ερώτημα σε υπερσχήμα (SP3) SP3 δεν μπορεί να απαντήσει ερώτημα κ το κάνει broadcast Σχ. 16 Τοπολογία συστήματος κ σχήματα ιεραρχιών που απαντούν στο ερώτημα
Αναζήτηση ερωτήματος (2/3) SP0 απαντάει με τους «καλλιτέχνες και τα δημιουργήματά τους» κ προωθεί αυτό το μέρος του ερωτήματος στην ιεραρχία του SP1 δεν μπορεί να απαντήσει ερώτημα SP2 απαντάει με τους «δημιουργήματα και τα μουσεία όπου εκτίθενται» κ προωθεί αυτό το μέρος του ερωτήματος στην ιεραρχία του Σχ. 17 Αναζήτηση ερωτήματος κ σχήματα ιεραρχιών που απαντούν στο ερώτημα
Αναζήτηση ερωτήματος (3/3) SP0 κ SP2 συνενώνουν απαντήσεις από ιεραρχίες τους κ στέλνουν στο SP3 SP3 στέλνει απάντηση στο ΡΧ Κόστος (ν: αριθμός σχημάτων μεγαλύτερης ιεραρχίας) Ο(logs) + O(h) hops O(s*ν) μηνύματα (χείριστη περίπτωση) Σχ. 18 Απάντηση στο ερώτημα
Εξισορρόπηση φόρτου Περιμένουμε λίγες ιεραρχίες να είναι πιο «δημοφιλείς» από άλλες Αυτές οι ιεραρχίες θα υπερφορτωθούν από ερωτήματα, δημιουργώντας φαινόμενο bottleneck Θέτουμε όριο στα ερωτήματα/χρόνο που μπορεί να απαντήσει μια ιεραρχία Q: #ερωτημάτων που απαντήθηκαν από ιεραρχία, σε χρόνο T Q m = Q/T: μέση τιμή Q Αν στο επόμενο διάστημα χρόνου: Q≥2Q m, τότε, σχήμα που συνδέθηκε τελευταίο με ιεραρχία, διαγράφεται κ τοποθετείται στο δακτύλιο σαν υπερσχήμα Δημιουργείται υπερσύνδεσμος μεταξύ ιεραρχίας κ καινούριου υπερσχήματος
Πειράματα Μελέτη του συστήματός μας: Για διαφορετικές επικαλύψεις σχημάτων (20%, 80% και τυχαία) Εισαγωγή σχήματος για διαφορετικά μεγέθη σχημάτων (2, 12 και 20 τριάδες) Αναζήτηση ερωτήματος για διαφορετικά μεγέθη ερωτήματος, σε σχέση με τα μεγέθη σχημάτων Σύγκριση συστήματός μας με 2 άλλα συστήματα Για εισαγωγή/διαγραφή σχήματος Για αναζήτηση ερωτήματος
Παράμετροι συστήματος (1/2) ΣυμβολισμόςΠεριγραφή nΑριθμός κόμβων συστήματος νΑριθμός σχημάτων μεγαλύτερης ιεραρχίας sΑριθμός υπερσχημάτων (ιεραρχιών) p Αριθμός διαγραφέντων υπερσχημάτων κατά την εισαγωγή σχήματος c Αριθμός παιδιών ενός διαγραφέντος υπερσχήματος hΎψος υψηλότερης ιεραρχίας
Παράμετροι συστήματος (2/2) Καθολικό σχήμα: ιεραρχία με ύψος 7 κ fan-out = 4 Ένας κόμβος εκδίδει μοναδικό σχήμα Αλγόριθμοι για ενημέρωση fingertables: Αλγόριθμοι Chord (O(log 2 s)) Εισαγωγή σχήματος: p*Ο(log 2 s) + O(h) hops Διαγραφή σχήματος: c*Ο(log 2 s) hops
Διαφορετικές επικαλύψεις σχημάτων (Εισαγωγή σχήματος) Σχ. 19 Εισαγωγή κόμβου (συνολικά hops) Σχ. 20 Εισαγωγή κόμβου (συνολικά μηνύματα)
Διαφορετικές επικαλύψεις σχημάτων (Διαγραφή κόμβου) Σχ. 21 Μέγιστα ύψη ιεραρχιών Σχ. 22 Διαγραφή κόμβου (συνολικά μηνύματα κ hops)
Διαφορετικές επικαλύψεις σχημάτων (Αναζήτηση ερωτήματος) Σχ. 23 Αναζήτηση ερωτήματος (συνολικά hops) Σχ. 24 Αναζήτηση ερωτήματος (συνολικά μηνύματα)
Εισαγωγή σχήματος για διαφορετικά μεγέθη σχημάτων (1/2) Σχ. 25 Εισαγωγή κόμβου (συνολικά hops) Σχ. 26 Εισαγωγή κόμβου (συνολικά μηνύματα)
Εισαγωγή σχήματος για διαφορετικά μεγέθη σχημάτων (2/2) Σχ. 27 Αριθμός διαγραφέντων υπερσχημάτωνΣχ. 28 Αριθμός υπερσχημάτων στο πλήθος των κόμβων
Αναζήτηση ερωτήματος για διαφορετικά μεγέθη ερωτήματος Σχ. 29 Αναζήτηση ερωτήματος για διαφορετικά σχήματα κ διαφορετικά ερωτήματα
Σύγκριση Συστημάτων Αδόμητο σύστημα Εισαγωγή/διαγραφή σχήματος: Ο(1) Αναζήτηση ερωτήματος: Ω(n) μηνύματα, ~n hops “Efficient Query Routing in RDF/S schema-based P2P Systems” by L. Sidirourgos, G. Kokkinidis, T. Dalamagas [12]. Εισαγωγή/διαγραφή σχήματος: K*O(logn) hops και μηνύματα, K όλα τα δυνατά οριζόντια υποσχήματα σχήματος Αναζήτηση ερωτήματος: S*Ο(logn) hops και μηνύματα, S όλα τα δυνατά κάθετα υποσχήματα του καθολικού σχήματος που υπάγονται στο σχήμα του ερωτήματος
Σύστημα [12] (1/2) Κόμβοι εισάγονται σε δακτύλιο chord Σχήματα κάθε κόμβου κατακερματίζονται στους κόμβους του δικτύου, ώστε να διατηρείται διάταξη σχημάτων Σχήματα που υπάγονται σε άλλα τοποθετούνται πιο μπροστά από αυτά στον κύκλο του chord Σχ. 30 Τοπολογία [12]
Σύστημα [12] (2/2) Εισαγωγή κόμβου Κόμβος εισάγεται στο chord Κατακερματίζει το σχήμα του, καθώς κ κάθε οριζόντιο υποσχήμα Κόστος (Κ: όλα τα δυνατά οριζόντια υποσχήματα σχήματος του ερωτήματος ): K*O(logs) hops και μηνύματα Διαγραφή κόμβου Κόμβος διαγράφεται από chord Διαγράφονται κ όλα τα οριζόντια υποσχήματα του σχήματός του Κόστος: K*O(logs) hops και μηνύματα Αναζήτηση ερωτήματος: Αναζητάται σχήμα ερωτήματος κ όλα δυνατά κάθετα υποσχήματα του που μπορεί να υπάρχουν στο σύστημα Κόστος (S: όλα τα δυνατά κάθετα υποσχήματα του καθολικού σχήματος που υπάγονται στο σχήμα του ερωτήματος): S*Ο(logs) hops και μηνύματα
Παράμετροι συστημάτων (1/2) ΣυμβολισμόςΠεριγραφή nΑριθμός κόμβων συστήματος νΑριθμός σχημάτων μεγαλύτερης ιεραρχίας sΑριθμός υπερσχημάτων (ιεραρχιών) p Αριθμός διαγραφέντων υπερσχημάτων κατά την εισαγωγή σχήματος cΑριθμός παιδιών ενός διαγραφέντος υπερσχήματος hΎψος υψηλότερης ιεραρχίας S Αριθμός δυνατών υποσχημάτων καθολικού σχήματος που είναι κάθετα υποσχήματα του ερωτήματος KΑριθμός οριζόντιων υποσχημάτων σχήματος
Παράμετροι συστήματος (2/2) Καθολικό σχήμα: ιεραρχία με ύψος 5 κ fan-out = 4 Μέγεθος σχημάτων = 12 τριάδες Σχέση κόμβων-σχημάτων: 1-1 Αλγόριθμοι για ενημέρωση fingertables: Αλγόριθμοι Chord (O(log 2 s)) Σύστημά μας: Εισαγωγή σχήματος: p*Ο(log 2 s) + O(h) hops Διαγραφή σχήματος: c*Ο(log 2 s) hops Σύστημα [12]: Εισαγωγή/διαγραφή σχήματος: Κ*Ο(log 2 n) Αναζήτηση ερωτήματος: S*O(log 2 n)
Εισαγωγή σχήματος Σχ. 31 Εισαγωγή κόμβου (συνολικά hops) Σχ. 32 Εισαγωγή κόμβου (συνολικά μηνύματα)
Διαγραφή σχήματος Σχ. 33 Διαγραφή κόμβου (συνολικά μηνύματα κ hops)
Αναζήτηση ερωτήματος (1/2) Σχ. 34 Αναζήτηση ερωτήματος για διαφορετικά σχήματα κ διαφορετικά ερωτήματα (hops)
Αναζήτηση ερωτήματος (2/2) Σχ. 35 Αναζήτηση ερωτήματος για διαφορετικά σχήματα κ διαφορετικά ερωτήματα (μηνύματα)
Συμπεράσματα (1/2) Δομημένο σύστημα με κόμβους που εκδίδουν RDF Σχήματα Κόμβοι με υπαγώμενα σχήματα δομούνται στην ίδια ιεραρχία Ιεραρχίες τοποθετούνται σε δομή δακτυλίου, για γρήγορη εύρεσή τους Όσο μεγαλύτερη επικάλυψη σχημάτων στο δίκτυο, τόσο καλύτερα αποδίδει το σύστημα Το σύστημα αποδίδει καλύτερα, όταν πρώτα εισάγονται μεγαλύτερα σχήματα Χρόνος απάντησης (hops) δεν εξαρτάται από μέγεθος ερωτήματος ή μέγεθος σχήματος
Συμπεράσματα (2/2) Πλεονεκτήματα Εισαγωγή/διαγραφή κόμβου δεν εξαρτάται από μέγεθος σχήματος Χρόνος απόκρισης ερωτήματος (hops) δεν εξαρτάται από μέγεθος ερωτήματος Λογαριθμικοί χρόνοι (hops) για εισαγωγή/διαγραφή κόμβου κ αναζήτηση ερωτήματος Λογαριθμικός αριθμός μηνυμάτων για διαγραφή κόμβου Μειονεκτήματα Απαιτούμενο πλήθος μηνυμάτων για απόκριση ερωτήματος εξαρτάται από μέγεθος ερωτήματος Γραμμικό πλήθος μηνυμάτων για εισαγωγή κόμβου κ αναζήτηση ερωτήματος
Μελλοντική δουλειά Εύρεση δρομολόγησης σχημάτων στο δακτύλιο, για αποφυγή broadcast Επέκταση εργασίας, ώστε να μην είναι εκ των προτέρων γνωστή μια καθολική ιεραρχία Πειραματική μελέτη για εύρεση χρονικού διαστήματος στο οποίο θα μετράται πλήθος ερωτημάτων που δέχτηκε μια ιεραρχία, ώστε να γίνεται πιο σωστά εξισορρόπηση φόρτου
Ερωτήσεις???
Backup Backup slides…
RDF Δεδομένα RDF (Resource Description Framework): σημασιολογική απεικόνιση μετά-δεδομένων Βασικό δομικό στοιχείο RDF δεδομένων: Υποκείμενο, Αντικείμενο, Κατηγόρημα RDF στοιχεία απεικονίζονται με URIs, π.χ. με URL μιας ιστοσελίδας RDF περιγράφονται στο πλαίσιο xml-rdf σύνταξης
RDF Σχήμα RDFS (RDF Schema): περιγραφή συνόλου RDF δεδομένων Δομικά στοιχεία: τριάδα σχήματος Τριάδα: 2 Κλάσεις - 1 Ιδιότητα RDFS περιγράφονται με namespaces RDF δεδομένα είναι στιγμιότυπα RDF κλάσεων S0:
Αλγόριθμοι σύγκρισης (1/3) Καθολικό ιεραρχία κλάσεων (κ ιδιοτήτων) αριθμείται με pre-order αρίθμηση Κάθε κόμβος-κλάση κρατάει διάστημα [α,β]: α id κλάσης, β: id τελευταίου απογόνου Δημιουργούνται επίπεδα τριάδων Κόμβοι αποθηκεύουν σχήματα ανά επίπεδο
Αλγόριθμοι σύγκρισης (2/3) Κάθε επίπεδο έχει τριάδες διαταγμένες με βάση ιδιότητα Άμεσος αλγόριθμός: συγκρίνει όλες τις τριάδες ενός σχήματος με όλες τις τριάδες του άλλου Κόστος:Ο(n 2 )
Αλγόριθμοι σύγκρισης (3/3) Αλγόριθμος βασισμένος σε επίπεδα Κάθε τριάδα ενός σχήματος ελέγχεται με όλα τα επίπεδα του δεύτερου Μέσα σε κάθε επίπεδο γίνεται ΔΔΑ με βάση ιδιότητα τριάδας Κόστος: Ο(nlog 2 n)
Πειράματα αλγορίθμων σύγκρισης σχημάτων (1/2)
Πειράματα αλγορίθμων σύγκρισης σχημάτων (2/2)