skip to main content
research-article

Database engines: : Evolution of greenness

Published: 17 April 2018 Publication History

Abstract

Information technology consumes up to 10% of the world's electricity generation, contributing to CO2 emissions and high energy costs. Data centers, particularly databases, use up to 23% of this energy. Therefore, building an energy‐efficient (green) database engine could reduce energy consumption and CO2 emissions. The goal of this study is to understand the factors driving databases' energy consumption and execution time throughout their evolution. We conducted an empirical case study of energy consumption by 2 MySQL database engines, InnoDB and MyISAM, across 40 releases. We examined the relationships of 4 software metrics to energy consumption and execution time to determine which metrics reflect the greenness and performance of a database. Our analysis shows that database engines' energy consumption and execution time increase as databases evolve. Moreover, the lines of code (LOC) metric is correlated moderately to strongly with energy consumption and execution time in 88% of cases. Our findings provide insights to practitioners and researchers. Database administrators may use them to select a fast, green release of the MySQL database engine. MySQL developers may use LOC to assess products' greenness and performance. Researchers may use our findings to further develop new hypotheses or build models predicting greenness and performance of databases.

References

[1]
Mills MP. The cloud begins with coal. Technical Report,  Digital Power Group; 2013.  http://www.tech-pundit.com/wp-content/uploads/2013/07/Cloud_Begins_With_Coal.pdf.
[2]
Whitney J, Delforge P. Data center efficiency assessment. Technical Report IP:14-08-A, New York City, New York,  Natural Resources Defense Council; 2014.  http://www.nrdc.org/energy/files/data-center-efficiency-assessment-IP.pdf.
[3]
Jackson RB, Canadell JG, Le Quéré C, et al. Reaching peak emissions. Nat Clim Change. 2016;6:7‐10.
[4]
Conti J, Holtberg P, Diefenderfer J, et al. International energy outlook 2016. Technical Report DOE/EIA‐0484(2016),  Washington, DC, U.S. Energy Information Administration; 2016.  http://www.eia.gov/forecasts/ieo/pdf/0484(2016).pdf.
[5]
Murugesan S. Harnessing green IT: principles and practices. IT Prof. 2008;10(1):24‐33.
[6]
Kern E, Dick M, Johann T, Naumann S. Green software and green it: an end users perspective. Information Technologies in Environmental Engineering. Berlin, Heidelberg: Springer; 2011:199‐211.
[7]
Noureddine A, Bourdon A, Rouvoy R, Seinturier L. A preliminary study of the impact of software engineering on greenIT. In: First International Workshop on Green and Sustainable Software (GREENS), Zurich, Switzerland: IEEE;2012:21‐27.
[8]
Wilke C, Götz S, Richly S. JouleUnit: a generic framework for software energy profiling and testing. In: 2013 Workshop on Green in Software Engineering, Green by Software Engineering (GIBSE), 2013; Fukuoka, Japan. 9‐14.
[9]
TPC‐Energy. http://www.tpc.org/tpc_energy/. Accessed December 20, 2016.
[10]
Brown DJ, Reams C. Toward energy‐efficient computing. Commun ACM. 2010;53(3):50‐58.
[11]
Duarte A, Cirne W, Brasileiro F, Machado P. Gridunit: software testing on the grid. In: Proceedings of the 28th International Conference on Software Engineering, ICSE '06, Shanghai, China: ACM; 2006:779‐782.
[12]
Winter S, Schwahn O, Natella R, Suri N, Cotroneo D. No pain, no gain? the utility of parallel fault injections. In: Proceedings of the 37th International Conference on Software Engineering ‐ Volume 1, ICSE '15, Florence/Firenze, Italy: IEEE; 2015:494‐505.
[13]
Hindle A. Green mining: investigating power consumption across versions. In: 34th International Conference on Software Engineering (ICSE), Zurich, Switzerland: IEEE; 2012:1301‐1304.
[14]
Hindle A. Green mining: a methodology of relating software change and configuration to power consumption. Empirical Software Eng. 2015;20(2):374‐409.
[15]
MySQL: The worlds most popular open source database. http://www.mysql.com/. Accessed December 20, 2016.
[16]
Delaluz V, Kandemir M, Vijaykrishnan N, Sivasubramaniam A, Irwin MJ. Dram energy management using software and hardware directed power mode control. In: IEEE 7th International Symposium on High‐Performance Computer Architecture (HPCA); 2001; IEEE. 159‐169.
[17]
Tiwari V, Malik S, Wolfe A, Lee MTC. Instruction level power analysis and optimization of software. Technologies for Wireless Computing: Springer; 1996:139‐154. https://doi.org/10.1007/BF01130407.
[18]
Mittal R, Kansal A, Chandra R. Empowering developers to estimate app energy consumption. In: 18th Annual International Conference on Mobile Computing and Networking, Istanbul, Turkey: ACM; 2012:317‐328.
[19]
Bircher WL, John LK. Complete system power estimation: a trickle‐down approach based on performance events. In: IEEE International Symposium on Performance Analysis of Systems & Software (ISPASS); 2007; San Jose, California, USA. 158‐168.
[20]
Greenawalt PM. Modeling power management for hard disks. In: Second International Workshop on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems, MASCOTS'94, Durham, NC: IEEE; 1994:62‐66.
[21]
Stemm M, et al. Measuring and reducing energy consumption of network interfaces in hand‐held devices. IEICE Trans Commun. 1997;80(8):1125‐1131.
[22]
Li K, Kumpf R, Horton P, Anderson TE. A quantitative analysis of disk drive power management in portable computers. In: USENIX winter, San Francisco, CA, USA: USENIX Association Berkeley; 1994:279‐291.
[23]
Selby J. Unconventional applications of compiler analysis. Ph.D. Thesis, Waterloo, Ontario, Canada: University of Waterloo; 2011.
[24]
Fei Y, Ravi S, Raghunathan A, Jha NK. Energy‐optimizing source code transformations for operating system‐driven embedded software. ACM Trans Embedded Comput Syst (TECS). 2007;7(1):1‐26.
[25]
Feng X, Ge R, Cameron KW. Power and energy profiling of scientific applications on distributed systems. In: 19th IEEE International Parallel and Distributed Processing Symposium, Denver, Colorado-at the Omni Interlocken Resort: IEEE; 2005:1‐10.
[26]
Amsel N, Tomlinson B. Green tracker: a tool for estimating the energy consumption of software. In: Chi'10 Extended Abstracts on Human Factors in Computing Systems, Atlanta, GA, USA: ACM; 2010:3337‐3342.
[27]
Gurumurthi S, Sivasubramaniam A, Irwin MJ, Vijaykrishnan N, Kandemir M. Using complete machine simulation for software power estimation: the softwatt approach. In: 8th International Symposium on High‐Performance Computer Architecture, Boston, Massachusettes, USA: IEEE; 2002:141‐150.
[28]
Shang W, Jiang ZM, Adams B, et al. An exploratory study of the evolution of communicated information about the execution of large software systems. J Software: Evol Process. 2014;26(1):3‐26.
[29]
Chen C, He B, Tang X, Chen C, Liu Y. Green databases through integration of renewable energy. In: 6th Biennial Conference on Innovative Data Systems Research (CIDR); 2013; Asilomar, California. 1‐11.
[30]
Liu X, Wang J, Wang H, Gao H. Generating power‐efficient query execution plan. In: 2nd International Conference on Advances in Computer Science and Engineering (CSE 2013); 2013; Los Angeles, CA, USA. 284‐288.
[31]
Gupta A, Zimmermann T, Bird C, Naggapan N, Bhat T, Emran S. Energy consumption in windows phone. Tech. Rep. MSR‐TR‐2011‐106,  Microsoft Research Microsoft Corporation One Microsoft Way Redmond, WA 98052; 2011.
[32]
Kagdi H, Collard ML, Maletic JI. A survey and taxonomy of approaches for mining software repositories in the context of software evolution. J Software Maintenance Evol: Res Pract. 2007;19(2):77‐131.
[33]
Wohlin C, Runeson P, Höst M, Ohlsson MC, Regnell B, Wesslén A. Experimentation in Software Engineering, Heidelberg, New York, Dordrecht, London: Springer Science & Business Media; 2012.
[35]
TPC‐H. http://www.tpc.org/tpch/. Accessed December 20, 2016.
[36]
Boncz P, Neumann T, Erling O. TPC‐H analyzed: hidden messages and lessons learned from an influential benchmark. In: Nambiar R, Poess M, eds. Performance Characterization and Benchmarking: 5th TPC Technology Conference, TPCTC 2013, Trento, Italy, August 26, 2013, Revised Selected Papers, Trento:Springer; 2014:61‐76.
[37]
MySQL 5.6 Reference Manual :: 8.10.1 The InnoDB Buffer Pool. https://dev.mysql.com/doc/refman/5.6/en/innodb-buffer-pool.html. Accessed December 20, 2016.
[38]
MySQL 5.6 Reference Manual :: 8.10.2 The MyISAM Key Cache. https://dev.mysql.com/doc/refman/5.6/en/myisam-key-cache.html. Accessed December 20, 2016.
[39]
MySQL: Optimizing Memory Use. https://dev.mysql.com/doc/refman/5.6/en/optimizing-memory.html. Accessed December 20, 2016.
[40]
Watts up? Products: Meters. https://www.wattsupmeters.com/secure/products.php?pn=0. Accessed December 20, 2016.
[41]
[42]
Watts up? Communications Protocol. https://www.wattsupmeters.com/secure/downloads/CommunicationsProtocol090824.pdf. Accessed December 20, 2016.
[43]
[44]
CLOC. https://github.com/AlDanial/cloc. Accessed December 20, 2016.
[45]
[46]
Hipp R, et al. Sqlite. SQLite Development Team; 2015. https://www.sqlite.org/download.html, version 3.8.6. Accessed December 20, 2016.
[47]
R Core Team. R: A language and environment for statistical computing. R Foundation for Statistical Computing, Vienna, Austria. https://www.R-project.org/, version 3.2.3; 2015.
[48]
Wickham H, James DA, Falcon S. RSQLite: SQ Lite interface for R; 2014. https://CRAN.R-project.org/package=RSQLite,r package version 1.0.0.
[49]
Dancey CP, Reidy J. Statistics Without Maths for Psychology Using SPSS for Windows:Prentice‐Hall, Inc; 2004.
[50]
Western Digital: Caviar Blue Hard Drives Specification, Irvine, CA, USA. http://www.wdc.com/wdproducts/library/SpecSheet/ENG/2879-701277.pdf.
[51]
Intel Pentium 4 Processor 630 supporting HT Technology (2M Cache, 3.00G Hz, 800 MHz FSB) Specifications. http://ark.intel.com/products/27478/Intel-Pentium-4-Processor-630-supporting-HT-Technology-2M-Cache-3_00-GHz-800-MHz-FSB.
[52]
Koçak SA, Miranskyy A, Alptekin GI, Bener AB, Cialini E. The impact of improving software functionality on environmental sustainability. In: 1st International Conference on Information and Communication Technologies for Sustainability (ICT4S); 2013:95‐100.
[53]
Miranskyy A, Kocak SA, Cialini E, Bener AB. Save energy with the DB2 10. 1 for Linux, UNIX, and Windows data compression feature. IBM Developer Woks, Technical Library; http://www.ibm.com/developerworks/data/library/techarticle/dm-1302db2compression/; 2013.
[54]
MySQL :: MySQL 5.6 Reference Manual :: 14.3.3.1 Configuring InnoDB Buffer Pool Prefetching (Read‐Ahead). https://dev.mysql.com/doc/refman/5.6/en/innodb-performance-read_ahead.html.
[55]
Lind RK, Vairavan K. An experimental investigation of software metrics and the irrelationship to software development effort. IEEE Trans Software Eng. 1989;15(5):649‐653.
[56]
MySQL :: MySQL5. 1 Reference Manual :: 14 Storage Engines. http://dev.mysql.com/doc/refman/5.1/en/storage-engines.html.
[57]
Penzenstadler B, Raturi A, Richardson D, Tomlinson B. Safety, security, now sustainability: The nonfunctional requirement for the 21st century. IEEES oftware. 2014;31(3):40‐47.
[58]
Mısırlı AT, Çağlayan B, Miranskyy AV, Bener A, Ruffolo N. Different strokes for different folks: a case study on software metrics for different defect categories. In: 2nd International Workshop on Emerging Trends in Software Metrics (WETSoM); 2011:45‐51.
[59]
Miranskyy A, Caglayan B, Bener A, Cialini E. Effect of temporal collaboration network, maintenance activity, and experience on defect exposure. In: 8th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM), Torino, Italy: ACM; 2014:1‐8.
[60]
Yin RK. Case Study Research: Design and Methods. 5th ed. SAGE Publications Inc; 2013.
[61]
Python Software Foundation. Python language reference,version 2.7, Beaverton, OR, USA. http://www.python.org,r package version1.0.0; 2014.
[62]
Wieringa R, Daneva M. Six strategies for generalizing software engineering theories. Sci Comput Program. 2015;101:136‐152.
[63]
Cotroneo D, Natella R, Pietrantuono R, Russo S. A survey of software aging and rejuvenation studies. J Emerg Technol Comput Syst. January 2014;10(1):8:1‐8:34.

Cited By

View all

Index Terms

  1. Database engines: Evolution of greenness
          Index terms have been assigned to the content through auto-classification.

          Recommendations

          Comments

          Information & Contributors

          Information

          Published In

          cover image Journal of Software: Evolution and Process
          Journal of Software: Evolution and Process  Volume 30, Issue 4
          April 2018
          111 pages
          ISSN:2047-7473
          EISSN:2047-7481
          DOI:10.1002/smr.v30.4
          Issue’s Table of Contents

          Publisher

          John Wiley & Sons, Inc.

          United States

          Publication History

          Published: 17 April 2018

          Author Tags

          1. energy consumption
          2. database
          3. green computing
          4. MySQL
          5. software metrics

          Qualifiers

          • Research-article

          Contributors

          Other Metrics

          Bibliometrics & Citations

          Bibliometrics

          Article Metrics

          • Downloads (Last 12 months)0
          • Downloads (Last 6 weeks)0
          Reflects downloads up to 21 Sep 2024

          Other Metrics

          Citations

          Cited By

          View all

          View Options

          View options

          Get Access

          Login options

          Media

          Figures

          Other

          Tables

          Share

          Share

          Share this Publication link

          Share on social media