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

Performance Engineering and Database Development at MongoDB

Published: 19 April 2021 Publication History

Abstract

Performance and the related properties of stability and resilience are essential to MongoDB. We have invested heavily in these areas: involving all development engineers in aspects of performance, building a team of specialized performance engineers to understand issues that do not fit neatly within the scope of individual development teams, and dedicating multiple teams to develop and support tools for performance testing and analysis.
We have built an automated infrastructure for performance testing that is integrated with our continuous integration system. Performance tests routinely run against our development branch in order to identify changes in performance as early as possible. We have invested heavily to ensure both that results are low noise and reproducible and that we can detect when performance changes. We continue to invest to make the system better and to make it easier to add new workloads.
All development engineers are expected to interact with our performance system: investigating performance changes, fixing regressions, and adding new performance tests. We also expect performance to be considered at project design time. The project design should ensure that there is appropriate performance coverage for the project, which may require repurposing existing tests or adding new ones.
Not all performance issues are specific to a team or software module. Some issues emerge from the interaction of multiple modules or interaction with external systems or software. To attack these larger problems, we have a dedicated performance team. Our performance team is responsible for investigating these more complex issues, identifying high value areas for improvement, as well as helping guide the development engineers with their performance tests.
We have experience both hiring and training engineers for the performance engineering skills needed to ship a performant database system. In this talk we will cover the skills needed for our performance activities and which skills, if added to undergraduate curricula, would help us the most. We will address the skills we would like all development engineers to have, as well as those for our dedicated performance team.

References

[1]
2020. Genny workload generator. https://github.com/mongodb/genny original-date: 2018-02-12T19:23:44Z.
[2]
David Daly. 2021. Creating a Virtuous Cycle in Performance Testing at MongoDB. In Proceedings of the 2021 ACM/SPEC International Conference on Performance Engineering (ICPE '21), April 19--23, 2021, Virtual Event, France. ACM. https://doi.org/10.1145/3427921.3450234
[3]
David Daly, William Brown, Henrik Ingo, Jim O'Leary, and David Bradford. 2020. The Use of Change Point Detection to Identify Software Performance Regressions in a Continuous Integration System. In Proceedings of the ACM/SPEC International Conference on Performance Engineering (ICPE '20). Association for Computing Machinery, Edmonton AB, Canada, 67--75. https://doi.org/10.1145/3358960.3375791
[4]
Kyle Erf. 2016. Evergreen Continuous Integration: Why We Reinvented The Wheel. https://engineering.mongodb.com/post/evergreen-continuous-integration-why-we-reinvented-the-wheel
[5]
Henrik Ingo and David Daly. 2019. Reducing variability in performance tests on EC2: Setup and Key Results. https://engineering.mongodb.com/post/reducing-variability-in-performance-tests-on-ec2-setup-and-key-results
[6]
Henrik Ingo and David Daly. 2020. Automated system performance testing at MongoDB. In Proceedings of the workshop on Testing Database Systems (DBTest '20). Association for Computing Machinery, New York, NY, USA, 1--6. https://doi.org/10.1145/3395032.3395323

Cited By

View all
  • (2024)Utilizing Cloud Technologies in the Investigation of Physicochemical Processes2024 International Russian Smart Industry Conference (SmartIndustryCon)10.1109/SmartIndustryCon61328.2024.10515726(819-823)Online publication date: 25-Mar-2024
  • (2023)Creation of a Cloud Saas Service for a Comprehensive Study of Physical and Chemical Processes2023 5th International Conference on Control Systems, Mathematical Modeling, Automation and Energy Efficiency (SUMMA)10.1109/SUMMA60232.2023.10349413(495-498)Online publication date: 8-Nov-2023
  • (2022)Testing Very Large Database Management Systems: The Case of SAP HANADatenbank-Spektrum10.1007/s13222-022-00426-x22:3(195-215)Online publication date: 24-Nov-2022
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
ICPE '21: Companion of the ACM/SPEC International Conference on Performance Engineering
April 2021
198 pages
ISBN:9781450383318
DOI:10.1145/3447545
Permission to make digital or hard copies of part or all 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 third-party components of this work must be honored. For all other uses, contact the Owner/Author.

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 19 April 2021

Check for updates

Author Tags

  1. continuous integration
  2. education
  3. performance
  4. testing
  5. variability

Qualifiers

  • Keynote

Conference

ICPE '21

Acceptance Rates

Overall Acceptance Rate 252 of 851 submissions, 30%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)17
  • Downloads (Last 6 weeks)2
Reflects downloads up to 18 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Utilizing Cloud Technologies in the Investigation of Physicochemical Processes2024 International Russian Smart Industry Conference (SmartIndustryCon)10.1109/SmartIndustryCon61328.2024.10515726(819-823)Online publication date: 25-Mar-2024
  • (2023)Creation of a Cloud Saas Service for a Comprehensive Study of Physical and Chemical Processes2023 5th International Conference on Control Systems, Mathematical Modeling, Automation and Energy Efficiency (SUMMA)10.1109/SUMMA60232.2023.10349413(495-498)Online publication date: 8-Nov-2023
  • (2022)Testing Very Large Database Management Systems: The Case of SAP HANADatenbank-Spektrum10.1007/s13222-022-00426-x22:3(195-215)Online publication date: 24-Nov-2022
  • (2022)Building a NoSQL ERPProceedings of Seventh International Congress on Information and Communication Technology10.1007/978-981-19-1610-6_59(671-680)Online publication date: 27-Jul-2022

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media