Unlocking True Elasticity for the Cloud-Native Era with Dandelion
Tom Kuchler, Pinghe Li, Yazhuo Zhang, Lazar Cvetković, Boris Goranov, Tobias Stocker, Leon Thomm, Simone Kalbermatter, Tim Notter, Andrea Lattuada, Ana Klimovic
TL;DR
Dandelion tackles the core limitation of current serverless elasticity by redesigning cloud interfaces from POSIX-centric networking to a cloud-native DAG model of pure compute and communication functions. By deploying on-demand, lightweight sandboxes and separating compute from I/O via cooperative network I/O, it achieves per-request startup in hundreds of microseconds and dramatic memory reductions, enabling true elasticity. The framework supports multiple isolation backends (KVM, processes, CHERI, rWasm) and provides a DSL and SDKs for C/C++ and Python, demonstrating practical gains in latency, throughput, and cost across diverse workloads including log processing, elastic query processing, and agentic AI workflows. Empirical results show up to 40% latency improvements over Athena, 67% cost reductions, and 96% memory savings versus pre-provisioned sandboxes, underscoring Dandelion’s potential to reshape cloud-native computing with secure, fine-grained, dataflow-enabled orchestration.
Abstract
Elasticity is fundamental to cloud computing, as it enables quickly allocating resources to match the demand of each workload as it arrives, rather than pre-provisioning resources to meet performance objectives. However, even serverless platforms -- which boot sandboxes in 10s to 100s of milliseconds -- are not sufficiently elastic to avoid over-provisioning expensive resources. Today's FaaS platforms rely on pre-provisioning many idle sandboxes in memory to reduce the occurrence of slow, cold starts. A key obstacle for high elasticity is booting a guest OS and configuring features like networking in sandboxes, which are required to expose an isolated POSIX-like interface to user functions. Our key insight is that redesigning the interface for applications in the cloud-native era enables co-designing a much more efficient and elastic execution system. Now is a good time to rethink cloud abstractions as developers are building applications to be cloud-native. Cloud-native applications typically consist of user-provided compute logic interacting with cloud services (for storage, AI inference, query processing, etc) exposed over REST APIs. Hence, we propose Dandelion, an elastic cloud platform with a declarative programming model that expresses applications as DAGs of pure compute functions and higher-level communication functions. Dandelion can securely execute untrusted user compute functions in lightweight sandboxes that cold start in hundreds of microseconds, since pure functions do not rely on extra software environments such as a guest OS. Dandelion makes it practical to boot a sandbox on-demand for each request, decreasing performance variability by two to three orders of magnitude compared to Firecracker and reducing committed memory by 96% on average when running the Azure Functions trace.
