Abstract
Due to their narrow power spectrum between idle and full utilization [2], satisfactory energy efficiency of servers can only be reached in the peak-performance range, whereas energy efficiency obtained for lower activity levels is far from being optimal. Hence, this hardware property obviates a desired energy proportionality or minimal energy use for the entire range of system utilization. To approximate energy proportionality for all activity levels, we developed various versions of WattDB, a distributed DBMS, which runs on a dynamic cluster of wimpy computing nodes. In this survey, we sketch important design decisions and implementation steps towards the final state of WattDB. For these reasons, we discuss our findings on a cluster with dedicated storage nodes and static data allocation, on dynamic data repartitioning and allocation, and on a dynamic cluster where each node can serve as storage and processing node in a symmetric way. Our experiments show that WattDB dynamically adjusts to the workload present and reconfigures itself to satisfy performance demands while keeping its energy consumption at a minimum. Finally, we compare the performance and energy results of the WattDB software running on the cluster of wimpy nodes with that of a brawny server.

















Similar content being viewed by others
Notes
It is also possible to turn nodes completely off, resulting in about 0.5 W of power use. But then, start-up times are much higher than just waking up from suspend-to-RAM.
The initial version of the core engine was developed for the 2010 SIGMOD Programming Contest, where it won the second prize [5].
Pipelining operators can process one record at a time and emit the result, e.g., projection operators.
Blocking operators need to fetch all records from the underlying operators, before emitting the first result record.
rDMA = remote direct memory access
Note that 100 % utilization is not equivalent in both systems, the big server is possibly much faster than the cluster.
We also noticed, that OLTP runtimes are significantly lower compared to our experiments with OLAP in parallel.
References
Albers S (2010) Energy-efficient algorithms. Commun ACM 53(5):86–96
Barroso LA, Hölzle U (2007) The case for energy-proportional computing. IEEE Computer 40(12):33–37
Bernstein PA, Goodman N (1983) Multiversion concurrency control—theory and algorithms. ACM Trans Database Syst 8(4):465–483
Boncz PA, Zukowski M, Nes N (2005) MonetDB/X100: hyper-pipelining query execution. In: CIDR, pp 225–237
Genzmer C, Hudlet V, Park H, Schall D, Senellart P (2010) The SIGMOD 2010 programming contest—a distributed query engine. SIGMOD Record 39(2):61–64
Graefe G (1994) Volcano—an extensible and parallel query evaluation system. IEEE Trans on Knowl Data Eng 6(1):120–135
Härder T, Rahm E (1987) Hochleistungs-Datenbanksysteme -- Vergleich und Bewertung aktueller Architekturen und ihrer Implementierung. IT 29(3):127–140
Kramer C, Höfner V, Härder T (2012) Lastprognose für energieeffiziente verteilte DBMS. Proc. 42. GI-Jahrestagung 2012, LNI 208 pp 397–411
Lang W, Patel JM (2009) Towards eco-friendly database management systems. In: CIDR
\refauLang W et al (2012) Towards energy-efficient database cluster design. PVLDB 5(11):1684–1695
Poess M, Nambiar RO (2008) Energy cost, the key challenge of today`s data centers: a power consumption analysis of TPC-C results. PVLDB 1(2):1229–1240
Schall D, Härder T (2013) Energy-proportional query execution using a cluster of Wimpy Nodes. In: SIGMOD Workshops, DaMoN, pp~1:1–1:6
Schall D, Härder T (2013) Towards an energy-proportional storage system using a cluster of Wimpy Nodes. In: BTW, LNI 214, pp~311–325
Schall D, Härder T (2014) Approximating an energy-proportional DBMS by a dynamic Cluster of Nodes. In: DASFAA, LNCS 8421, pp~297–311
Schall D, Höfner V, Kern M (2012) Towards an Enhanced Benchmark Advocating Energy-Efficient Systems. In: TPCTC, LNCS 7144, pp~31–45
Schall D et al (2014) Dynamic physiological partitioning on a shared-nothing database Cluster. In: CoRR
Schall D et al (2014) Energy and performance—can a Wimpy-Node Cluster challenge a Brawny Server? In: CoRR
Tözün P et al (2013) Scalable and dynamically balanced shared-everything OLTP with physiological partitioning. VLDB J 22(2):151–175
Tsirogiannis D et al (2010) Analyzing the energy efficiency of a database server. In: SIGMOD, pp 231–242
Wang J et al (2011) A Survey on energy-efficient data management. SIGMOD Record 40:17–23
Willhalm T (2012) Intel performance counter monitor - a better way to measure CPU utilization. Tech. rep., Intel Corporation
Zhou J, Ross KA (2004) Buffering database operations for enhanced instruction cache performance. In: SIGMOD, pp 191–202
Acknowledgments
The research project Energy-Efficient Processing in Database Systems was partly funded by the German Research Foundation (DFG) under the contracts HA 1286/8-1 and HA 1286/8-2. Finally, we would like to thank the anonymous reviewers for their insightful reviews.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Schall, D., Härder, T. WattDB - A Journey towards Energy Efficiency. Datenbank Spektrum 14, 183–198 (2014). https://doi.org/10.1007/s13222-014-0168-8
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s13222-014-0168-8