{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,3,31]],"date-time":"2026-03-31T17:59:53Z","timestamp":1774979993726,"version":"3.50.1"},"reference-count":49,"publisher":"Association for Computing Machinery (ACM)","issue":"4","license":[{"start":{"date-parts":[[2024,9,30]],"date-time":"2024-09-30T00:00:00Z","timestamp":1727654400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Proc. ACM Manag. Data"],"published-print":{"date-parts":[[2024,10,1]]},"abstract":"<jats:p>It is an open challenge for cloud database service providers to guarantee tenants' service-level objectives (SLOs) and enjoy high resource utilization simultaneously. In this work, we propose a novel system Tao to overcome it. Tao consists of three key components: (i) tasklet-based DAG generator, (ii) tasklet-based DAG executor, and (iii) SLO-guaranteed scheduler. The core concept in Tao is tasklet, a coroutine-based lightweight execution unit of the physical execution plan. In particular, we first convert each SQL operator in the traditional physical execution plan into a set of fine-grained tasklets by the tasklet-based DAG generator. Then, we abstract the tasklet-based DAG execution procedure and implement the tasklet-based DAG executor using C++20 coroutines. Finally, we introduce the SLO-guaranteed scheduler for scheduling tenants' tasklets across CPU cores. This scheduler guarantees tenants' SLOs with a token bucket model and improves resource utilization with an on-demand core adjustment strategy. We build Tao on an open-sourced relational database, Hyrise, and conduct extensive experimental studies to demonstrate its superiority over existing solutions.<\/jats:p>","DOI":"10.1145\/3677141","type":"journal-article","created":{"date-parts":[[2024,9,30]],"date-time":"2024-09-30T17:41:44Z","timestamp":1727718104000},"page":"1-26","source":"Crossref","is-referenced-by-count":1,"title":["Tao: Improving Resource Utilization while Guaranteeing SLO in Multi-tenant Relational Database-as-a-Service"],"prefix":"10.1145","volume":"2","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-8784-8711","authenticated-orcid":false,"given":"Haotian","family":"Liu","sequence":"first","affiliation":[{"name":"Southern University of Science and Technology, Shenzhen, Guangdong, China"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-7245-6873","authenticated-orcid":false,"given":"Runzhong","family":"Li","sequence":"additional","affiliation":[{"name":"Southern University of Science and Technology, Shenzhen, Guangdong, China"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0009-0000-6692-0393","authenticated-orcid":false,"given":"Ziyang","family":"Zhang","sequence":"additional","affiliation":[{"name":"Southern University of Science and Technology, Shenzhen, Guangdong, China"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-8424-0092","authenticated-orcid":false,"given":"Bo","family":"Tang","sequence":"additional","affiliation":[{"name":"Southern University of Science and Technology, Shenzhen, Guangdong, China"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2024,9,30]]},"reference":[{"key":"e_1_2_1_1_1","unstructured":"2017. Working Draft Technical Specification for C Extensions for Coroutines. https:\/\/www.openstd.org\/jtc1\/sc22\/ wg21\/docs\/papers\/2017\/n4649.pdf."},{"key":"e_1_2_1_2_1","unstructured":"2023. Amazon relational database service. https:\/\/aws.amazon.com\/cn\/rds\/."},{"key":"e_1_2_1_3_1","unstructured":"2023. Azure SQL DB. https:\/\/azure.microsoft.com\/products\/azure-sql\/database\/."},{"key":"e_1_2_1_4_1","unstructured":"2023. Blocking Sink\/Source operators. https:\/\/github.com\/duckdb\/duckdb\/pull\/7331."},{"key":"e_1_2_1_5_1","unstructured":"2023. Boost Coroutine2. https:\/\/www.boost.org\/doc\/libs\/1_83_0\/libs\/coroutine2\/doc\/html\/coroutine2\/overview.html."},{"key":"e_1_2_1_6_1","unstructured":"2023. Boost Fiber. https:\/\/www.boost.org\/doc\/libs\/1_83_0\/libs\/fiber\/doc\/html\/fiber\/overview.html."},{"key":"e_1_2_1_7_1","unstructured":"2023. concurrentqueue. https:\/\/github.com\/cameron314\/concurrentqueue."},{"key":"e_1_2_1_8_1","unstructured":"2023. Control Group v2. https:\/\/www.kernel.org\/doc\/html\/v5.10\/admin-guide\/cgroup-v2.html."},{"key":"e_1_2_1_9_1","unstructured":"2023. libco. https:\/\/github.com\/Tencent\/libco."},{"key":"e_1_2_1_10_1","unstructured":"2024. lightweight pooling (server configuration option). https:\/\/learn.microsoft.com\/en-us\/sql\/database-engine\/configurewindows\/ lightweight-pooling-server-configuration-option?view=sql-server-ver16."},{"key":"e_1_2_1_11_1","volume-title":"Firecracker: Lightweight virtualization for serverless applications. In NSDI 20. 419--434.","author":"Agache Alexandru","year":"2020","unstructured":"Alexandru Agache, Marc Brooker, Alexandra Iordache, Anthony Liguori, Rolf Neugebauer, Phil Piwonka, and Diana- Maria Popa. 2020. Firecracker: Lightweight virtualization for serverless applications. In NSDI 20. 419--434."},{"key":"e_1_2_1_12_1","volume-title":"Jack Hu, Hanuma Kodavalla, Donald Kossmann, Sandeep Lingam, Umar Farooq Minhas, Naveen Prakash, et al.","author":"Antonopoulos Panagiotis","year":"2019","unstructured":"Panagiotis Antonopoulos, Alex Budovski, Cristian Diaconu, Alejandro Hernandez Saenz, Jack Hu, Hanuma Kodavalla, Donald Kossmann, Sandeep Lingam, Umar Farooq Minhas, Naveen Prakash, et al. 2019. Socrates: The new sql server in the cloud. In SIGMOD. 1743--1756."},{"key":"e_1_2_1_13_1","volume-title":"Xen and the art of virtualization. ACM SIGOPS operating systems review 37, 5","author":"Barham Paul","year":"2003","unstructured":"Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt, and Andrew Warfield. 2003. Xen and the art of virtualization. ACM SIGOPS operating systems review 37, 5 (2003), 164--177."},{"key":"e_1_2_1_14_1","doi-asserted-by":"crossref","unstructured":"Leilani Battle Philipp Eichmann Marco Angelini Tiziana Catarci Giuseppe Santucci Yukun Zheng Carsten Binnig Jean-Daniel Fekete and Dominik Moritz. 2020. Database benchmarking for supporting real-time interactive querying of large data. In SIGMOD. 1571--1587.","DOI":"10.1145\/3318464.3389732"},{"key":"e_1_2_1_15_1","volume-title":"Containers and cloud: From lxc to docker to kubernetes","author":"Bernstein David","year":"2014","unstructured":"David Bernstein. 2014. Containers and cloud: From lxc to docker to kubernetes. IEEE cloud computing 1, 3 (2014), 81--84."},{"key":"e_1_2_1_16_1","first-page":"1","article-title":"Using Cloud Functions as Accelerator for Elastic Data Analytics","volume":"1","author":"Bian Haoqiong","year":"2023","unstructured":"Haoqiong Bian, Tiannan Sha, and Anastasia Ailamaki. 2023. Using Cloud Functions as Accelerator for Elastic Data Analytics. SIGMOD 1, 2 (2023), 1--27.","journal-title":"SIGMOD"},{"key":"e_1_2_1_17_1","doi-asserted-by":"crossref","unstructured":"Wei Cao Yingqiang Zhang Xinjun Yang Feifei Li Sheng Wang Qingda Hu Xuntao Cheng Zongzhi Chen Zhenjun Liu Jing Fang et al. 2021. Polardb serverless: A cloud native database for disaggregated data centers. In SIGMOD. 2477--2489.","DOI":"10.1145\/3448016.3457560"},{"key":"e_1_2_1_18_1","volume-title":"Parties: Qos-aware resource partitioning for multiple interactive services. In ASPLOS. 107--120.","author":"Chen Shuang","year":"2019","unstructured":"Shuang Chen, Christina Delimitrou, and Jos\u00e9 F Mart\u00ednez. 2019. Parties: Qos-aware resource partitioning for multiple interactive services. In ASPLOS. 107--120."},{"key":"e_1_2_1_19_1","doi-asserted-by":"crossref","unstructured":"Benoit Dageville Thierry Cruanes Marcin Zukowski Vadim Antonov Artin Avanes Jon Bock Jonathan Claybaugh Daniel Engovatov Martin Hentschel Jiansheng Huang et al. 2016. The snowflake elastic data warehouse. In SIGMOD. 215--226.","DOI":"10.1145\/2882903.2903741"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.14778\/2732219.2732223"},{"key":"e_1_2_1_21_1","volume-title":"Idebench: A benchmark for interactive data exploration. In SIGMOD. 1555--1569.","author":"Eichmann Philipp","year":"2020","unstructured":"Philipp Eichmann, Emanuel Zgraggen, Carsten Binnig, and Tim Kraska. 2020. Idebench: A benchmark for interactive data exploration. In SIGMOD. 1555--1569."},{"key":"e_1_2_1_22_1","volume-title":"Caladan: Mitigating interference at microsecond timescales. In OSDI. 281--297.","author":"Fried Joshua","year":"2020","unstructured":"Joshua Fried, Zhenyuan Ruan, Amy Ousterhout, and Adam Belay. 2020. Caladan: Mitigating interference at microsecond timescales. In OSDI. 281--297."},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.14778\/3430915.3430932"},{"key":"e_1_2_1_24_1","doi-asserted-by":"crossref","unstructured":"Yigong Hu Gongqi Huang and Peng Huang. 2023. Pushing Performance Isolation Boundaries into Application with pBox. In SOSP. 247--263.","DOI":"10.1145\/3600006.3613159"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.14778\/3632093.3632117"},{"key":"e_1_2_1_26_1","doi-asserted-by":"crossref","unstructured":"Jack Tigar Humphries Neel Natu Ashwin Chaugule OfirWeisse Barret Rhoden Josh Don Luigi Rizzo Oleg Rombakh Paul Turner and Christos Kozyrakis. 2021. ghost: Fast & flexible user-space delegation of linux scheduling. In SOSP. 588--604.","DOI":"10.1145\/3477132.3483542"},{"key":"e_1_2_1_27_1","first-page":"2020","article-title":"Programming languages","volume":"14882","author":"International Organization for Standardization (ISO).","year":"2020","unstructured":"International Organization for Standardization (ISO). 2020. Programming languages ? C. Technical Report ISO\/IEC 14882:2020.","journal-title":"C. Technical Report ISO\/IEC"},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.14778\/3236187.3236216"},{"key":"e_1_2_1_29_1","volume-title":"Todd Pfleiger, Rishi Sinha, Anurag Gupta, Mihail Tarta, Mark Fussell, Vipul Modi, et al.","author":"Kakivaya Gopal","year":"2018","unstructured":"Gopal Kakivaya, Lu Xun, Richard Hasha, Shegufta Bakht Ahsan, Todd Pfleiger, Rishi Sinha, Anurag Gupta, Mihail Tarta, Mark Fussell, Vipul Modi, et al. 2018. Service fabric: a distributed platform for building microservices in the cloud. In EuroSys. 1--15."},{"key":"e_1_2_1_30_1","volume-title":"Proceedings of the Linux symposium","volume":"1","author":"Kivity Avi","year":"2007","unstructured":"Avi Kivity, Yaniv Kamay, Dor Laor, Uri Lublin, and Anthony Liguori. 2007. kvm: the Linux virtual machine monitor. In Proceedings of the Linux symposium, Vol. 1. Dttawa, Dntorio, Canada, 225--230."},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.14778\/3625054.3625062"},{"key":"e_1_2_1_32_1","doi-asserted-by":"crossref","unstructured":"Viktor Leis Peter Boncz Alfons Kemper and Thomas Neumann. 2014. Morsel-driven parallelism: a NUMA-aware query evaluation framework for the many-core age. In SIGMOD. 743--754.","DOI":"10.1145\/2588555.2610507"},{"key":"e_1_2_1_33_1","volume-title":"Heracles: Improving resource efficiency at scale. In ISCA. 450--462.","author":"Lo David","year":"2015","unstructured":"David Lo, Liqun Cheng, Rama Govindaraju, Parthasarathy Ranganathan, and Christos Kozyrakis. 2015. Heracles: Improving resource efficiency at scale. In ISCA. 450--462."},{"key":"e_1_2_1_34_1","doi-asserted-by":"crossref","unstructured":"Jan M\u00fchlig and Jens Teubner. 2021. MxTasks: How to Make Efficient Synchronization and Prefetching Easy. In SIGMOD. 1331--1344.","DOI":"10.1145\/3448016.3457268"},{"key":"e_1_2_1_35_1","doi-asserted-by":"crossref","unstructured":"Vivek Narasayya Surajit Chaudhuri et al. 2021. Cloud data services: Workloads architectures and multi-tenancy. Foundations and Trends\u00ae in Databases 10 1 (2021) 1--107.","DOI":"10.1561\/1900000060"},{"key":"e_1_2_1_36_1","volume-title":"Sqlvm: Performance isolation in multi-tenant relational database-as-a-service. In CIDR.","author":"Narasayya Vivek","year":"2013","unstructured":"Vivek Narasayya, Sudipto Das, Manoj Syamala, Badrish Chandramouli, and Surajit Chaudhuri. 2013. Sqlvm: Performance isolation in multi-tenant relational database-as-a-service. In CIDR."},{"key":"e_1_2_1_37_1","volume-title":"Clite: Efficient and qos-aware co-location of multiple latency-critical jobs for warehouse scale computers. In HPCA. 193--206.","author":"Patel Tirthak","year":"2020","unstructured":"Tirthak Patel and Devesh Tiwari. 2020. Clite: Efficient and qos-aware co-location of multiple latency-critical jobs for warehouse scale computers. In HPCA. 193--206."},{"key":"e_1_2_1_38_1","volume-title":"David DeWitt, and Samuel Madden.","author":"Perron Matthew","year":"2020","unstructured":"Matthew Perron, Raul Castro Fernandez, David DeWitt, and Samuel Madden. 2020. Starling: A scalable query engine on cloud functions. In SIGMOD. 131--141."},{"key":"e_1_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.1007\/s00778-018-0533-6"},{"key":"e_1_2_1_40_1","unstructured":"Henry Qin Qian Li Jacqueline Speiser Peter Kraft and John Ousterhout. 2018. Arachne:{Core-Aware} thread management. In OSDI. 145--160."},{"key":"e_1_2_1_41_1","doi-asserted-by":"crossref","unstructured":"Mark Raasveldt and Hannes M\u00fchleisen. 2019. Duckdb: an embeddable analytical database. In SIGMOD. 1981--1984.","DOI":"10.1145\/3299869.3320212"},{"key":"e_1_2_1_42_1","volume-title":"Marcos K Aguilera, Adam Belay, and Malte Schwarzkopf.","author":"Ruan Zhenyuan","year":"2023","unstructured":"Zhenyuan Ruan, Seo Jin Park, Marcos K Aguilera, Adam Belay, and Malte Schwarzkopf. 2023. Nu: Achieving {Microsecond-Scale} Resource Fungibility with Logical Processes. In NSDI. 1409--1427."},{"key":"e_1_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.1145\/358699.358703"},{"key":"e_1_2_1_44_1","volume-title":"INFOCOM","volume":"1","author":"Tang Puqi Perry","year":"1999","unstructured":"Puqi Perry Tang and T-YC Tai. 1999. Network traffic characterization using token bucket model. In INFOCOM, Vol. 1. IEEE, 51--62."},{"key":"e_1_2_1_45_1","volume-title":"SI","author":"Urgaonkar Bhuvan","year":"2002","unstructured":"Bhuvan Urgaonkar, Prashant Shenoy, and Timothy Roscoe. 2002. Resource overbooking and application profiling in shared hosting platforms. ACM SIGOPS Operating Systems Review 36, SI (2002), 239--254."},{"key":"e_1_2_1_46_1","doi-asserted-by":"publisher","DOI":"10.1145\/3035918.3056101"},{"key":"e_1_2_1_47_1","unstructured":"Midhul Vuppalapati Justin Miron Rachit Agarwal Dan Truong Ashish Motivala and Thierry Cruanes. 2020. Building an elastic query engine on disaggregated storage. In NSDI. 449--462."},{"key":"e_1_2_1_48_1","doi-asserted-by":"crossref","unstructured":"Benjamin Wagner Andr\u00e9 Kohn and Thomas Neumann. 2021. Self-tuning query scheduling for analytical workloads. In SIGMOD. 1879--1891.","DOI":"10.1145\/3448016.3457260"},{"key":"e_1_2_1_49_1","unstructured":"Huanchen Zhang Yihao Liu and Jiaqi Yan. 2024. Cost-Intelligent Data Analytics in the Cloud. In CIDR."}],"container-title":["Proceedings of the ACM on Management of Data"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3677141","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3677141","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2026,3,31]],"date-time":"2026-03-31T17:11:35Z","timestamp":1774977095000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3677141"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2024,9,30]]},"references-count":49,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2024,10,1]]}},"alternative-id":["10.1145\/3677141"],"URL":"https:\/\/doi.org\/10.1145\/3677141","relation":{},"ISSN":["2836-6573"],"issn-type":[{"value":"2836-6573","type":"electronic"}],"subject":[],"published":{"date-parts":[[2024,9,30]]}}}