skip to main content
10.5555/3650697.3650716guideproceedingsArticle/Chapter ViewAbstractPublication PagesfastConference Proceedingsconference-collections
research-article

MinFlow: high-performance and cost-efficient data passing for I/O-intensive stateful serverless analytics

Published: 11 March 2024 Publication History

Abstract

Serverless computing has revolutionized application deployment, obviating traditional infrastructure management and dynamically allocating resources on demand. A significant use case is I/O-intensive applications like data analytics, which widely employ the pivotal "shuffle" operation. Unfortunately, the shuffle operation poses severe challenges due to the massive PUT/GET requests to remote storage, especially in high-parallelism scenarios, leading to high performance degradation and storage cost. Existing designs optimize the data passing performance from multiple aspects, while they operate in an isolated way, thus still introducing unforeseen performance bottlenecks and bypassing untapped optimization opportunities. In this paper, we develop MinFlow, a holistic data passing framework for I/O-intensive serverless analytics jobs. Min-Flow first rapidly generates numerous feasible multi-level data passing topologies with much fewer PUT/GET operations, then it leverages an interleaved partitioning strategy to divide the topology DAG into small-size bipartite sub-graphs to optimize function scheduling, further reducing over half of the transmitted data to remote storage. Moreover, MinFlow also develops a precise model to determine the optimal configuration, thus minimizing data passing time under practical function deployments. We implement a prototype of MinFlow, and extensive experiments show that MinFlow significantly outperforms state-of-the-art systems, FaaSFlow and Lambada, in both the job completion time and storage cost.

References

[1]
Linux tmpfs, 2023. https://www.kernel.org/doc/html/latest/filesystems/tmpfs.html, Last accessed on 2023-6-29.
[2]
Sort Benchmarks, 2023. https://sortbenchmark.org/, Last accessed on 2023-6-29.
[3]
TPC-DS, 2023. https://www.tpc.org/tpcds/#, Last accessed on 2023-6-29.
[4]
AMAZON. Amazon elasticache, 2023. https://aws.amazon.com/elasticache/, Last accessed on 2023-6- 29.
[5]
AMAZON. Amazon Lambda, 2023. https://aws.amazon.com/lambda, Last accessed on 2023-6-11.
[6]
AMAZON. Amazon Lambda price, 2023. https://aws.amazon.com/cn/lambda/pricing/.
[7]
AMAZON. Amazon Lambda usecases, 2023. https://docs.aws.amazon.com/lambda/latest/dg/applications-usecases.html, Last accessed on 2023-7-2.
[8]
AMAZON. Amazon S3, 2023. https://aws.amazon.com/s3/, Last accessed on 2023-6-11.
[9]
AMAZON. Amazon S3 price, 2023. https://aws.amazon.com/cn/s3/pricing/.
[10]
AMAZON. Amazon S3 QPS limit, 2023. https://aws.amazon.com/cn/about-aws/whats-new/2018/07/amazon-s3-announces-increased-request-rate-performance/, Last accessed on 2023-6-29.
[11]
Apache. Apache Kvrocks, 2023. https://github.com/apache/kvrocks, Last accessed on 2023-7-2.
[12]
J. Carreira, P. Fonseca, A. Tumanov, A. Zhang, and R. Katz. Cirrus: A serverless framework for end-to-end ml workflows. In Proceedings of the ACM Symposium on Cloud Computing, pages 13-24, 2019.
[13]
B. Carver, J. Zhang, A. Wang, A. Anwar, P. Wu, and Y. Cheng. Wukong: A scalable and locality-enhanced framework for serverless parallel computing. In Proceedings of the 11th ACM Symposium on Cloud Computing, pages 1-15, 2020.
[14]
M. Chowdhury and I. Stoica. Coflow: A networking abstraction for cluster applications. In Proceedings of the 11th ACM Workshop on Hot Topics in Networks, pages 31-36, 2012.
[15]
J. Dean and S. Ghemawat. Mapreduce: simplified data processing on large clusters. Communications of the ACM, 51(1):107-113, 2008.
[16]
J. Duato, S. Yalamanchili, and L. Ni. Interconnection networks. Morgan Kaufmann, 2003.
[17]
J. Herrmann, M. Y. Özkaya, B. Uçar, K. Kaya, and U. V. Çatalyürek. Multilevel algorithms for acyclic partitioning of directed acyclic graphs. SIAM J. Sci. Comput., 41(4):A2117-A2145, jan 2019.
[18]
IBM. IBM cloud functions usecases, 2023. https://cloud.ibm.com/docs/openwhisk?topic=openwhisk-use_cases, Last accessed on 2023-7-2.
[19]
E. Jonas, J. Schleier-Smith, V. Sreekanti, C.-C. Tsai, A. Khandelwal, Q. Pu, V. Shankar, J. Carreira, K. Krauth, N. Yadwadkar, et al. Cloud programming simplified: A berkeley view on serverless computing. arXiv preprint arXiv:1902.03383, 2019.
[20]
A. Khandelwal, Y. Tang, R. Agarwal, A. Akella, and I. Stoica. Jiffy: Elastic far-memory for stateful serverless analytics. In Proceedings of the Seventeenth European Conference on Computer Systems, pages 697-713, 2022.
[21]
A. Klimovic, Y. Wang, C. Kozyrakis, P. Stuedi, J. Pfefferle, and A. Trivedi. Understanding ephemeral storage for serverless analytics. In 2018 USENIX annual technical conference (USENIX ATC 18), pages 789-794, 2018.
[22]
A. Klimovic, Y. Wang, P. Stuedi, A. Trivedi, J. Pfefferle, and C. Kozyrakis. Pocket: Elastic ephemeral storage for serverless analytics. In OSDI, pages 427-444, 2018.
[23]
V. Kumar, A. Grama, A. Gupta, and G. Karypis. Introduction to parallel computing, volume 110. Benjamin/ Cummings Redwood City, CA, 1994.
[24]
H. R. Lewis. Michael r. πgarey and david s. johnson. computers and intractability. a guide to the theory of np-completeness. wh freeman and company, san francisco1979, x+ 338 pp. The Journal of Symbolic Logic, 48(2):498-500, 1983.
[25]
Z. Li, Y. Liu, L. Guo, Q. Chen, J. Cheng, W. Zheng, and M. Guo. Faasflow: Enable efficient workflow execution for function-as-a-service. In Proceedings of the 27th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, pages 782-796, 2022.
[26]
Y. Liu, B. Jiang, T. Guo, Z. Huang, W. Ma, X. Wang, and C. Zhou. Funcpipe: A pipelined serverless framework for fast and cost-efficient training of deep learning models. Proceedings of the ACM on Measurement and Analysis of Computing Systems, 6(3):1-30, 2022.
[27]
A. Mahgoub, K. Shankar, S. Mitra, A. Klimovic, S. Chaterji, and S. Bagchi. Sonic: Application-aware data passing for chained serverless applications. In USENIX Annual Technical Conference (USENIX ATC), 2021.
[28]
A. Mahgoub, E. B. Yi, K. Shankar, S. Elnikety, S. Chaterji, and S. Bagchi. {ORION} and the three rights: Sizing, bundling, and prewarming for serverless {DAGs}. In 16th USENIX Symposium on Operating Systems Design and Implementation (OSDI 22), pages 303-320, 2022.
[29]
A. Mahgoub, E. B. Yi, K. Shankar, E. Minocha, S. Elnikety, S. Bagchi, and S. Chaterji. Wisefuse: Workload characterization and dag transformation for serverless workflows. Proceedings of the ACM on Measurement and Analysis of Computing Systems, 6(2):1-28, 2022.
[30]
G. Malewicz, M. H. Austern, A. J. Bik, J. C. Dehnert, I. Horn, N. Leiser, and G. Czajkowski. Pregel: a system for large-scale graph processing. In Proceedings of the 2010 ACM SIGMOD International Conference on Management of data, pages 135-146, 2010.
[31]
Microsoft. Azure Functions usecases, 2023. https://learn.microsoft.com/en-us/dotnet/architecture/serverless/serverless-business-scenarios, Last accessed on 2023-7-2.
[32]
I. Muller, R. Marroquin, and G. Alonso. Lambada: Interactive data analytics on cold data using serverless cloud infrastructure. In Proceedings of the 2020 ACM SIGMOD International Conference on Management of Data, pages 115-130, 2020.
[33]
S. M. Nabavinejad, M. Goudarzi, and S. Mozaffari. The memory challenge in reduce phase of mapreduce applications. IEEE Transactions on Big Data, 2(4):380-386, 2016.
[34]
M. Perron, R. Castro Fernandez, D. DeWitt, and S. Madden. Starling: A scalable query engine on cloud functions. In Proceedings of the 2020 ACM SIGMOD International Conference on Management of Data, pages 131-141, 2020.
[35]
Q. Pu, S. Venkataraman, and I. Stoica. Shuffling, fast and slow: Scalable analytics on serverless infrastructure. In NSDI, volume 19, pages 193-206, 2019.
[36]
Purdue. Purdue mapreduce benchmarks suite, 2023. https://engineering.purdue.edu/~puma/datasets.htm, Last accessed on 2023-6-29.
[37]
S. Shillaker and P. Pietzuch. Faasm: Lightweight isolation for efficient stateful serverless computing. In 2020 USENIX Annual Technical Conference (USENIX ATC 20), pages 419-433, 2020.
[38]
V. Sreekanti, C. Wu, X. C. Lin, J. Schleier-Smith, J. M. Faleiro, J. E. Gonzalez, J. M. Hellerstein, and A. Tumanov. Cloudburst: Stateful functions-as-a-service. arXiv preprint arXiv:2001.04592, 2020.
[39]
S. Thomas, L. Ao, G. M. Voelker, and G. Porter. Particle: ephemeral endpoints for serverless networking. In Proceedings of the 11th ACM Symposium on Cloud Computing, pages 16-29, 2020.
[40]
L. G. Valiant. A bridging model for parallel computation. Communications of the ACM, 33(8):103-111, 1990.
[41]
L. Wang, M. Li, Y. Zhang, T. Ristenpart, and M. Swift. Peeking behind the curtains of serverless platforms. In 2018 USENIX Annual Technical Conference (USENIX ATC 18), pages 133-146, 2018.
[42]
Wolfram. Stirling Number of the Second Kind, 2023. https://mathworld.wolfram.com/StirlingNumberoftheSecondKind.html.
[43]
M. Zaharia, M. Chowdhury, T. Das, A. Dave, J. Ma, M. McCauly, M. J. Franklin, S. Shenker, and I. Stoica. Resilient distributed datasets: A fault-tolerant abstraction for in-memory cluster computing. In Presented as part of the 9th {USENIX} Symposium on Networked Systems Design and Implementation ({NSDI} 12), pages 15-28, 2012.
[44]
M. Zaharia, R. S. Xin, P. Wendell, T. Das, M. Armbrust, A. Dave, X. Meng, J. Rosen, S. Venkataraman, M. J. Franklin, et al. Apache spark: a unified engine for big data processing. Communications of the ACM, 59(11):56-65, 2016.
[45]
H. Zhang, B. Cho, E. Seyfe, A. Ching, and M. J. Freedman. Riffle: Optimized shuffle service for large-scale data analytics. In Proceedings of the Thirteenth EuroSys Conference, pages 1-15, 2018.
[46]
H. Zhang, Y. Tang, A. Khandelwal, J. Chen, and I. Stoica. Caerus: Nimble task scheduling for serverless analytics. In NSDI, pages 653-669, 2021.
[47]
J. Zhang, A. Wang, X. Ma, B. Carver, N. J. Newman, A. Anwar, L. Rupprecht, V. Tarasov, D. Skourtis, F. Yan, and Y. Cheng. Infinistore: Elastic serverless cloud storage. Proc. VLDB Endow., 16(7):1629-1642, may 2023.

Index Terms

  1. MinFlow: high-performance and cost-efficient data passing for I/O-intensive stateful serverless analytics
        Index terms have been assigned to the content through auto-classification.

        Recommendations

        Comments

        Information & Contributors

        Information

        Published In

        cover image Guide Proceedings
        FAST '24: Proceedings of the 22nd USENIX Conference on File and Storage Technologies
        February 2024
        387 pages
        ISBN:978-1-939133-38-0
        • Others:
        • Xiaosong Ma,
        • Youjip Won

        Sponsors

        • FUTUREWEI
        • NSF
        • Google Inc.
        • IBM
        • Samsung

        Publisher

        USENIX Association

        United States

        Publication History

        Published: 11 March 2024

        Qualifiers

        • Research-article
        • Research
        • Refereed limited

        Contributors

        Other Metrics

        Bibliometrics & Citations

        Bibliometrics

        Article Metrics

        • 0
          Total Citations
        • 0
          Total Downloads
        • Downloads (Last 12 months)0
        • Downloads (Last 6 weeks)0
        Reflects downloads up to 01 Jan 2025

        Other Metrics

        Citations

        View Options

        View options

        Media

        Figures

        Other

        Tables

        Share

        Share

        Share this Publication link

        Share on social media