Η MELODIC είναι μια πλατφόρμα για την διαχείριση εφαρμογών πάνω και κατά μήκος πολλαπλών νεφών. Επιτρέπει την υλοποίηση εφαρμογών που αποτελούνται από συστατικά μέρη διαφορετικών διαμορφώσεων, όπως ιδεατές μηχανές (virtual machines), δοχεία (containers), καθώς και λειτουργίες μεγάλων δεδομένων (big data tasks) και ανεξαρτήτου εξυπηρετητή (serverless functions). Ενοποιείται με σημαντικούς παρόχους υπηρεσιών νέφους όπως AWS, Azure & Google Cloud καθώς και με ιδιωτικά νέφη που έχουν οργανωθεί μέσω OpenStack. Συνεπώς, επιτρέπει την διάταξη τόσο σε δημόσια όσο και σε υβριδικά νέφη. Επιπρόσθετα, αντίθετα με το Kubernetes, το οποίο επιτρέπει την βελτιστοποίηση πόρων σε μια υπάρχων συστάδα με συγκεκριμένο μέγεθος, η πλατφόρμα MELODIC επιτρέπει την δυναμική προσθήκη και διαγραφή πόρων ανάλογα με τις ανάγκες της εφαρμογής και τον τρέχων φόρτο εργασίας της. Συνεπώς, δεν είναι αναγκαία η διατήρηση μιας υπερμεγέθους υποδομής.
Τα κύρια χαρακτηριστικά της πλατφόρμας MELODIC μπορούν να συνοψιστούν ως εξής:
- Αυτόματη διάταξη εφαρμογών: μια εφαρμογή διατάσσεται με ένα πλήρως αυτοματοποιημένο τρόπο ενώ η αναδιάταξή της λόγω αποφάσεων αναδιαμόρφωσης πραγματοποιείται επίσης αυτόματα
- Διάταξη οδηγούμενη από τους στόχους: η διάταξη και η αναδιαμόρφωση μιας εφαρμογής πραγματοποιείται βέλτιστα με βάση τα χαρακτηριστικά της, τα διάφορα είδη περιορισμών (πχ. σε χαρακτηριστικά υποκείμενων πόρων ή περιβαλλόντων, στην ποιότητα υπηρεσίας, στην τοποθεσία των συστατικών και δεδομένων της εφαρμογής, κλπ.) της καθώς και μια συνάρτηση χρησιμότητας (utility) που ανακλά τις ανάγκες και στόχους της. Ουσιαστικά επιλέγεται μια διάταξη ή αναδιαμόρφωση της εφαρμογής που μεγιστοποιεί την αντίστοιχη χρησιμότητα με βάση την συνάρτηση χρησιμότητας της καθώς και τους διαθέσιμους πόρους και περιβάλλοντα που ικανοποιούν τους περιορισμούς της
- Υποστήριξη μεγάλων δεδομένων: η πλατφόρμα MELODIC παρέχει υποστήριξη για σημαντικά πλαίσια (επεξεργασίας) μεγάλων δεδομένων, όπως το Spark, ενώ προσφέρει επίγνωση θέσης δεδομένων ώστε να μεταφέρει τους υπολογισμούς πιο κοντά στα δεδομένα και άρα να βελτιώσει τον χρόνο απόκρισής τους. Επιπλέον, επιτρέπει την δυναμική αλλαγή μεγέθους των συστάδων μεγάλων δεδομένων με βάση το τρέχων περιβάλλον της εφαρμογής (current application context).
- Πλατφόρμα επιχειρησιακού επιπέδου: η πλατφόρμα MELODIC ακολουθεί μια αρχιτεκτονική βασιζόμενη σε μικρο-υπηρεσίες που χρησιμοποιεί ένα enterprise service bus (ESB) ως το μέσο επικοινωνίας και κλήσεων μικρο-υπηρεσιών καθώς και ένα πλαίσιο διαχείρισης επιχειρησιακών διαδικασιών (business process management – BPM) για την ενορχήστρωση της επιχειρησιακής λογικής. Υποστηρίζει όλα τα απαραίτητα πρωτόκολλα ενοποίησης και επιτρέπει την ευέλικτη ενοποίηση με επιχειρησιακά συστήματα. Επιπλέον, επιτρέπει την εφαρμογή μεθόδων ανοχής σφαλμάτων καθώς και τον ευέλικτο προσδιορισμό και τροποποίηση των διαφόρων διαδικασιών διαχείρισης της εφαρμογής πολλαπλών νεφών μέσω της χρήσης αντίστοιχων μοντέλων επιχειρησιακών διαδικασιών.
Η πλατφόρμα MELODIC ακολουθεί μια προσέγγιση οδηγούμενη από μοντέλα εφαρμογών. Συγκεκριμένα, ένα μοντέλο εφαρμογής προσδιορίζεται από τον χρήση και χρησιμοποιείται ως οδηγός για την βέλτιστη διαχείρισή της καθώς και της υποκείμενης υποδομής της. Το μοντέλο αυτό περιγράφεται με βάση μια πλούσια γλώσσα με όνομα CAMEL, η οποία καλύπτει όλες τις σχετικές πλευρές μια εφαρμογής, όπως την τοπολογία των συστατικών της μερών, τις απαιτήσεις της, την συνάρτηση χρησιμότητά της καθώς και τις μετρικές παρακολούθησής της, όπου οι περιορισμοί πάνω από αυτές επιτρέπουν στην πλατφόρμα να ανιχνεύσει την ανάγκη αναδιάταξής της ώστε να αντιμετωπισθεί η παραβίασή τους.
Με βάση, λοιπόν, το μοντέλο της εφαρμογής στην CAMEL (βήμα 1), η πλατφόρμα αναλαμβάνει την διάταξη και αναδιαμόρφωσή της ακολουθώντας μια διαδικασία που περιλαμβάνει μια σειρά από τα ακόλουθα βήματα, όπως φαίνεται και στην παρακάτω εικόνα:
- Παραγωγή αρχικού πλάνου διάταξης της εφαρμογής: Σε αυτό το βήμα πραγματοποιείται η παραγωγή ενός μοντέλου βελτιστοποίησης με βάση τις απαιτήσεις της εφαρμογής, τους περιορισμούς της και την συνάρτηση χρησιμότητας, το οποίο επιλύεται μέσω της κατάλληλης επιλογής και εκτέλεσης ενός Solver (επιλυτή). Η λύση αυτή έπειτα μεταφράζεται σε ένα πλάνο διάταξης
- Διάταξη εφαρμογής: το παραγόμενο πλάνο χρησιμοποιείται για την διάταξη της εφαρμογής κατά μήκος ενός ή περισσότερων νεφών. Είναι σημαντικό εδώ να τονιστεί πως εκτός από τα στιγμιότυπα των συστατικών μερών της εφαρμογής εγκαθίστανται στις αντίστοιχες ιδεατές μηχανές που δημιουργούνται και συστατικά μέρη παρακολούθησης της εφαρμογής
- Παρακολούθηση εφαρμογής: Η υποδομή παρακολούθησης παράγει μια σειρά από μετρήσεις, τις οποίες εκμεταλλεύεται η πλατφόρμα ώστε να παράγει νέες και πιο σύνθετε καθώς και να αποτιμήσει την ικανοποίηση περιορισμών ποιότητας υπηρεσίας της εφαρμογής
- Πλάνο Προσαρμογής εφαρμογής: η παραβίαση των περιορισμών ποιότητας υπηρεσίας οδηγεί στην ανάγκη καθολικής προσαρμογής της εφαρμογής. Για αυτό τον λόγο, παράγεται πρώτα ένα βέλτιστο πλάνο αναδιάταξης της εφαρμογής, όπως στην περίπτωση του βήματος 2, το οποίο αποτελείται από εκείνες της ενέργειες αναδιαμόρφωσης εφαρμογής που την μεταφέρουν από την τρέχουσα κατάσταση στην επιθυμητή
- Προσαρμογή εφαρμογής: Το παραγόμενο πλάνο προσαρμογής / αναδιάταξης της εφαρμογής εφαρμόζεται κατά μήκος ενός ή περισσότερων νεφών όπως και στην περίπτωση του βήματος 3. Η εφαρμογή του πραγματοποιείται με τέτοιο τρόπο ώστε να υπάρχει η δυνατότητα μετάβασης στην προηγούμενη κατάσταση αν κάτι πάει στραβά
Υπάρχουν διάφορες μελέτες περίπτωσης που επιδεικνύουν την καταλληλότητα και αναγκαιότητα της πλατφόρμας MELODIC. Για λόγους οικονομίας χώρου, θα εστιάσουμε μόνο σε μια την ανάλυσή μας. Η νεοφυής επιχείρηση AI Investments, με βάση την Πολωνία, χρησιμοποιεί την τεχνητή νοημοσύνη σε μια αυτό-βελτιώμενη (self-improving) πλατφόρμα για την βελτιστοποίηση ενός χαρτοφυλακίου επένδυσης σε μια ολοκληρωμένη λύση εμπορίου για καθολικές αγορές, συμπεριλαμβανομένου ενός διαφοροποιημένου τρόπου σηματοδότησης δοσοληψιών, προσδιορισμού συνθηκών αγοράς, και της διαχείρισης της έκθεσης (exposure). Αντί της πρόβλεψης των τιμών των συστατικών του χαρτοφυλακίου, η λύση προσφέρει διαφοροποιημένες ειδοποιήσεις υψηλής πιθανότητας δοσοληψιών για την έκθεση, τον κίνδυνο, και την διαχείριση του μεγέθους τοποθέτησης (position sizing) μέσω της εφαρμογής βαθιών συνεκτικών νευρωνικών δικτύων (convolutional neural networks – CNNs), μεγάλων δικτύων βραχυπρόθεσμης μνήμης καθώς και ενός αλγορίθμου ενισχυτικής μάθησης με βάση την αναζήτηση δένδρων Monte Carlo με δίκτυα αξιών. Η λύση είναι πλήρως κατανεμημένη όπου τα βήματα προ-επεξεργασίας και εκπαίδευσης πραγματοποιούνται με κατανεμημένο τρόπο ενώ ακολουθείται υβριδική αρχιτεκτονική όπου πόροι δημόσιοι νέφους αντλούνται μόνο αν ο φόρτος εργασίας δεν μπορεί να ικανοποιηθεί από το επιτόπιο περιβάλλον της επιχείρησης. Οι απαιτήσεις για αυτή την λύση συνοψίζονται ως εξής:
- 3000 μοντέλα πρέπει να εκπαιδευτούν και να επανεκπαιδευτούν με περιοδικό τρόπο
- Οι προβλέψεις πρέπει να γίνονται σε σχεδόν πραγματικό χρόνο με 1 λεπτό ως άνω χρονικό όριο επεξεργασίας
- Η ελαχιστοποίηση του κόστους διάταξης ανά ώρα
Η πλατφόρμα MELODIC κατόρθωσε να μειώσει το συνολικό κόστος για ένα χρονικό ορίζοντα 3 χρόνων και έτσι να προσδώσει αρκετό κέρδος και όφελος στην AI Investments. Συγκεκριμένα, η AI Investments αγόρασε 5 εξυπηρετητές με 2 GPU ο καθένας για να ικανοποιεί τον ελάχιστο φόρτο εργασίας (10 ταυτόχρονα μοντέλα προς εκπαίδευση) ενώ μέσω της χρήσης της πλατφόρμας, αντλούσε τον ελάχιστο αριθμό (8) από επιπλέον ιδεατές μηχανές με 1 GPU η κάθε μία μόνο όταν χρειάζονταν, δηλ. περίπου 120 ώρες τον μήνα. Αντιθέτως, η χρήση συνεχώς ενός συγκεκριμένου αριθμού από πόρους δημόσιου νέφους (40), αν χρησιμοποιούνταν μια οποιαδήποτε άλλη πλατφόρμα χωρίς ικανότητες βελτιστοποίησης, για την ικανοποίηση μέχρι και του μέγιστου φόρτου εργασίας, θα οδηγούσε σε ένα πολύ μεγαλύτερο κόστος χρήσης του δημόσιου νέφους. Τα αντίστοιχα ποσά φαίνονται παρακάτω:
- Πλατφόρμα MELODIC: 8 επιπλέον ιδεατές μηχανές με κόστος 1 δολάριο ανά ώρα οδηγεί σε 960 δολάρια το μήνα και σε 34560 δολάρια τα τρία χρόνια (χρονικός ορίζοντας)
- Άλλες πλατφόρμες: 40 επιπλέον ιδεατές μηχανές με κόστος 1 δολάριο ανά ώρα οδηγεί σε 4800 δολάρια το μήνα και σε 172800 δολάρια τα τρία χρόνια
Συνεπώς, το κέρδος από την χρήση μιας πλατφόρμας βελτιστοποίησης όπως η MELODIC φθάνει σε 138.240 δολάρια, ένα διόλου ευκαταφρόνητο ποσό.
Πηγή: melodic.cloud