Efficient analysis in event logs
Authors: Μαυρουδόπουλος Ιωάννης 
Published: August 2024

Τις τελευταίες δεκαετίες, παρατηρείται μια αξιοσημείωτη αύξηση ακολουθιών συμβάντων ως μορφή δεδομένων. Εκτός από την ανάλυση σε πραγματικό χρόνο, τα δεδομένα αυτά αποθηκεύονται σε βάσεις δεδομένων επιτρέποντας άλλες μορφές ανάλυσης, όπως η εξαγωγή συχνών μοτίβων. Κατά συνέπεια, συσσωρεύεται μεγάλος όγκος δεδομένων συμβάντων. Αυτό δίνει ιδιαίτερη έμφαση στη σπουδαιότητα της ανάπτυξης αποτελεσματικών μεθόδων για την ανάλυση αυτών των ακολουθιών συμβάντων και την ανακάλυψη χρήσιμων πληροφοριών. Ένα σημαντικό πρόβλημα είναι η ανίχνευση συγκεκριμένων συμπεριφορών σε ένα μεγάλο όγκο αποθηκευμένων δεδομένων, οι οποίες δεν είναι γνωστές εκ των προτέρων. Για την αποδοτική επίλυση αυτού του προβλήματος, η παρούσα διατριβή παρουσιάζει το SIESTA, μια υποδομή που αξιοποιεί μια δομή ευρετηρίασης, γνωστή ως αντεστραμμένος κατάλογος, με σκοπό τη μείωση του χρόνου απόκρισης. Το SIESTA αποτελείται από δύο διακριτά υποσυστήματα. Το πρώτο είναι υπεύθυνο για την προεπεξεργασία των δεδομένων, δημιουργώντας και ενημερώνοντας τις δομές ευρετηρίασης από συνεχώς εισερχόμενα δεδομένα. Για τη βέλτιστη επίτευξη του στόχου αυτού αξιοποιεί τον παραλληλισμό που προσφέρεται από το πλαίσιο Apache Spark. Οι δομές αυτές αποθηκεύονται στη συνέχεια σε μια κλιμακούμενη βάση δεδομένων. Το δεύτερο υποσύστημα χρησιμοποιεί τις δομές για να μειώσει τον χώρο αναζήτησης και να επιταχύνει τους χρόνους απόκρισης στα ερωτήματα εύρεσης μοτίβων. Διερευνήθηκαν διάφορες εναλλακτικές προσεγγίσεις και για τα δύο υποσυστήματα, με σκοπό τη βελτιστοποίηση της συνολικής τους απόδοσης. Η εκτεταμένη αξιολόγηση δείχνει ότι το SIESTA επιτυγχάνει σημαντικά χαμηλότερους χρόνους απόκρισης στον εντοπισμό μοτίβων σε σύγκριση με άλλα state-of-the-art συστήματα, όπως το Elasticsearch και το FlinkCEP. Επιπλέον, στο δεύτερο υποσύστημα ενσωματώθηκε μια μηχανή Complex Event Processing (CEP), η οποία επιτρέπει αφενός στο προτεινόμενο σύστημα να εντοπίζει πιο πολύπλοκα μοτίβα, τα οποία περιέχουν αρνήσεις και επαναλήψεις, και αφετέρου την εύρεση της αιτίας για μη αναμενόμενα αποτελέσματα. Οι αποτελεσματικοί μηχανισμοί κλαδέματος και η εγγενής παραλληλοποίηση του SIESTA επιτρέπουν την προσαρμογή του για την εξόρυξη δηλωτικών περιορισμών σε σενάρια μεγάλων δεδομένων. Συγκεκριμένα, το υποσύστημα που χειρίζεται τα ερωτήματα επεκτάθηκε, ενώ η διαδικασία δημιουργίας των δομών ευρετηρίασης παρέμεινε αμετάβλητη. Με αυτόν τον τρόπο επεκτάθηκαν οι λειτουργίες του SIESTA, χωρίς όμως να χαθεί καμία από τις υπάρχουσες δυνατότητές του. Η αξιολόγηση της προτεινόμενης λύσης, αξιοποιώντας δεδομένα πραγματικού κόσμου, έδειξε πως παρουσιάζει καλύτερες επιδόσεις σε σύγκριση με τις υπάρχουσες ad-hoc λύσεις από τον χώρο των επιχειρησιακών διαδικασιών, όπως το Declare Miner και το MINERful, ιδίως όταν αυξάνεται ο όγκος των δεδομένων και λαμβάνονται υπόψη πολλαπλά όρια υποστήριξης. Το τελευταίο αλλά εξίσου σημαντικό πρόβλημα που αναλύεται, είναι η ανίχνευση χρονικών ανωμαλιών, οι οποίες περιγράφουν μη-κανονικούς χρόνους εκτέλεσης ενός συμβάντος ή μίας ακολουθίας. Για την επίλυση αυτού του προβλήματος, εισάγονται τέσσερις τεχνικές που χρησιμοποιούν την έννοια της απόστασης μεταξύ των δεδομένων, για την εύρεση χρονικών ανωμαλιών. Αυτές οι τεχνικές δοκιμάστηκαν σε συνδυασμό με διαφορετικές συναρτήσεις απόστασης, όπως είναι η Ευκλίδεια και η Mahalanobis. Η εκτενής αξιολόγηση έδειξε πως αυτές οι μέθοδοι έχουν μεγαλύτερη ακρίβεια από μεθόδους που βασίζονται στη στατιστική, ενώ παράλληλα φανέρωσε κάποιες κατευθυντήριες γραμμές για το ποια από τις προτεινόμενες μεθόδους πρέπει να προτιμάται ανάλογα με τον τύπο των ανωμαλιών που αναζητούνται (μεμονωμένα συμβάντα ή ολόκληρες ακολουθίες) και τα χαρακτηριστικά του συνόλου των δεδομένων.