F3: Serving Files Efficiently in Serverless Computing
Serverless platforms hold great promise as the ultimate on-demand computing environment, enabling the execution of fine-grained computation on clouds and at the edge. As serverless platforms evolve and become more generic, significant adoption barriers remain for storage access and efficiency. In particular, serverless applications today access storage mainly using object interfaces. Although object APIs are simple to use, they lack the richness, versatility, and performance of POSIX-based file system APIs. In particular, existing object interfaces result in long data-access latencies, even for short-lived, ephemeral data, so common in serverless applications. In this work, we present F3, a file system that offers three benefits to improve file access in serverless platforms: (1) efficient handling of ephemeral (short-lived) data, (2) data locality-aware scheduling, and (3) efficient reading while writing. We further modified OpenWhisk to support attaching file based storage and to leverage F3’s data locality hints.