Client-centric benchmarking of eventual consistency for cloud storage systems

Wojciech Golab, Muntasir Raihan Rahman, Alvin Auyoung, Kimberly Keeton, Indranil Gupta

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Eventually-consistent key-value storage systems sacrifice the ACID semantics of conventional databases to achieve superior latency and availability. However, this means that client applications, and hence end-users, can be exposed to stale data. The degree of staleness observed depends on various tuning knobs set by application developers (customers of key-value stores) and system administrators (providers of key-value stores). Both parties must be cognizant of how these tuning knobs affect the consistency observed by client applications in the interest of both providing the best end-user experience and maximizing revenues for storage providers. Quantifying consistency in a meaningful way is a critical step toward both understanding what clients actually observe, and supporting consistency-aware service level agreements (SLAs) in next generation storage systems. This paper proposes a novel consistency metric called Gamma that captures client-observed consistency. This metric provides quantitative answers to questions regarding observed consistency anomalies, such as how often they occur and how bad they are when they do occur. We argue that Gamma is more useful and accurate than existing metrics. We also apply Gamma to benchmark the popular Cassandra key-value store. Our experiments demonstrate that Gamma is sensitive to both the workload and client-level tuning knobs, and is preferable to existing techniques which focus on worst-case behavior.

Original languageEnglish (US)
Title of host publicationProceedings - International Conference on Distributed Computing Systems
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages493-502
Number of pages10
ISBN (Electronic)9781479951680
DOIs
StatePublished - Aug 29 2014
Event2014 IEEE 34th International Conference on Distributed Computing Systems, ICDCS 2014 - Madrid, Spain
Duration: Jun 30 2014Jul 3 2014

Publication series

NameProceedings - International Conference on Distributed Computing Systems

Other

Other2014 IEEE 34th International Conference on Distributed Computing Systems, ICDCS 2014
CountrySpain
CityMadrid
Period6/30/147/3/14

Fingerprint

Knobs
Benchmarking
Tuning
Semantics
Availability
Experiments

Keywords

  • benchmarking
  • distributed systems
  • eventual consistency
  • key-value storage
  • staleness

ASJC Scopus subject areas

  • Software
  • Hardware and Architecture
  • Computer Networks and Communications

Cite this

Golab, W., Rahman, M. R., Auyoung, A., Keeton, K., & Gupta, I. (2014). Client-centric benchmarking of eventual consistency for cloud storage systems. In Proceedings - International Conference on Distributed Computing Systems (pp. 493-502). [6888925] (Proceedings - International Conference on Distributed Computing Systems). Institute of Electrical and Electronics Engineers Inc.. https://doi.org/10.1109/ICDCS.2014.57

Client-centric benchmarking of eventual consistency for cloud storage systems. / Golab, Wojciech; Rahman, Muntasir Raihan; Auyoung, Alvin; Keeton, Kimberly; Gupta, Indranil.

Proceedings - International Conference on Distributed Computing Systems. Institute of Electrical and Electronics Engineers Inc., 2014. p. 493-502 6888925 (Proceedings - International Conference on Distributed Computing Systems).

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Golab, W, Rahman, MR, Auyoung, A, Keeton, K & Gupta, I 2014, Client-centric benchmarking of eventual consistency for cloud storage systems. in Proceedings - International Conference on Distributed Computing Systems., 6888925, Proceedings - International Conference on Distributed Computing Systems, Institute of Electrical and Electronics Engineers Inc., pp. 493-502, 2014 IEEE 34th International Conference on Distributed Computing Systems, ICDCS 2014, Madrid, Spain, 6/30/14. https://doi.org/10.1109/ICDCS.2014.57
Golab W, Rahman MR, Auyoung A, Keeton K, Gupta I. Client-centric benchmarking of eventual consistency for cloud storage systems. In Proceedings - International Conference on Distributed Computing Systems. Institute of Electrical and Electronics Engineers Inc. 2014. p. 493-502. 6888925. (Proceedings - International Conference on Distributed Computing Systems). https://doi.org/10.1109/ICDCS.2014.57
Golab, Wojciech ; Rahman, Muntasir Raihan ; Auyoung, Alvin ; Keeton, Kimberly ; Gupta, Indranil. / Client-centric benchmarking of eventual consistency for cloud storage systems. Proceedings - International Conference on Distributed Computing Systems. Institute of Electrical and Electronics Engineers Inc., 2014. pp. 493-502 (Proceedings - International Conference on Distributed Computing Systems).
@inproceedings{5d0f1aa1bccc4826b2f40f7ba8e7d216,
title = "Client-centric benchmarking of eventual consistency for cloud storage systems",
abstract = "Eventually-consistent key-value storage systems sacrifice the ACID semantics of conventional databases to achieve superior latency and availability. However, this means that client applications, and hence end-users, can be exposed to stale data. The degree of staleness observed depends on various tuning knobs set by application developers (customers of key-value stores) and system administrators (providers of key-value stores). Both parties must be cognizant of how these tuning knobs affect the consistency observed by client applications in the interest of both providing the best end-user experience and maximizing revenues for storage providers. Quantifying consistency in a meaningful way is a critical step toward both understanding what clients actually observe, and supporting consistency-aware service level agreements (SLAs) in next generation storage systems. This paper proposes a novel consistency metric called Gamma that captures client-observed consistency. This metric provides quantitative answers to questions regarding observed consistency anomalies, such as how often they occur and how bad they are when they do occur. We argue that Gamma is more useful and accurate than existing metrics. We also apply Gamma to benchmark the popular Cassandra key-value store. Our experiments demonstrate that Gamma is sensitive to both the workload and client-level tuning knobs, and is preferable to existing techniques which focus on worst-case behavior.",
keywords = "benchmarking, distributed systems, eventual consistency, key-value storage, staleness",
author = "Wojciech Golab and Rahman, {Muntasir Raihan} and Alvin Auyoung and Kimberly Keeton and Indranil Gupta",
year = "2014",
month = "8",
day = "29",
doi = "10.1109/ICDCS.2014.57",
language = "English (US)",
series = "Proceedings - International Conference on Distributed Computing Systems",
publisher = "Institute of Electrical and Electronics Engineers Inc.",
pages = "493--502",
booktitle = "Proceedings - International Conference on Distributed Computing Systems",
address = "United States",

}

TY - GEN

T1 - Client-centric benchmarking of eventual consistency for cloud storage systems

AU - Golab, Wojciech

AU - Rahman, Muntasir Raihan

AU - Auyoung, Alvin

AU - Keeton, Kimberly

AU - Gupta, Indranil

PY - 2014/8/29

Y1 - 2014/8/29

N2 - Eventually-consistent key-value storage systems sacrifice the ACID semantics of conventional databases to achieve superior latency and availability. However, this means that client applications, and hence end-users, can be exposed to stale data. The degree of staleness observed depends on various tuning knobs set by application developers (customers of key-value stores) and system administrators (providers of key-value stores). Both parties must be cognizant of how these tuning knobs affect the consistency observed by client applications in the interest of both providing the best end-user experience and maximizing revenues for storage providers. Quantifying consistency in a meaningful way is a critical step toward both understanding what clients actually observe, and supporting consistency-aware service level agreements (SLAs) in next generation storage systems. This paper proposes a novel consistency metric called Gamma that captures client-observed consistency. This metric provides quantitative answers to questions regarding observed consistency anomalies, such as how often they occur and how bad they are when they do occur. We argue that Gamma is more useful and accurate than existing metrics. We also apply Gamma to benchmark the popular Cassandra key-value store. Our experiments demonstrate that Gamma is sensitive to both the workload and client-level tuning knobs, and is preferable to existing techniques which focus on worst-case behavior.

AB - Eventually-consistent key-value storage systems sacrifice the ACID semantics of conventional databases to achieve superior latency and availability. However, this means that client applications, and hence end-users, can be exposed to stale data. The degree of staleness observed depends on various tuning knobs set by application developers (customers of key-value stores) and system administrators (providers of key-value stores). Both parties must be cognizant of how these tuning knobs affect the consistency observed by client applications in the interest of both providing the best end-user experience and maximizing revenues for storage providers. Quantifying consistency in a meaningful way is a critical step toward both understanding what clients actually observe, and supporting consistency-aware service level agreements (SLAs) in next generation storage systems. This paper proposes a novel consistency metric called Gamma that captures client-observed consistency. This metric provides quantitative answers to questions regarding observed consistency anomalies, such as how often they occur and how bad they are when they do occur. We argue that Gamma is more useful and accurate than existing metrics. We also apply Gamma to benchmark the popular Cassandra key-value store. Our experiments demonstrate that Gamma is sensitive to both the workload and client-level tuning knobs, and is preferable to existing techniques which focus on worst-case behavior.

KW - benchmarking

KW - distributed systems

KW - eventual consistency

KW - key-value storage

KW - staleness

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

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

U2 - 10.1109/ICDCS.2014.57

DO - 10.1109/ICDCS.2014.57

M3 - Conference contribution

AN - SCOPUS:84907720597

T3 - Proceedings - International Conference on Distributed Computing Systems

SP - 493

EP - 502

BT - Proceedings - International Conference on Distributed Computing Systems

PB - Institute of Electrical and Electronics Engineers Inc.

ER -