Περίληψη : | Η ραγδαία αύξηση των ανθρώπων που αποκτούν πρόσβαση σε τεχνολογίες αιχμής και ο συνεχώς αυξανόμενος αριθμός των τεχνολογικών συσκευών έχουν συντελέσει στην εκτόξευση του όγκου των δεδομένων που δημιουργούνται καθημερινά, από χρηματοπιστωτικές συναλλαγές, από δεδομένα χρηστών, από αισθητήρες κ.ά. Οι επιχειρήσεις επιθυμούν να εξάγουν συμπεράσματα από τα δεδομένα που λαμβάνουν, με πολύ μικρή απόκλιση από τον χρόνο δημιουργίας τους. Επομένως, επιτακτική προβάλλει η ανάγκη παροχής υψηλής διεκπεραιωτικής ικανότητας (throughput) των συστημάτων επεξεργασίας με χαμηλό λανθάνων χρόνο, ώστε να δίνουν ταυτόχρονα την δυνατότητα ανάπτυξης ενός συστήματος ανεκτικού σε σφάλματα. Ένα τέτοιο σύστημα είναι το Apache Flink, το οποίο αποτελεί τη πιο σύγχρονη και πιο αξιόπιστη λύση ελεύθερου λογισμικού για επεξεργασία ροών δεδομένων σε πραγματικό χρόνο.Στη παρούσα εργασία, κατόπιν μιας σύντομης αναφοράς των κυριότερων συστημάτων επεξεργασίας ροών δεδομένων, εμβαθύνουμε στην αρχιτεκτονική υλοποίησης του Apache Flink και των δυνατοτήτων που παρέχει. Επίσης, σχεδιάζουμε και υλοποιούμε ένα σύστημα, το οποίο επιτρέπει στους χρήστες του να ορίσουν τις ροές εισόδου των δεδομένων, τους μετασχηματισμούς τους και τις ροές στις οποίες θα εγγραφούν τα αποτελέσματα της επεξεργασίας μέσω ενός JSON αρχείου. Το σύστημα αυτό χρησιμοποιεί το Apache Flink και δεν απαιτείται η ανάπτυξη κώδικα από τον χρήστη, παρά μόνο η συγγραφή του json αρχείου. Στο τέλος, παρουσιάζουμε ένα παράδειγμα χρήσης της εφαρμογής με πραγματικά δεδομένα, που αποδεικνύει ότι η επεξεργασία των ροών, μέσω της δήλωσης των μετασχηματισμών από τον χρήστη, αποτελεί μία αποδοτική λύση.
|
---|