[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/3578245.3584313acmconferencesArticle/Chapter ViewAbstractPublication PagesicpeConference Proceedingsconference-collections
research-article
Open access

Using eBPF for Database Workload Tracing: An Explorative Study

Published: 15 April 2023 Publication History

Abstract

Database management systems~(DBMS) are crucial architectural components of any modern distributed software system. Yet, ensuring a smooth, high-performant operation of a DBMS is a black art that requires tweaking many knobs and is heavily dependent on the experienced workload. Misconfigurations at production systems have an heavy impact on the overall delivered service quality and hence, should be avoided at all costs. Replaying production workload on test and staging systems to estimate the ideal configuration are a valid approach. Yet, this requires traces from the production systems.
While many DBMS's have built-in support to capture such traces these have a non-negligible impact on performance. eBPF is a Linux kernel feature claiming to enable low-overhead observability and application tracing. In this paper, we evaluate different eBPF-based approaches to DBMS workload tracing for PostgreSQL and MySQL. The results show that using eBPF causes lower overhead than the built-in mechanisms. Hence, eBPF can be a viable baseline for building a generic tracing framework. Yet, our current results also show that additional optimisation and fine-tuning is needed to further lower the performance overhead.

References

[1]
Marcelo Amaral, Tatsuhiro Chiba, Scott Trent, Takeshi Yoshimura, and Sunyanan Choochotkaew. 2022. MicroLens: A Performance Analysis Framework for Microservices Using Hidden Metrics With BPF. In 2022 IEEE 15th International Conference on Cloud Computing (CLOUD). 2022 IEEE 15th International Conference on Cloud Computing (CLOUD). (July 2022), 230--240.
[2]
Brian F. Cooper, Adam Silberstein, Erwin Tam, Raghu Ramakrishnan, and Russell Sears. 2010. Benchmarking cloud serving systems with ycsb. In Proceedings of the 1st ACM Symposium on Cloud Computing (SoCC '10). Association for Computing Machinery, Indianapolis, Indiana, USA, 143--154. isbn: 9781450300360.
[3]
Shaleen Deep, Anja Gruenheid, Kruthi Nagaraj, Hiro Naito, Jeff Naughton, and Stratis Viglas. 2021. DIAMetrics: Benchmarking Query Engines at Scale. ACM SIGMOD Record, 50, 1, (June 17, 2021), 24--31.
[4]
Jörg Domaschka, Mark Leznik, Daniel Seybold, Simon Eismann, Johannes Grohmann, and Samuel Kounev. 2021. Buzzy: Towards Realistic DBMS Benchmarking via Tailored, Representative, Synthetic Workloads: Vision Paper. In Companion of the ACM/SPEC International Conference on Performance Engineering (ICPE '21). Association for Computing Machinery, New York, NY, USA, (Apr. 19, 2021), 175--178. isbn: 978--1--4503--8331--8.
[5]
Jörg Domaschka, Simon Volpert, and Daniel Seybold. 2020. Hathi: An MCDMbased Approach to Capacity Planning for Cloud-hosted DBMS. In 2020 IEEE/ACM 13th International Conference on Utility and Cloud Computing (UCC). 2020 IEEE/ACM 13th International Conference on Utility and Cloud Computing (UCC). (Dec. 2020), 143--154.
[6]
Srikar Dronamraju. 2022. Uprobe-tracer: Uprobe-based Event Tracing - The Linux Kernel documentation. Accessed: 2023-02--27. Retrieved Feb. 27, 2023 from https://docs.kernel.org/trace/uprobetracer.html.
[7]
Mohamad Gebai and Michel R. Dagenais. 2018. Survey and Analysis of Kernel and Userspace Tracers on Linux: Design, Implementation, and Overhead. ACM Computing Surveys, 51, 2, (Mar. 12, 2018), 26:1--26:33.
[8]
Brendan Gregg. 2022. Linux eBPF Tracing Tools. Retrieved Sept. 9, 2022 from https://www.brendangregg.com/ebpf.html.
[9]
Brendan Gregg. 2020. Systems Performance: Enterprise and the Cloud. (Second ed.). Addison-Wesley Professional Computing Series.Addison-Wesley, Boston. isbn: 978-0--13--682015--4.
[10]
Johannes Grohmann, Daniel Seybold, Simon Eismann, Mark Leznik, Samuel Kounev, and Jörg Domaschka. 2020. Baloo: measuring and modeling the performance configurations of distributed DBMS. In 28th International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems, MASCOTS 2020, Nice, France, November 17--19, 2020. IEEE, 1--8.
[11]
Masami Hiramatsu. [n. d.] Kprobe-based Event Tracing - The Linux Kernel documentation. Accessed: 2023-02--27. (). Retrieved Feb. 27, 2023 from https://docs.kernel.org/trace/kprobetrace.html.
[12]
Jim Keniston, Ananth Mavinakayanahalli, Vara Prasad, and Prasanna Panchamukhi. 2007. Ptrace, Utrace, Uprobes: Lightweight, Dynamic Tracing of User Apps. In Proceedings of the 2007 Linux Symposium.
[13]
Robert Krahn, Donald Dragoti, Franz Gregor, Do Le Quoc, Valerio Schiavoni, Pascal Felber, Clenimar Souza, Andrey Brito, and Christof Fetzer. 2020. TEEMon: A continuous performance monitoring framework for TEEs. In Proceedings of the 21st International Middleware Conference. Middleware '20: 21st International Middleware Conference. ACM, Delft Netherlands, (Dec. 7, 2020), 178--192. isbn: 978--1--4503--8153--6.
[14]
Hsuan-Chi Kuo, Kai-Hsun Chen, Yicheng Lu, Dan Williams, Sibin Mohan, and Tianyin Xu. 2022. Verified programs can party: optimizing kernel extensions via post-verification merging. In Proceedings of the Seventeenth European Conference on Computer Systems. EuroSys '22: Seventeenth European Conference on Computer Systems. ACM, Rennes France, (Mar. 28, 2022), 283--299. isbn: 978--1--4503--9162--7.
[15]
Joshua Levin. 2020. ViperProbe: Using eBPF Metrics to Improve Microservice Observability. Honors Thesis. (2020). https://cs.brown.edu/research/pubs/theses/ugrad/2020/levin.joshua.pdf.
[16]
Steven McCanne and Van Jacobson. 1993. The BSD packet filter: a new architecture for user-level packet capture. In Proceedings of the USENIX Winter 1993 Conference Proceedings on USENIX Winter 1993 Conference Proceedings (USENIX'93). USENIX Association, USA, (Jan. 25, 1993), 2.
[17]
Andy Nisbet, Nuno Miguel Nobre, Graham Riley, and Mikel Luján. 2019. Profiling and Tracing Support for Java Applications. In Proceedings of the 2019 ACM/SPEC International Conference on Performance Engineering. ICPE '19: Tenth ACM/SPEC International Conference on Performance Engineering. ACM, Mumbai India, (Apr. 4, 2019), 119--126. isbn: 978--1--4503--6239--9.
[18]
Rasha Osman and William J. Knottenbelt. 2012. Database system performance evaluation models: A survey. Performance Evaluation, 69, 10, (Oct. 1, 2012), 471--493.
[19]
Vincent Reniers, Dimitri Van Landuyt, Ansar Rafique, andWouter Joosen. 2017. On the State of NoSQL Benchmarks. In Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering Companion. ICPE '17: ACM/SPEC International Conference on Performance Engineering. ACM, L'Aquila Italy, (Apr. 18, 2017), 107--112. isbn: 978--1--4503--4899--7.
[20]
Joel Scheuner and Philipp Leitner. 2018. Estimating cloud application performance based on micro-benchmark profiling. In 2018 IEEE 11th International Conference on Cloud Computing (CLOUD), 90--97.
[21]
Daniel Seybold. 2021. An Automation-Based Approach for Reproducible Evaluations of Distributed DBMS on Elastic Infrastructures. Ph.D. Dissertation. Universität Ulm, (May 14, 2021). isbn: 9781757899956.
[22]
Daniel Seybold and Jörg Domaschka. 2021. Benchmarking-as-a-service for cloud-hosted dbms. In Proceedings of the 22nd International Middleware Conference: Demos and Posters (Middleware '21). Association for Computing Machinery, Virtual Event, Canada, 12--13. isbn: 9781450391542.
[23]
Theodore Ts'o. 2022. Event Tracing - The Linux Kernel documentation. Accessed: 2023-02--27. Retrieved Feb. 27, 2023 from https://docs.kernel.org/trace/events.html.

Cited By

View all

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
ICPE '23 Companion: Companion of the 2023 ACM/SPEC International Conference on Performance Engineering
April 2023
421 pages
ISBN:9798400700729
DOI:10.1145/3578245
This work is licensed under a Creative Commons Attribution-ShareAlike International 4.0 License.

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 15 April 2023

Check for updates

Author Tags

  1. DBMS
  2. benchmarking
  3. cloud
  4. eBPF

Qualifiers

  • Research-article

Funding Sources

  • German Federal Ministry for Economic Affairs and Climate Action

Conference

ICPE '23

Acceptance Rates

Overall Acceptance Rate 252 of 851 submissions, 30%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 1,108
    Total Downloads
  • Downloads (Last 12 months)809
  • Downloads (Last 6 weeks)80
Reflects downloads up to 20 Dec 2024

Other Metrics

Citations

Cited By

View all

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media