Programming stateful cloud applications remains a very painful experience. Instead of focusing on the business logic, programmers spend most of their time dealing with distributed systems considerations, with the most important being consistency, load balancing, failure management, recovery, and scalability. At the same time, we witness an unprecedented adoption of modern dataflow systems such as Apache Flink, Google Dataflow, and Timely Dataflow. These systems are now performant and fault-tolerant, and they offer excellent state management primitives. With this line of work, we aim at investigating the opportunities and limits of compiling general-purpose programs into stateful dataflows. Given a set of easy-to-follow code conventions, programmers can author stateful entities, a programming abstraction embedded in Python. We present a compiler pipeline named StateFlow, to analyze the abstract syntax tree of a Python application and rewrite it into an intermediate representation based on stateful dataflow graphs. StateFlow compiles that intermediate representation to a target execution system: Apache Flink and Beam, AWS Lambda, Flink's Statefun, and Cloudburst. Through an experimental evaluation, we demonstrate that the code generated by StateFlow incurs minimal overhead. While developing and deploying our prototype, we came to observe important limitations of current dataflow systems in executing cloud applications at scale.


翻译:编程状态的云层应用仍是一个非常痛苦的经历。 编程者不注重商业逻辑,而是花大部分时间处理分布式系统考虑,最重要的是一致性、负负平衡、故障管理、恢复和可缩放性。 与此同时,我们见证了前所未有的采用现代数据流系统,如阿帕奇·弗林克、谷歌数据流和及时数据流。 这些系统现在表现良好且不易出错,它们提供了极好的州管理原始数据。 通过这项工作,我们旨在调查将普通用途程序汇编成州性数据流的机会和限度。鉴于一套易于执行的代码公约,编程者可以编写出符合国情的实体,一个嵌入平通的抽象程序。我们展示了一个名为“ 国家” 的编程编程,以分析Python 应用程序的抽象的加税树,并将其改写成一个基于州性数据流图表的中间代表。 州Flow将这种中间代表编程汇编成一个目标执行系统:阿帕奇·弗林克和Bamm、AWS Lambda、Flink's、F 和Cloxburburbstst 应用系统。 通过一个实验性小的系统,我们正在一个重要地展示了一个实验化数据流,我们的重要数据流。 通过一个实验化数据流系统,我们进行了一个实验性数据流,我们进行了一个实验化的系统。

0
下载
关闭预览

相关内容

最新《Transformers模型》教程,64页ppt
专知会员服务
309+阅读 · 2020年11月26日
Linux导论,Introduction to Linux,96页ppt
专知会员服务
78+阅读 · 2020年7月26日
Python分布式计算,171页pdf,Distributed Computing with Python
专知会员服务
107+阅读 · 2020年5月3日
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
152+阅读 · 2019年10月12日
机器学习入门的经验与建议
专知会员服务
92+阅读 · 2019年10月10日
最新BERT相关论文清单,BERT-related Papers
专知会员服务
52+阅读 · 2019年9月29日
【电子书推荐】Data Science with Python and Dask
专知会员服务
43+阅读 · 2019年6月1日
LibRec 精选:AutoML for Contextual Bandits
LibRec智能推荐
7+阅读 · 2019年9月19日
ICLR2019最佳论文出炉
专知
12+阅读 · 2019年5月6日
CCF A类 | 顶级会议RTSS 2019诚邀稿件
Call4Papers
10+阅读 · 2019年4月17日
学术会议 | 知识图谱顶会 ISWC 征稿:Poster/Demo
开放知识图谱
5+阅读 · 2019年4月16日
Ray RLlib: Scalable 降龙十八掌
CreateAMind
9+阅读 · 2018年12月28日
Facebook PyText 在 Github 上开源了
AINLP
7+阅读 · 2018年12月14日
Disentangled的假设的探讨
CreateAMind
9+阅读 · 2018年12月10日
disentangled-representation-papers
CreateAMind
26+阅读 · 2018年9月12日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
分布式TensorFlow入门指南
机器学习研究会
4+阅读 · 2017年11月28日
Arxiv
46+阅读 · 2021年10月4日
Arxiv
45+阅读 · 2019年12月20日
Arxiv
4+阅读 · 2019年1月14日
Music Transformer
Arxiv
5+阅读 · 2018年12月12日
VIP会员
相关VIP内容
相关资讯
LibRec 精选:AutoML for Contextual Bandits
LibRec智能推荐
7+阅读 · 2019年9月19日
ICLR2019最佳论文出炉
专知
12+阅读 · 2019年5月6日
CCF A类 | 顶级会议RTSS 2019诚邀稿件
Call4Papers
10+阅读 · 2019年4月17日
学术会议 | 知识图谱顶会 ISWC 征稿:Poster/Demo
开放知识图谱
5+阅读 · 2019年4月16日
Ray RLlib: Scalable 降龙十八掌
CreateAMind
9+阅读 · 2018年12月28日
Facebook PyText 在 Github 上开源了
AINLP
7+阅读 · 2018年12月14日
Disentangled的假设的探讨
CreateAMind
9+阅读 · 2018年12月10日
disentangled-representation-papers
CreateAMind
26+阅读 · 2018年9月12日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
分布式TensorFlow入门指南
机器学习研究会
4+阅读 · 2017年11月28日
相关论文
Arxiv
46+阅读 · 2021年10月4日
Arxiv
45+阅读 · 2019年12月20日
Arxiv
4+阅读 · 2019年1月14日
Music Transformer
Arxiv
5+阅读 · 2018年12月12日
Top
微信扫码咨询专知VIP会员