"Universitat Rovira i Virgili. Programa de doctorat en Enginyeria Informàtica i Matemàtiques de la Seguretat"
La computació sense servidor ha sorgit com un model de computació en el núvol altament escalable i de baixa latència, sent Function-as-a-Service (FaaS) especialment adequada per a aplicacions interactives intensives en dades i computació. A diferència de desplegaments tradicionals, on per a obtenir latències interactives es requereix de clústers sempre actius, la computació sense servidor es basa en funcions efímeres que escalen dinàmicament, optimitzant l'ús de recursos. No obstant això, el model sense servidor presenta diversos reptes. La naturalesa efímera i sense estat de FaaS requereix una ingesta de dades eficient a causa de la seva arquitectura desacoblada. A més, la falta d'adreçament directe complica el desenvolupament d'aplicacions amb estat, que requereixen intermediaris per a gestionar l'estat compartit. Els models de programació existents no són adequats quant a usabilitat, aplicabilitat o elasticitat. Aquesta tesi presenta tres contribucions per a millorar els entorns sense servidor per a aplicacions paral·leles de dades. Primer, introduïm un model elàstic de gestió de dades que permet la lectura paral·lela de dades científiques per a mitigar el problema de l'enviament de dades. Utilitzant tècniques d'indexació de dades no intrusives i de només lectura, aconseguim un particionament sobre la marxa lleuger i eficient en recursos. En segon lloc, proposem la transparència d'accés com a model de programació, permetent a les aplicacions interactuar amb recursos remots com si fossin locals, simplificant l'adaptació a entorns sense servidor. L'avaluació demostra com aplicacions monolítiques poden escalar fàcilment utilitzant aquest enfocament. Finalment, introduïm burst computing, un model de computació que optimitza els treballs de processament paral·lel en FaaS. Aquesta abstracció permet l'agrupació de funcions per a explotar la localitat de les dades, reduint la sobrecàrrega de comunicació remota. La tesi conclou motivant el desenvolupament d'aplicacions en el núvol que permeten aquests enfocaments, millorant les càrregues de treball elàstiques i interactives.
La computación sin servidor ha surgido como un modelo de computación en la nube altamente escalable y de baja latencia, siendo Function-as-a-Service (FaaS) especialmente adecuada para aplicaciones interactivas intensivas en datos y computación. A diferencia de despliegues tradicionales, donde para obtener latencias interactivas requiere clusters siempre activos, la computación sin servidor se basa en funciones efímeras que se escalan dinámicamente, optimizando el uso de recursos. Sin embargo, el modelo sin servidor presenta varios retos. La naturaleza efímera y sin estado de FaaS requiere una ingestión de datos eficiente debido a su arquitectura desacoplada. Además, la falta de direccionamiento directo complica el desarrollo de aplicaciones con estado, que requieren intermediarios para gestionar el estado compartido. Los modelos de programación existentes no son adecuados en cuanto a usabilidad, aplicabilidad o elasticidad. Esta tesis presenta tres contribuciones para mejorar los entornos sin servidor para aplicaciones paralelas de datos. Primero, introducimos un modelo elástico de gestión de datos que permite la lectura paralela de datos científicos para mitigar el problema del envío de datos. Utilizando técnicas de indexación de datos no intrusivas y de sólo lectura, logramos un particionamiento sobre la marcha ligero y eficiente en recursos. En segundo lugar, proponemos la transparencia de acceso como modelo de programación, permitiendo a las aplicaciones interactuar con recursos remotos como si fueran locales, simplificando la adaptación a entornos sin servidor. La evaluación demuestra cómo aplicaciones monolíticas pueden escalar fácilmente utilizando este enfoque. Por último, introducimos burst computing, un modelo de computación que optimiza los trabajos de procesamiento paralelo en FaaS. Esta abstracción permite la agrupación de funciones para explotar la localidad de los datos, reduciendo la sobrecarga de comunicación remota. La tesis concluye motivando el desarrollo de aplicaciones en la nube que permiten estos enfoques, mejorando las cargas de trabajo elásticas e interactivas.
Serverless computing has emerged as a highly scalable and low-latency cloud computing model, with Function as a Service (FaaS) being particularly suited for interactive data- and compute-intensive applications, referred to as burst-parallel jobs. Unlike traditional Infrastructure as a Service (IaaS), where maintaining interactive latencies requires always-on clusters with pre-loaded data, serverless computing relies on ephemeral functions that scale dynamically, optimizing resource usage. However, the serverless model introduces several challenges. The ephemeral and stateless nature of FaaS necessitates efficient data ingestion due to its data-shipping architecture. Additionally, the lack of direct addressing complicates stateful application development, requiring intermediaries to manage state-sharing while minimizing latency. Existing programming models for stateful applications present trade-offs in usability, applicability, or elasticity. This thesis explores three research directions to enhance serverless environments for job-scoped, data-parallel applications. First, we introduce an elastic data management model, enabling parallel reading of scientific data to mitigate the data-shipping issue. Using non-intrusive, read-only data indexing techniques, it allows lightweight and resource-efficient on-the-fly partitioning. Second, we propose access transparency as a serverless programming model, by enabling applications to interact with disaggregated resources as if they were local, transparency simplifies the adaptation of stateful applications to serverless environments. An evaluation study demonstrates how monolithic applications can seamlessly scale using this approach. Finally, we introduce burst computing, a novel approach optimizing stateful burst-parallel jobs in FaaS by making the platform aware of parallel jobs. This abstraction allows function grouping to exploit data locality, reducing remote communication overhead caused by FaaS’s lack of direct addressing. The thesis concludes by emphasizing the shift in cloud application development enabled by these approaches, improving low-latency, data-intensive workloads in serverless computing.
Computació al núvol; Computació sense servidor; Anàlisi de dades; Computación en la nube; Computación sin servidor; Análisis de datos; Cloud computing; Serverless computing; Data analytics
004 - Computer science
Enginyeria i arquitectura
ADVERTIMENT. Tots els drets reservats. L'accés als continguts d'aquesta tesi doctoral i la seva utilització ha de respectar els drets de la persona autora. Pot ser utilitzada per a consulta o estudi personal, així com en activitats o materials d'investigació i docència en els termes establerts a l'art. 32 del Text Refós de la Llei de Propietat Intel·lectual (RDL 1/1996). Per altres utilitzacions es requereix l'autorització prèvia i expressa de la persona autora. En qualsevol cas, en la utilització dels seus continguts caldrà indicar de forma clara el nom i cognoms de la persona autora i el títol de la tesi doctoral. No s'autoritza la seva reproducció o altres formes d'explotació efectuades amb finalitats de lucre ni la seva comunicació pública des d'un lloc aliè al servei TDX. Tampoc s'autoritza la presentació del seu contingut en una finestra o marc aliè a TDX (framing). Aquesta reserva de drets afecta tant als continguts de la tesi com als seus resums i índexs.