Function-as-a-Service (FaaS) has become an increasingly popular way for users to deploy their applications without the burden of managing the underlying infrastructure. However, existing FaaS platforms rely on remote storage to maintain state, limiting the set of applications that can be run efficiently. Recent caching work for FaaS platforms has tried to address this problem, but has fallen short: it disregards the widely different characteristics of FaaS applications, does not scale the cache based on data access patterns, or requires changes to applications. To address these limitations, we present Faa\$T, a transparent auto-scaling distributed cache for serverless applications. Each application gets its own Faa\$T cache. After a function executes and the application becomes inactive, the cache is unloaded from memory with the application. Upon reloading for the next invocation, Faa\$T pre-warms the cache with objects likely to be accessed. In addition to traditional compute-based scaling, Faa\$T scales based on working set and object sizes to manage cache space and I/O bandwidth. We motivate our design with a comprehensive study of data access patterns in a large-scale commercial FaaS provider. We implement Faa\$T for the provider's production FaaS platform. Our experiments show that Faa\$T can improve performance by up to 92% (57% on average) for challenging applications, and reduce cost for most users compared to state-of-the-art caching systems, i.e. the cost of having to stand up additional serverful resources.


翻译:函数- as- service (FaaS) 已经成为一个越来越受欢迎的方式, 用户可以在不承担管理基础基础设施负担的情况下部署应用程序。 但是, 现有的 FaaS 平台依靠远程存储来维持状态, 限制了可高效运行的应用程序组。 FaaS 平台最近的缓存工作试图解决这个问题, 但已经落后: 它无视FaaS 应用程序的差别性能, 不根据数据访问模式扩大缓存范围, 或者需要修改应用程序。 为了解决这些限制, 我们为服务器不使用应用程序的应用程序提供一个透明的自动缩放缓存。 每个应用程序都得到了自己的 Faa\ t 缓存。 在功能执行并停止运行后, 缓存会从记忆中卸下。 在为下次启用时, Fa\ t 预置工作将缓存内容与可能访问的天体进行重置。 除了传统的基于配置的缩放缩放, Faa\ t 缩尺度, 管理缓存空间和 I/ O 宽带宽的透明自动缩。 我们通过对Fa 应用程序的设计进行推动设计, 在大规模商业访问模式中, 我们用平均的Fa- a 实验系统可以将累进成本。

0
下载
关闭预览

相关内容

最新《神经架构搜索NAS》教程,33页pdf
专知会员服务
26+阅读 · 2020年12月2日
Linux导论,Introduction to Linux,96页ppt
专知会员服务
77+阅读 · 2020年7月26日
FlowQA: Grasping Flow in History for Conversational Machine Comprehension
专知会员服务
28+阅读 · 2019年10月18日
强化学习最新教程,17页pdf
专知会员服务
174+阅读 · 2019年10月11日
2019年机器学习框架回顾
专知会员服务
35+阅读 · 2019年10月11日
机器学习入门的经验与建议
专知会员服务
92+阅读 · 2019年10月10日
【SIGGRAPH2019】TensorFlow 2.0深度学习计算机图形学应用
专知会员服务
39+阅读 · 2019年10月9日
LibRec 精选:AutoML for Contextual Bandits
LibRec智能推荐
7+阅读 · 2019年9月19日
分布式并行架构Ray介绍
CreateAMind
9+阅读 · 2019年8月9日
已删除
将门创投
4+阅读 · 2018年5月31日
(TensorFlow)实时语义分割比较研究
机器学习研究会
9+阅读 · 2018年3月12日
Auto-Encoding GAN
CreateAMind
7+阅读 · 2017年8月4日
Arxiv
0+阅读 · 2021年6月18日
VIP会员
相关VIP内容
最新《神经架构搜索NAS》教程,33页pdf
专知会员服务
26+阅读 · 2020年12月2日
Linux导论,Introduction to Linux,96页ppt
专知会员服务
77+阅读 · 2020年7月26日
FlowQA: Grasping Flow in History for Conversational Machine Comprehension
专知会员服务
28+阅读 · 2019年10月18日
强化学习最新教程,17页pdf
专知会员服务
174+阅读 · 2019年10月11日
2019年机器学习框架回顾
专知会员服务
35+阅读 · 2019年10月11日
机器学习入门的经验与建议
专知会员服务
92+阅读 · 2019年10月10日
【SIGGRAPH2019】TensorFlow 2.0深度学习计算机图形学应用
专知会员服务
39+阅读 · 2019年10月9日
相关资讯
LibRec 精选:AutoML for Contextual Bandits
LibRec智能推荐
7+阅读 · 2019年9月19日
分布式并行架构Ray介绍
CreateAMind
9+阅读 · 2019年8月9日
已删除
将门创投
4+阅读 · 2018年5月31日
(TensorFlow)实时语义分割比较研究
机器学习研究会
9+阅读 · 2018年3月12日
Auto-Encoding GAN
CreateAMind
7+阅读 · 2017年8月4日
Top
微信扫码咨询专知VIP会员