skip to main content
10.1145/2961111.2962586acmconferencesArticle/Chapter ViewAbstractPublication PagesesemConference Proceedingsconference-collections
research-article

Energy Efficiency of ORM Approaches: an Empirical Evaluation

Authors Info & Claims
Published:08 September 2016Publication History

ABSTRACT

Context. Object-Relational Mapping (ORM) frameworks are widely used in business software applications to interact with database systems. Even if ORMs introduce several benefits when compared to a plain SQL approach, these techniques have known disadvantages.

Goal. In this paper, we present an empirical study that evaluates the energy efficiency of three different approaches to programmatically access SQL databases in PHP applications. The selected approaches are: plain SQL queries in the source code, and two specialized frameworks, Propel and TinyQueries.

Method. We performed an empirical experiment in a controlled environment. We selected three factors for our experimentation: the different ORM approaches, the type of query (Create, Read, Update, Delete) and the size of database tables. Our response variables were execution time and energy consumption.

Results. As expected, pure SQL yielded the best performance and energy efficiency in all test cases. Propel exhibited a much higher energy consumption and longer execution times. The TinyQueries tool performed slightly worse than SQL, but significantly better than Propel, offering a convenient trade--off between ORM benefits and energy efficiency.

Conclusions. Our experiment shows that ORM approaches have a significant impact on both energy consumption and performance. This helps developers and architects when considering the trade-off between their benefits (e.g. in terms of code maintainability and readability) and drawbacks.

References

  1. N. An, S. Gurumurthi, A. Sivasubramaniam, N. Vijaykrishnan, M. Kandemir, and M. J. Irwin. Energy-performance trade-offs for spatial access methods on memory-resident data. The International Journal on Very Large Data Bases, 11(3):179--197, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. V. Basili and G. Caldiera. Rombach. HD the goal question metric approach. Encyclopedia of Software Engineering, Wiley, 2(1994):528--532, 1994.Google ScholarGoogle Scholar
  3. C. Chen, B. He, X. Tang, C. Chen, and Y. Liu. Green Databases Through Integration of Renewable Energy. In 6th Biennial Conference on Innovative Data Systems Research (CIDR), 2013.Google ScholarGoogle Scholar
  4. M. Ferreira, E. Hoekstra, B. Merkus, B. Visser, and J. Visser. Seflab: A lab for measuring software energy footprints. In Green and Sustainable Software (GREENS), 2013 2nd International Workshop on, pages 30--37, May 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. E. Gelenbe and Y. Caseau. The impact of information technology on energy consumption and carbon emissions. Ubiquity, 2015(June):1:1--1:15, June 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. S. Götz, T. Ilsche, J. Cardoso, J. Spillner, T. Kissinger, U. Aβmann, W. Lehner, W. E. Nagel, and A. Schill. Energy-efficient databases using sweet spot frequencies. In Proceedings of the 2014 IEEE/ACM 7th International Conference on Utility and Cloud Computing, pages 871--876. IEEE Computer Society, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. C. Gough, I. Steiner, and W. Saunders. Energy Efficient Servers: Blueprints for Data Center Optimization, chapter Data Center Management, pages 307--318. Apress, Berkeley, CA, 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. A. Hindle. Green mining: Investigating power consumption across versions. In ICSE, pages 1301--1304, jun 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. N. Iimura, N. Nishikawa, M. Nakano, and M. Oguchi. A proposal of storage power control method with data placement in an environment using many hdds. In Proceedings of the 9th International Conference on Ubiquitous Information Management and Communication, IMCOM '15, pages 73:1--73:8, New York, NY, USA, 2015. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. J. G. Koomey, S. Berard, M. Sanchez, and H. Wong. Implications of historical trends in the electrical efficiency of computing. IEEE Ann. Hist. Comput., 33(3):46--54, Mar. 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. P. Lago, R. Kazman, N. Meyer, M. Morisio, H. A. Müller, F. Paulisch, G. Scanniello, B. Penzenstadler, and O. Zimmermann. Exploring initial challenges for green software engineering: summary of the first GREENS workshop, at ICSE 2012. SIGSOFT Softw. Eng. Notes, 38(1):31--33, Jan. 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. P. Lago, N. Meyer, M. Morisio, H. Müller, and others. Leveraging energy efficiency to software users: summary of the second GREENS workshop, at ICSE 2013. ACM SIGSOFT Software, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. W. Lang, R. Kandhan, and J. M. Patel. Rethinking Query Processing for Energy Efficiency: Slowing Down to Win the Race. IEEE Data Eng. Bull., 34(1):12--23, 2011.Google ScholarGoogle Scholar
  14. W. Lang and J. M. Patel. Towards eco-friendly database management systems. In 4th Biennial Conference on Innovative Data Systems Research (CIDR). www.cidrdb.org, 2009.Google ScholarGoogle Scholar
  15. D. Li and W. G. J. Halfond. An investigation into energy-saving programming practices for android smartphone app development. In Proceedings of the 3rd International Workshop on Green and Sustainable Software, GREENS 2014, pages 46--53, New York, NY, USA, 2014. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. M. Linares-Vásquez, G. Bavota, C. Bernal-Cárdenas, R. Oliveto, M. Di Penta, and D. Poshyvanyk. Mining energy-greedy api usage patterns in android apps: An empirical study. In Proceedings of the 11th Working Conference on Mining Software Repositories, MSR 2014, pages 2--11, New York, NY, USA, 2014. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. R. Perez-Castillo and M. Piattini. Analyzing the harmful effect of god class refactoring on power consumption. Software, IEEE, 31(3):48--54, May 2014.Google ScholarGoogle ScholarCross RefCross Ref
  18. G. Pinto, F. Castor, and Y. D. Liu. Understanding energy behaviors of thread management constructs. In Proceedings of the 2014 ACM International Conference on Object Oriented Programming Systems Languages & Applications, OOPSLA '14, pages 345--360, New York, NY, USA, 2014. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. J. Pisharath, A. Choudhary, and M. Kandemir. Energy Management Schemes for Memory-resident Database Systems. In Proceedings of the Thirteenth ACM International Conference on Information and Knowledge Management, CIKM '04, pages 218--227, New York, NY, USA, 2004. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. J. Pisharath, A. Choudhary, and M. Kandemir. Reducing Energy Consumption of Queries in Memory-resident Database Systems. In Proceedings of the 2004 International Conference on Compilers, Architecture, and Synthesis for Embedded Systems, CASES '04, pages 35--45, New York, NY, USA, 2004. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. G. Procaccianti, H. Fernandez, and P. Lago. Empirical evaluation of two best practices for energy-efficient software development. Journal of Systems and Software, 2016. DOI: 10.1016/j.jss.2016.02.035. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. G. Procaccianti, H. Fernandez, and P. Lago. Empirical evaluation of two Best-Practices for Energy-Efficient software development. J. Syst. Softw., 117(July 2016):185--198, 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. G. Procaccianti, P. Lago, A. Vetro, D. Méndez Fernández, and R. J. Wieringa. The green lab: Experimentation in software energy efficiency. In International Conference on Software Engineering (ICSE), 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. C. Sahin, L. Pollock, and J. Clause. How do code refactorings affect energy usage? In Proceedings of the 8th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, ESEM '14, pages 36:1--36:10, New York, NY, USA, 2014. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. J. Song, T. Li, X. Liu, and Z. Zhu. Comparing and analyzing the energy efficiency of cloud database and parallel database. In Advances in Computer Science, Engineering & Applications, pages 989--997. Springer, 2012.Google ScholarGoogle Scholar
  26. D. Tsirogiannis, S. Harizopoulos, and M. A. Shah. Analyzing the Energy Efficiency of a Database Server. In Proceedings of the 2010 ACM SIGMOD International Conference on Management of Data, SIGMOD '10, pages 231--242, New York, NY, USA, 2010. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Y.-C. Tu, X. Wang, B. Zeng, and Z. Xu. A system for energy-efficient data management. ACM SIGMOD Record, 43(1):21--26, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. J. W. Tukey. Comparing individual means in the analysis of variance. Biometrics, 5(2):99--114, June 1949.Google ScholarGoogle ScholarCross RefCross Ref
  29. N. Wirth. A plea for lean software. IEEE Computer, 28(2):64--68, Feb. 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. C. Wohlin, P. Runeson, M. Höst, M. C. Ohlsson, B. Regnell, and A. Wesslén. Experimentation in software engineering. Springer Science & Business Media, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Z. Xu. Building a Power-aware Database Management System. In Proceedings of the Fourth SIGMOD PhD Workshop on Innovative Database Research, IDAR '10, pages 1--6, New York, NY, USA, 2010. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Z. Xu, Y. Tu, and X. Wang. Online Energy Estimation of Relational Operations in Database Systems. Computers, IEEE Transactions on, 64(11):3223--3236, Nov. 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Z. Xu, Y.-C. Tu, and X. Wang. Exploring power-performance tradeoffs in database systems. In Data Engineering (ICDE), 2010 IEEE 26th International Conference on, pages 485--496, Mar. 2010.Google ScholarGoogle ScholarCross RefCross Ref

Recommendations

Comments

Login options

Check if you have access through your login credentials or your institution to get full access on this article.

Sign in
  • Published in

    cover image ACM Conferences
    ESEM '16: Proceedings of the 10th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement
    September 2016
    457 pages
    ISBN:9781450344272
    DOI:10.1145/2961111

    Copyright © 2016 ACM

    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 ACM 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]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    • Published: 8 September 2016

    Permissions

    Request permissions about this article.

    Request Permissions

    Check for updates

    Qualifiers

    • research-article
    • Research
    • Refereed limited

    Acceptance Rates

    ESEM '16 Paper Acceptance Rate27of122submissions,22%Overall Acceptance Rate130of594submissions,22%

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader