RemusDB

Transparent high availability for database systems

Umar Farooq Minhas, Shriram Rajagopalan, Brendan Cully, Ashraf Aboulnaga, Kenneth Salem, Andrew Warfield

Research output: Contribution to journalArticle

21 Citations (Scopus)

Abstract

In this paper, we present a technique for building a high-availability (HA) database management system (DBMS). The proposed technique can be applied to any DBMS with little or no customization, and with reasonable performance overhead. Our approach is based on Remus, a commodity HA solution implemented in the virtualization layer, that uses asynchronous virtual machine state replication to provide transparent HA and failover capabilities. We show that while Remus and similar systems can protect a DBMS, database workloads incur a performance overhead of up to 32 % as compared to an unprotected DBMS. We identify the sources of this overhead and develop optimizations that mitigate the problems. We present an experimental evaluation using two popular database systems and industry standard benchmarks showing that for certain workloads, our optimized approach provides fast failover (≤3 s of downtime) with low performance overhead when compared to an unprotected DBMS. Our approach provides a practical means for existing, deployed database systems to be made more reliable with a minimum of risk, cost, and effort. Furthermore, this paper invites new discussion about whether the complexity of HA is best implemented within the DBMS, or as a service by the infrastructure below it.

Original languageEnglish
Pages (from-to)29-45
Number of pages17
JournalVLDB Journal
Volume22
Issue number1
DOIs
Publication statusPublished - 1 Jan 2013
Externally publishedYes

Fingerprint

Availability
Costs
Industry

Keywords

  • Checkpointing
  • Fault tolerance
  • High availability
  • Performance modeling
  • Virtualization

ASJC Scopus subject areas

  • Hardware and Architecture
  • Information Systems

Cite this

Minhas, U. F., Rajagopalan, S., Cully, B., Aboulnaga, A., Salem, K., & Warfield, A. (2013). RemusDB: Transparent high availability for database systems. VLDB Journal, 22(1), 29-45. https://doi.org/10.1007/s00778-012-0294-6

RemusDB : Transparent high availability for database systems. / Minhas, Umar Farooq; Rajagopalan, Shriram; Cully, Brendan; Aboulnaga, Ashraf; Salem, Kenneth; Warfield, Andrew.

In: VLDB Journal, Vol. 22, No. 1, 01.01.2013, p. 29-45.

Research output: Contribution to journalArticle

Minhas, UF, Rajagopalan, S, Cully, B, Aboulnaga, A, Salem, K & Warfield, A 2013, 'RemusDB: Transparent high availability for database systems', VLDB Journal, vol. 22, no. 1, pp. 29-45. https://doi.org/10.1007/s00778-012-0294-6
Minhas UF, Rajagopalan S, Cully B, Aboulnaga A, Salem K, Warfield A. RemusDB: Transparent high availability for database systems. VLDB Journal. 2013 Jan 1;22(1):29-45. https://doi.org/10.1007/s00778-012-0294-6
Minhas, Umar Farooq ; Rajagopalan, Shriram ; Cully, Brendan ; Aboulnaga, Ashraf ; Salem, Kenneth ; Warfield, Andrew. / RemusDB : Transparent high availability for database systems. In: VLDB Journal. 2013 ; Vol. 22, No. 1. pp. 29-45.
@article{71d123051dde4b05b370db778af30d81,
title = "RemusDB: Transparent high availability for database systems",
abstract = "In this paper, we present a technique for building a high-availability (HA) database management system (DBMS). The proposed technique can be applied to any DBMS with little or no customization, and with reasonable performance overhead. Our approach is based on Remus, a commodity HA solution implemented in the virtualization layer, that uses asynchronous virtual machine state replication to provide transparent HA and failover capabilities. We show that while Remus and similar systems can protect a DBMS, database workloads incur a performance overhead of up to 32 {\%} as compared to an unprotected DBMS. We identify the sources of this overhead and develop optimizations that mitigate the problems. We present an experimental evaluation using two popular database systems and industry standard benchmarks showing that for certain workloads, our optimized approach provides fast failover (≤3 s of downtime) with low performance overhead when compared to an unprotected DBMS. Our approach provides a practical means for existing, deployed database systems to be made more reliable with a minimum of risk, cost, and effort. Furthermore, this paper invites new discussion about whether the complexity of HA is best implemented within the DBMS, or as a service by the infrastructure below it.",
keywords = "Checkpointing, Fault tolerance, High availability, Performance modeling, Virtualization",
author = "Minhas, {Umar Farooq} and Shriram Rajagopalan and Brendan Cully and Ashraf Aboulnaga and Kenneth Salem and Andrew Warfield",
year = "2013",
month = "1",
day = "1",
doi = "10.1007/s00778-012-0294-6",
language = "English",
volume = "22",
pages = "29--45",
journal = "VLDB Journal",
issn = "1066-8888",
publisher = "Springer New York",
number = "1",

}

TY - JOUR

T1 - RemusDB

T2 - Transparent high availability for database systems

AU - Minhas, Umar Farooq

AU - Rajagopalan, Shriram

AU - Cully, Brendan

AU - Aboulnaga, Ashraf

AU - Salem, Kenneth

AU - Warfield, Andrew

PY - 2013/1/1

Y1 - 2013/1/1

N2 - In this paper, we present a technique for building a high-availability (HA) database management system (DBMS). The proposed technique can be applied to any DBMS with little or no customization, and with reasonable performance overhead. Our approach is based on Remus, a commodity HA solution implemented in the virtualization layer, that uses asynchronous virtual machine state replication to provide transparent HA and failover capabilities. We show that while Remus and similar systems can protect a DBMS, database workloads incur a performance overhead of up to 32 % as compared to an unprotected DBMS. We identify the sources of this overhead and develop optimizations that mitigate the problems. We present an experimental evaluation using two popular database systems and industry standard benchmarks showing that for certain workloads, our optimized approach provides fast failover (≤3 s of downtime) with low performance overhead when compared to an unprotected DBMS. Our approach provides a practical means for existing, deployed database systems to be made more reliable with a minimum of risk, cost, and effort. Furthermore, this paper invites new discussion about whether the complexity of HA is best implemented within the DBMS, or as a service by the infrastructure below it.

AB - In this paper, we present a technique for building a high-availability (HA) database management system (DBMS). The proposed technique can be applied to any DBMS with little or no customization, and with reasonable performance overhead. Our approach is based on Remus, a commodity HA solution implemented in the virtualization layer, that uses asynchronous virtual machine state replication to provide transparent HA and failover capabilities. We show that while Remus and similar systems can protect a DBMS, database workloads incur a performance overhead of up to 32 % as compared to an unprotected DBMS. We identify the sources of this overhead and develop optimizations that mitigate the problems. We present an experimental evaluation using two popular database systems and industry standard benchmarks showing that for certain workloads, our optimized approach provides fast failover (≤3 s of downtime) with low performance overhead when compared to an unprotected DBMS. Our approach provides a practical means for existing, deployed database systems to be made more reliable with a minimum of risk, cost, and effort. Furthermore, this paper invites new discussion about whether the complexity of HA is best implemented within the DBMS, or as a service by the infrastructure below it.

KW - Checkpointing

KW - Fault tolerance

KW - High availability

KW - Performance modeling

KW - Virtualization

UR - http://www.scopus.com/inward/record.url?scp=84872671992&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=84872671992&partnerID=8YFLogxK

U2 - 10.1007/s00778-012-0294-6

DO - 10.1007/s00778-012-0294-6

M3 - Article

VL - 22

SP - 29

EP - 45

JO - VLDB Journal

JF - VLDB Journal

SN - 1066-8888

IS - 1

ER -