Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/3528535.3565241acmconferencesArticle/Chapter ViewAbstractPublication PagesmiddlewareConference Proceedingsconference-collections
research-article
Open access

A seer knows best: optimized object storage shuffling for serverless analytics

Published: 08 November 2022 Publication History

Abstract

Serverless platforms offer high resource elasticity and pay-as-you-go billing, making them a compelling choice for data analytics. To craft a "pure" serverless solution, the common practice is to transfer intermediate data between serverless functions via serverless object storage (IBM COS; AWS S3). However, prior works have led to inconclusive results about the performance of object storage, since they have left large margin for optimization. To verify that object storage has been underrated, we design a novel shuffle manager for serverless data analytics termed Seer. Specifically, Seer dynamically chooses between two shuffle algorithms to maximize performance. The algorithm choice is based on some predictive models, and very importantly, without users having to specify intermediate data sizes at the time of the job submission. We integrate Seer with PyWren-IBM [31], a serverless analytics framework, and evaluate it against both serverful (e.g., Spark) and serverless systems (e.g., Google BigQuery). Our results certify that our new shuffle manager can deliver performance improvements over them.

References

[1]
Istemi Ekin Akkus, Ruichuan Chen, Ivica Rimac, Manuel Stein, Klaus Satzke, Andre Beck, Paarijaat Aditya, and Volker Hilt. 2018. SAND: Towards High-Performance Serverless Computing. In 2018 USENIX Annual Technical Conference (USENIX ATC 18) (July 11--13, 2018). USENIX Association, Boston, MA, 923--935. https://www.usenix.org/conference/atc18/presentation/akkus
[2]
Michael Armbrust, Reynold S. Xin, Cheng Lian, Yin Huai, Davies Liu, Joseph K. Bradley, Xiangrui Meng, Tomer Kaftan, Michael J. Franklin, Ali Ghodsi, and Matei Zaharia. 2015. Spark SQL: Relational Data Processing in Spark. In 2015 ACM SIGMOD International Conference on Management of Data (SIGMOD '15) (Melbourne, Victoria, Australia, May 31--June 4, 2015). ACM, 1383--1394.
[3]
AWS. 2021. S3 Request Limits. Retrieved May 5, 2022 from https://aws.amazon.com/premiumsupport/knowledge-center/s3-request-limit-avoid-throttling/
[4]
Azure. 2022. Azure Blob Storage Request Limits. Retrieved April 1, 2022 from https://docs.microsoft.com/en-us/azure/storage/common/scalability-targets-standard-account
[5]
Daniel Barcelona-Pons, Marc Sánchez-Artigas, Gerard París, Pierre Sutra, and Pedro García-López. 2019. On the FaaS Track: Building Stateful Distributed Applications with Serverless Architectures. In 20th International Middleware Conference (Middleware'19) (Davis, CA, USA, December 9--13, 2019). ACM, 41--54.
[6]
David M. Beazley. 2014. Python Gets an Event Loop (Again). login Usenix Mag. 39, 3 (2014).
[7]
Joao Carreira, Pedro Fonseca, Alexey Tumanov, Andrew Zhang, and Randy Katz. 2019. Cirrus: A Serverless Framework for End-to-End ML Workflows. In ACM Symposium on Cloud Computing (SoCC'19) (Santa Cruz, CA, USA, November 20--23, 2019). ACM, 13--24.
[8]
Sérgio Fernandes and Jorge Bernardino. 2015. What is BigQuery?. In 19th International Database Engineering & Applications Symposium (IDEAS'15) (Yokohama, Japan, July 13--15, 2015). ACM, 202--203.
[9]
Sadjad Fouladi, Francisco Romero, Dan Iter, Qian Li, Shuvo Chatterjee, Christos Kozyrakis, Matei Zaharia, and Keith Winstein. 2019. From Laptop to Lambda: Outsourcing Everyday Jobs to Thousands of Transient Functional Containers. In 2019 USENIX Annual Technical Conference (ATC'19) (July 10--12, 2019). USENIX Association, Renton, WA, 475--488. https://www.usenix.org/conference/atc19/presentation/fouladi
[10]
Sadjad Fouladi, Riad S. Wahby, Brennan Shacklett, Karthikeyan Vasuki Balasubramaniam, William Zeng, Rahul Bhalerao, Anirudh Sivaraman, George Porter, and Keith Winstein. 2017. Encoding, Fast and Slow: Low-Latency Video Processing Using Thousands of Tiny Threads. In 14th USENIX Symposium on Networked Systems Design and Implementation (NSDI 17) (March 27--29, 2017). USENIX Association, Boston, MA, 363--376. https://www.usenix.org/conference/nsdi17/technical-sessions/presentation/fouladi
[11]
Google. 2022. Google Cloud Storage Request Limits. Retrieved April 1, 2022 from https://cloud.google.com/storage/docs/request-rate
[12]
Google. 2022. Spark on Google Cloud. Retrieved April 22, 2022 from https://cloud.google.com/solutions/spark
[13]
Joseph M. Hellerstein, Jose M. Faleiro, Joseph Gonzalez, Johann Schleier-Smith, Vikram Sreekanti, Alexey Tumanov, and Chenggang Wu. 2019. Serverless Computing: One Step Forward, Two Steps Back. In 9th Biennial Conference on Innovative Data Systems Research (CIDR 2019) (Asilomar, CA, USA, Online Proceedings, January 13--16, 2019). http://cidrdb.org/cidr2019/papers/p119-hellerstein-cidr19.pdf
[14]
Scott Hendrickson, Stephen Sturdevant, Tyler Harter, Venkateshwaran Venkataramani, Andrea C. Arpaci-Dusseau, and Remzi H. Arpaci-Dusseau. 2016. Serverless Computation with OpenLambda. In 8th USENIX Workshop on Hot Topics in Cloud Computing (HotCloud'16) (Denver, CO, June 20--21, 2016). USENIX Association. https://www.usenix.org/conference/hotcloud16/workshop-program/presentation/hendrickson
[15]
Eric Jonas, Qifan Pu, Shivaram Venkataraman, Ion Stoica, and Benjamin Recht. 2017. Occupy the cloud: distributed computing for the 99%. In 2017 ACM Symposium on Cloud Computing (SoCC'17) (Santa Clara, California, September 24--27, 2017). ACM, 445--451.
[16]
Eric Jonas, Johann Schleier-Smith, Vikram Sreekanti, Chia-Che Tsai, Anurag Khandelwal, Qifan Pu, Vaishaal Shankar, Joao Carreira, Karl Krauth, Neeraja Yadwadkar, Joseph E. Gonzalez, Raluca Ada Popa, Ion Stoica, and David A. Patterson. 2019. Cloud Programming Simplified: A Berkeley View on Serverless Computing. arXiv:1902.03383 [cs.OS]
[17]
Shannon Joyner, Michael MacCoss, Christina Delimitrou, and Hakim Weatherspoon. 2020. Ripple: A Practical Declarative Programming Framework for Serverless Compute. arXiv:2001.00222 [cs.DC]
[18]
Anurag Khandelwal, Yupeng Tang, Rachit Agarwal, Aditya Akella, and Ion Stoica. 2022. Jiffy: Elastic Far-Memory for Stateful Serverless Analytics. In Seventeenth European Conference on Computer Systems (EuroSys '22) (Rennes, France, April 5--8, 2022). ACM, 697--713.
[19]
Youngbin Kim and Jimmy Lin. 2018. Serverless Data Analytics with Flint. In 11th IEEE International Conference on Cloud Computing, (CLOUD'18) (San Francisco, CA, USA, July 2--7, 2018). IEEE Computer Society, 451--455.
[20]
Ana Klimovic, Yawen Wang, Patrick Stuedi, Animesh Trivedi, Jonas Pfefferle, and Christos Kozyrakis. 2018. Pocket: Elastic Ephemeral Storage for Serverless Analytics. In 13th USENIX Symposium on Operating Systems Design and Implementation (OSDI 18) (October 8--10, 2018). USENIX Association, Carlsbad, CA, 427--444. https://www.usenix.org/conference/osdi18/presentation/klimovic
[21]
Ashraf Mahgoub, Karthick Shankar, Subrata Mitra, Ana Klimovic, Somali Chaterji, and Saurabh Bagchi. 2021. SONIC: Application-aware Data Passing for Chained Serverless Applications. In 2021 USENIX Annual Technical Conference (USENIX ATC 21) (July 14--16, 2021). USENIX Association, 285--301. https://www.usenix.org/conference/atc21/presentation/mahgoub
[22]
Ingo Müller, Renato Marroquín, and Gustavo Alonso. 2020. Lambada: Interactive Data Analytics on Cold Data Using Serverless Cloud Infrastructure. In 2020 ACM SIGMOD International Conference on Management of Data (SIGMOD'20) (Portland, OR, USA, June 14--19, 2020). ACM, 115--130.
[23]
Thomas Neumann. 2011. Efficiently Compiling Efficient Query Plans for Modern Hardware. Proc. VLDB Endow. 4, 9 (jun. 2011), 539--550.
[24]
Kay Ousterhout, Ryan Rasti, Sylvia Ratnasamy, Scott Shenker, and Byung-Gon Chun.2015. Making Sense of Performance in Data Analytics Frameworks. In 12th USENIX Conference on Networked Systems Design and Implementation (NSDI'15) (May 4--6, 2015). USENIX Association, Oakland, CA, 293--307. https://www.usenix.org/conference/nsdi15/technical-sessions/presentation/ousterhout
[25]
Kay Ousterhout, Patrick Wendell, Matei Zaharia, and Ion Stoica. 2013. Sparrow: Distributed, Low Latency Scheduling. In Twenty-Fourth ACM Symposium on Operating Systems Principles (SOSP'13) (Farminton, Pennsylvania, November 3--6, 2013). ACM, 69--84.
[26]
A. Palmer, P. Phapale, and I. et al. Chernyavsky. 2017. FDR-controlled metabolite annotation for high-resolution imaging mass spectrometry. Nat Methods 14 (2017), 57--60. https://metaspace2020.eu
[27]
Meikel Pöss, Bryan Smith, Lubor Kollár, and Per Åke Larson. 2002. TPC-DS, taking decision support benchmarking to the next level. In 20th ACM SIGMOD International Conference on Management of Data (SIGMOD'02) (Madison, Wisconsin, June 3--6, 2002). ACM, 582--587.
[28]
Qifan Pu, Shivaram Venkataraman, and Ion Stoica. 2019. Shuffling, fast and slow: scalable analytics on serverless infrastructure. In 16th USENIX Symposium on Networked Systems Design and Implementation (NSDI'19) (Boston, MA, February 26--28, 2019). USENIX Association, 193--206. https://www.usenix.org/conference/nsdi19/presentation/pu
[29]
Qubole. 2017. Spark on Lambda. Retrieved May 29, 2022 from https://www.qubole.com/blog/spark-on-aws-lambda/
[30]
Josep Sampe, Pedro Garcia-Lopez, Marc Sanchez-Artigas, Gil Vernik, Pol Roca-Llaberia, and Aitor Arjona. 2021. Toward Multicloud Access Transparency in Serverless Computing. IEEE Software 38, 1 (2021), 68--74.
[31]
Josep Sampé, Gil Vernik, Marc Sánchez-Artigas, and Pedro García-López. 2018. Serverless Data Analytics in the IBM Cloud. In 19th ACM/IFIP Middleware Conference Industry (Middleware'18) (Rennes, France, December 10--14, 2018). ACM, 1--7.
[32]
Marc Sánchez-Artigas, Germán T. Eizaguirre, Gil Vernik, Lachlan Stuart, and Pedro García-López. 2020. Primula: A Practical Shuffle/Sort Operator for Serverless Computing. In 21st International Middleware Conference Industrial Track (Middleware'20) (Delft, Netherlands, December 7--11, 2020). ACM, 31--37.
[33]
Marc Sánchez-Artigas and Pablo Gimeno Sarroca. 2021. Experience Paper: Towards Enhancing Cost Efficiency in Serverless Machine Learning Training. In 22nd International Middleware Conference (Middleware'21) (Québec city, Canada, December 6--10, 2021). ACM, 210--222.
[34]
Thorsten Schramm, Zoë Hester, Ivo Klinkert, Jean-Pierre Both, Ron M.A. Heeren, Alain Brunelle, Olivier Laprévote, Nicolas Desbenoit, Marie-France Robbe, Markus Stoeckli, Bernhard Spengler, and Andreas Römpp. 2012. imzML --- A common data format for the flexible exchange and processing of mass spectrometry imaging data. Journal of Proteomics 75, 16 (2012), 5106--5110.
[35]
Vaishaal Shankar, Karl Krauth, Kailas Vodrahalli, Qifan Pu, Benjamin Recht, Ion Stoica, Jonathan Ragan-Kelley, Eric Jonas, and Shivaram Venkataraman. 2020. Serverless Linear Algebra. In 11th ACM Symposium on Cloud Computing (SoCC'20) (Virtual Event, USA, October 19--21, 2020). ACM, 281--295.
[36]
Min Shen, Ye Zhou, and Chandni Singh. 2020. Magnet: Push-Based Shuffle Service for Large-Scale Data Processing. Proc. VLDB Endow. 13, 12 (aug. 2020), 3382--3395.
[37]
Vikram Sreekanti, Chenggang Wu, Xiayue Charles Lin, Johann Schleier-Smith, Joseph E. Gonzalez, Joseph M. Hellerstein, and Alexey Tumanov. 2020. Cloudburst: Stateful Functions-as-a-Service. Proc. VLDB Endow. 13, 12 (jul. 2020), 2438--2452.
[38]
Chenggang Wu, Jose Faleiro, Yihan Lin, and Joseph Hellerstein. 2018. Anna: A KVS for Any Scale. In 2018 IEEE 34th International Conference on Data Engineering (ICDE'18) (Paris, France, April 16--19, 2018). IEEE Computer Society, 401--412.
[39]
Owen O'Malley Yahoo! 2008. Terabyte Sort on Apache Hadoop. (2008).
[40]
Matei Zaharia, Mosharaf Chowdhury, Tathagata Das, Ankur Dave, Justin Ma, Murphy McCauley, Michael J. Franklin, Scott Shenker, and Ion Stoica. 2012. Resilient Distributed Datasets: A Fault-tolerant Abstraction for In-memory Cluster Computing. In 9th USENIX Conference on Networked Systems Design and Implementation (NSDI'12) (April 25--27, 2012). USENIX Association, San Jose, CA, 15--28. https://www.usenix.org/conference/nsdi12/technical-sessions/presentation/zaharia
[41]
Matei Zaharia, Andy Konwinski, Anthony D. Joseph, Randy Katz, and Ion Stoica. 2008. Improving MapReduce Performance in Heterogeneous Environments. In 8th USENIX Conference on Operating Systems Design and Implementation (OSDI 08) (San Diego, California, December 8--10, 2008). USENIX Association, USA, 29--42.
[42]
Haoyu Zhang, Brian Cho, Ergin Seyfe, Avery Ching, and Michael J. Freedman. 2018. Riffle: Optimized Shuffle Service for Large-Scale Data Analytics. In Thirteenth EuroSys Conference (EuroSys '18) (Porto, Portugal, April 23--26, 2018). ACM, Article 43, 15 pages.
[43]
Hong Zhang, Yupeng Tang, Anurag Khandelwal, Jingrong Chen, and Ion Stoica. 2021. Caerus: NIMBLE Task Scheduling for Serverless Analytics. In 18th USENIX Symposium on Networked Systems Design and Implementation (NSDI 21) (Virtual Event, USA, April 12--14, 2021). USENIX Association, 653--669. https://www.usenix.org/conference/nsdi21/presentation/zhang-hong
[44]
Wen Zhang, Vivian Fang, Aurojit Panda, and Scott Shenker. 2020. Kappa: A Programming Framework for Serverless Computing. In 11th ACM Symposium on Cloud Computing (SoCC'20) (Virtual Event, USA, October 19--21, 2020). ACM, 328--343.

Cited By

View all

Index Terms

  1. A seer knows best: optimized object storage shuffling for serverless analytics

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    Middleware '22: Proceedings of the 23rd ACM/IFIP International Middleware Conference
    November 2022
    110 pages
    ISBN:9781450393409
    DOI:10.1145/3528535
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 08 November 2022

    Permissions

    Request permissions for this article.

    Check for updates

    Badges

    Author Tags

    1. I/O optimization
    2. object storage
    3. serverless computing
    4. shuffle

    Qualifiers

    • Research-article

    Funding Sources

    Conference

    Middleware '22
    Sponsor:
    Middleware '22: 23rd International Middleware Conference
    November 7 - 11, 2022
    QC, Quebec, Canada

    Acceptance Rates

    Middleware '22 Paper Acceptance Rate 8 of 21 submissions, 38%;
    Overall Acceptance Rate 203 of 948 submissions, 21%

    Upcoming Conference

    MIDDLEWARE '24
    25th International Middleware Conference
    December 2 - 6, 2024
    Hong Kong , Hong Kong

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)233
    • Downloads (Last 6 weeks)24
    Reflects downloads up to 12 Nov 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)A Seer knows bestJournal of Parallel and Distributed Computing10.1016/j.jpdc.2023.104763183:COnline publication date: 1-Jan-2024
    • (2024)Self-Provisioning Infrastructures for the Next Generation Serverless ComputingSN Computer Science10.1007/s42979-024-03022-w5:6Online publication date: 26-Jun-2024
    • (2023)When Serverless Computing Meets Different Degrees of Customization for DNN InferenceProceedings of the 9th International Workshop on Serverless Computing10.1145/3631295.3631400(42-47)Online publication date: 11-Dec-2023
    • (2023)Kernel-as-a-ServiceProceedings of the 24th International Middleware Conference10.1145/3590140.3629115(192-206)Online publication date: 27-Nov-2023
    • (2023)On Data Processing through the Lenses of S3 Object LambdaIEEE INFOCOM 2023 - IEEE Conference on Computer Communications10.1109/INFOCOM53939.2023.10228890(1-10)Online publication date: 17-May-2023
    • (2023)Is Performance of Object Storage Predictable for Serverless I/O Workloads? A Comparative Study2023 IEEE 31st International Conference on Network Protocols (ICNP)10.1109/ICNP59255.2023.10355617(1-6)Online publication date: 10-Oct-2023

    View Options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Get Access

    Login options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media