{InfiniCache}: exploiting ephemeral serverless functions to build a {cost-effective} memory cache

A Wang, J Zhang, X Ma, A Anwar, L Rupprecht… - … USENIX conference on …, 2020 - usenix.org
18th USENIX conference on file and storage technologies (FAST 20), 2020usenix.org
Internet-scale web applications are becoming increasingly storage-intensive and rely
heavily on in-memory object caching to attain required I/O performance. We argue that the
emerging serverless computing paradigm provides a well-suited, cost-effective platform for
object caching. We present InfiniCache, a first-of-its-kind in-memory object caching system
that is completely built and deployed atop ephemeral serverless functions. InfiniCache
exploits and orchestrates serverless functions' memory resources to enable elastic pay-per …
Abstract
Internet-scale web applications are becoming increasingly storage-intensive and rely heavily on in-memory object caching to attain required I/O performance. We argue that the emerging serverless computing paradigm provides a well-suited, cost-effective platform for object caching. We present InfiniCache, a first-of-its-kind in-memory object caching system that is completely built and deployed atop ephemeral serverless functions. InfiniCache exploits and orchestrates serverless functions' memory resources to enable elastic pay-per-use caching. InfiniCache's design combines erasure coding, intelligent billed duration control, and an efficient data backup mechanism to maximize data availability and cost-effectiveness while balancing the risk of losing cached state and performance. We implement InfiniCache on AWS Lambda and show that it:(1) achieves 31–96× tenant-side cost savings compared to AWS ElastiCache for a large-object-only production workload,(2) can effectively provide 95.4% data availability for each one hour window, and (3) enables comparative performance seen in a typical in-memory cache.
usenix.org