The Energy Efficiency of Database Replication Protocols

Replication is a widely used technique to provide high-availability to online services. While being an effective way to mask failures, replication comes at a price: at least twice as much hardware and energy are required to mask a single failure. In a context where the electricity drawn by data centers worldwide is increasing each year, there is a need to maximize the amount of useful work done per Joule, a metric denoted as energy efficiency. In this paper, we review commonly-used database replication protocols and experimentally measure their energy efficiency. We observe that the most efficient replication protocol achieves less than 60% of the energy efficiency of a stand-alone server on the TPC-C benchmark. We identify algorithmic techniques that can be used by any protocol to improve its efficiency. Some approaches improve performance, others lower power consumption. Of particular interest is a technique derived from primary-backup replication that implements a transaction log on low-power backups. We demonstrate how this approach can lead to an energy efficiency that is 79% of the one of a stand-alone server. This constitutes an important step towards reconciling replication with energy efficiency.

[1]  Fred B. Schneider,et al.  Implementing fault-tolerant services using the state machine approach: a tutorial , 1990, CSUR.

[2]  Jiguang Wan,et al.  A new high-performance, energy-efficient replication storage system with reliability guarantee , 2012, 012 IEEE 28th Symposium on Mass Storage Systems and Technologies (MSST).

[3]  Barbara Liskov,et al.  Viewstamped Replication: A General Primary Copy , 1988, PODC.

[4]  Fernando Pedone,et al.  Pronto: High availability for standard off-the-shelf databases , 2008, J. Parallel Distributed Comput..

[5]  Seung-won Hwang,et al.  Ursa: Scalable Load and Power Management in Cloud Storage Systems , 2013, TOS.

[6]  Robbert van Renesse,et al.  Chain Replication for Supporting High Throughput and Availability , 2004, OSDI.

[7]  José Pereira,et al.  AJITTS: Adaptive Just-In-Time Transaction Scheduling , 2013, DAIS.

[8]  Andy Hopper,et al.  Free Lunch: Exploiting Renewable Energy for Computing , 2011, HotOS.

[9]  Xiao Qin,et al.  Exploiting Redundancies and Deferred Writes to Conserve Energy in Erasure-Coded Storage Clusters , 2013, TOS.

[10]  Sameh Elnikety,et al.  Tashkent+: memory-aware load balancing and update filtering in replicated databases , 2007, EuroSys '07.

[11]  Daniel J. Abadi,et al.  Calvin: fast distributed transactions for partitioned database systems , 2012, SIGMOD Conference.

[12]  Gustavo Alonso,et al.  Exploiting Atomic Broadcast in Replicated Databases (Extended Abstract) , 1997, Euro-Par.

[13]  Mehul A. Shah,et al.  Analyzing the energy efficiency of a database server , 2010, SIGMOD Conference.

[14]  Rachid Guerraoui,et al.  The Database State Machine Approach , 2003, Distributed and Parallel Databases.

[15]  Fernando Pedone,et al.  Multi-Ring Paxos , 2012, IEEE/IFIP International Conference on Dependable Systems and Networks (DSN 2012).

[16]  Carlo Curino,et al.  Workload-aware database monitoring and consolidation , 2011, SIGMOD '11.

[17]  Sandeep K. S. Gupta,et al.  TACOMA: Server and workload management in internet data centers considering cooling-computing power trade-off and energy proportionality , 2012, TACO.

[18]  Amar Phanishayee,et al.  FAWN: a fast array of wimpy nodes , 2009, SOSP '09.

[19]  Lakshmi Ganesh,et al.  Integrated Approach to Data Center Power Management , 2013, IEEE Transactions on Computers.

[20]  Hector Garcia-Molina,et al.  Main Memory Database Systems: An Overview , 1992, IEEE Trans. Knowl. Data Eng..

[21]  Rachid Guerraoui,et al.  Throughput optimal total order broadcast for cluster environments , 2010, TOCS.

[22]  Luiz André Barroso,et al.  The Case for Energy-Proportional Computing , 2007, Computer.

[23]  Yang Wang,et al.  All about Eve: Execute-Verify Replication for Multi-Core Servers , 2012, OSDI.

[24]  Prashanth Mohan,et al.  Design and Evaluation of an Energy Agile Computing Cluster , 2012 .

[25]  Dennis Shasha,et al.  The dangers of replication and a solution , 1996, SIGMOD '96.

[26]  Wei Chen,et al.  GreenGPU: A Holistic Approach to Energy Efficiency in GPU-CPU Heterogeneous Architectures , 2012, 2012 41st International Conference on Parallel Processing.

[27]  Luís E. T. Rodrigues,et al.  Chasing the Optimum in Replicated In-Memory Transactional Platforms via Protocol Adaptation , 2015, IEEE Transactions on Parallel and Distributed Systems.

[28]  Christos H. Papadimitriou,et al.  The serializability of concurrent database updates , 1979, JACM.