Data Locality in Serverless Computing

Abstract

Negli ultimi anni il serverless computing, un nuovo paradigma cloud, ha sperimentato una rapida crescita. Questo modello, chiamato anche Function as a Service (FaaS), permette l’esecuzione di funzioni stateless in risposta ad eventi asincroni. Il suo incremento di popolarità è derivato dalla semplicità di utilizzo. Lo sviluppatore si preoccupa solamente di scrivere il codice delle funzioni e di specificare i requisiti in termini di risorse all’interno della console del provider utilizzato. Tutto il resto, compreso il dimensionamento delle risorse, è gestito in modo automatico dal gestore cloud in base al carico di lavoro richiesto. Inoltre, FaaS offre modalità originali di design e di sviluppo software unite ad una maggior flessibilità nell’uso e nel calcolo dei costi. Questo elaborato è stato inserito in un contesto più ampio, al quale ha partecipato un laureando della Magistrale di Informatica dell’Università di Bologna e due correlatori della University of Southern Denmark. Il progetto, partendo dalla piattaforma serverless open-source Apache OpenWhisk, è volto a dimostrare l’importanza della data locality durante la fase di scheduling delle funzioni. La data locality è importante per ridurre i tempi di esecuzione nel caso in cui le funzioni necessitino di interagire con basi di dati. Come dimostrato in questa tesi, eseguire le cloud functions il più vicino possibile ai dati utilizzati riduce considerevolmente la latenza

    Similar works