Wavelet-based algorithms for approximate processing in the big data era
Authors: Μυτιλήνης Ιωάννης 
Published: September 2021

Τα σύγχρονα συστήματα αναλυτικής επεξεργασίας καλούνται να αντιμετωπίσουν έναν τεράστιο όγκο δεδομένων. Ο όγκος αυτός των δεδομένων καθώς και οι αυστηρές απαιτήσεις για τον χρόνο απόκρισης των ερωτημάτων δίνουν όλο και αυξανόμενη έμφαση στην αποδοτικότητα των τεχνικών Προσεγγιστικής Επεξεργασίας Ερωτημάτων (ΠΕΕ). Η βασική ιδέα της ΠΕΕ είναι η κατασκευή μιας συμπιεσμένης αναπαράστασης ενός συνόλου δεδομένων και η εκτέλεση των ερωτημάτων, που θέτουν οι χρήστες, πάνω σε αυτή τη σύνοψη αντί για τα αρχικά δεδομένα. Μία σημαντική πρόκληση τα τελευταία χρόνια είναι η κατασκευή συνόψεων που παρέχουν αιτιοκρατικές εγγυήσεις για την ποιότητα του αποτελέσματος. Οι ντετερμινιστικές εγγυήσεις παρέχουν ισχυρά αποτελέσματα και είναι ευκολότερο για τους χρήστες να τις κατανοήσουν και να τις ερμηνεύσουν. Καθώς τα δείγματα και τα sketches συνήθως παρέχουν στατιστικές εγγυήσεις, για την παροχή αιτιοκρατικών εγγυήσεων καταφεύγουμε κυρίως σε τεχνικές όπως τα ιστογράμματα και τα wavelets. Λόγω της ικανότητάς του να προσεγγίζει έντονες ασυνέχειες, ο μετασχηματισμός wavelet έχει αποδειχτεί ένα αρκετά αποδοτικό εργαλείο για τη μείωση του μεγέθους των δεδομένων. Ωστόσο, οι υπάρχουσες τεχνικές οι οποίες είναι βασισμένες στην χρήση των wavelets και οι οποίες παράλληλα στοχεύουν στην ελαχιστοποίηση του παρατηρούμενου μέγιστου σφάλματος πάσχουν από μεγάλη πολυπλοκότητα που καθιστά την χρήση τους μη πρακτική. Επιπλέον, δεν μπορούν να χειριστούν αποδοτικά το πρόβλημα σε πολυδιάστατα δεδομένα. Ως εκ τούτου, στο πρώτο μέρος της διατριβής προτείνω παράλληλους αλγορίθμους που εκμεταλλεύονται τις βασικές ιδιότητες του μετασχηματισμού wavelet και κατασκευάζουν αποδοτικά συνόψεις που ελαχιστοποιούν μη-Ευκλείδιες μετρικές σφαλμάτων. Η πειραματική αξιολόγηση στο κατανεμημένο σύστημα επεξεργασίας Hadoop έδειξε ότι οι προτεινόμενοι αλγόριθμοι επιτυγχάνουν γραμμική κλιμακωσιμότητα και μπορούν να επιταχύνουν την κατασκευή της σύνοψης μέχρι και 20 φορές όταν ο αλγόριθμος μπορεί να τρέξει πλήρως παράλληλα στην συστοιχία. Το δεύτερο μέρος της διατριβής μελετάει το πρόβλημα σε περιβάλλοντα ροών δεδομένων που συναντάμε σε εφαρμογές IoT. H εποχή του IoT έχει προκαλέσει μια μετατόπιση των συστημάτων από ισχυρούς υπολογιστικά διακομιστές σε συσκευές που λειτουργούν "στην άκρη του δικτύου" κι έχουν περιορισμένες δυνατότητες επεξεργασίας και μνήμης. Οι αλγόριθμοι που σχεδιάζονται για τέτοιες αρχιτεκτονικές θα πρέπει να έχουν χαμηλή χρονική πολυπλοκότητα και ελάχιστο αποτύπωμα στη μνήμη. Επίσης, σε πολλές εφαρμογές ροών δεδομένων, τα πιο πρόσφατα δεδομένα θεωρούνται πιο σημαντικά. Το μοντέλο κυλυομένου παραθύρου είναι μια ιδιαίτερη περίπτωση επεξεργασίας ροών δεδομένων, όπου διαρκώς μόνο τα πιο πρόσφατα στοιχεία παραμένουν ενεργά και τα υπόλοιπα απορρίπτονται. Καθώς στις ΙοΤ εφαρμογές η διαθέσιμη μνήμη είναι συνήθως πολύ μικρότερη από το μέγεθος του παραθύρου, τα ερωτήματα απαντώνται από συνόψεις που κατασκευάζονται σε πραγματικό χρόνο. Για την αποτελεσματική κατασκευή τέτοιων συνόψεων παρουσιάζονται αλγόριθμοι βασισμένοι σε wavelets. Οι προτεινόμενοι αλγόριθμοι παρέχουν ντετερμινιστικές εγγυήσεις και παράγουν σχεδόν ακριβή αποτελέσματα για μια ποικιλία κατανομών δεδομένων και φόρτου ερωτημάτων.