G-Store

A scalable data store for transactional multi key access in the cloud

Sudipto Das, Divyakant Agrawal, Amr El Abbadi

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

119 Citations (Scopus)

Abstract

Cloud computing has emerged as a preferred platform for deploying scalable web-applications. With the growing scale of these applications and the data associated with them, scalable data management systems form a crucial part of the cloud infrastructure. Key-Value stores - such as Bigtable, PNUTS, Dynamo, and their open source analogues- have been the preferred data stores for applications in the cloud. In these systems, data is represented as Key-Value pairs, and atomic access is provided only at the granularity of single keys. While these properties work well for current applications, they are insufficient for the next generation web applications - such as online gaming, social networks, collaborative editing, and many more - which emphasize collaboration. Since collaboration by definition requires consistent access to groups of keys, scalable and consistent multi key access is critical for such applications. We propose the Key Group abstraction that defines a relationship between a group of keys and is the granule for on-demand transactional access. This abstraction allows the Key Grouping protocol to collocate control for the keys in the group to allow efficient access to the group of keys. Using the Key Grouping protocol, we design and implement G-Store which uses a key-value store as an underlying substrate to provide efficient, scalable, and transactional multi key access. Our implementation using a standard key-value store and experiments using a cluster of commodity machines show that G-Store preserves the desired properties of key-value stores, while providing multi key access functionality at a very low overhead.

Original languageEnglish
Title of host publicationProceedings of the 1st ACM Symposium on Cloud Computing, SoCC '10
Pages163-174
Number of pages12
DOIs
Publication statusPublished - 30 Jul 2010
Externally publishedYes
Event1st ACM Symposium on Cloud Computing, SoCC '10 - Indianapolis, IN, United States
Duration: 6 Jun 201011 Jun 2010

Other

Other1st ACM Symposium on Cloud Computing, SoCC '10
CountryUnited States
CityIndianapolis, IN
Period6/6/1011/6/10

Fingerprint

Cloud computing
Information management
Substrates
Experiments

Keywords

  • Cloud computing
  • Consistency
  • Key-Value stores
  • Multi key access

ASJC Scopus subject areas

  • Computational Theory and Mathematics
  • Computer Science Applications

Cite this

Das, S., Agrawal, D., & Abbadi, A. E. (2010). G-Store: A scalable data store for transactional multi key access in the cloud. In Proceedings of the 1st ACM Symposium on Cloud Computing, SoCC '10 (pp. 163-174) https://doi.org/10.1145/1807128.1807157

G-Store : A scalable data store for transactional multi key access in the cloud. / Das, Sudipto; Agrawal, Divyakant; Abbadi, Amr El.

Proceedings of the 1st ACM Symposium on Cloud Computing, SoCC '10. 2010. p. 163-174.

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

Das, S, Agrawal, D & Abbadi, AE 2010, G-Store: A scalable data store for transactional multi key access in the cloud. in Proceedings of the 1st ACM Symposium on Cloud Computing, SoCC '10. pp. 163-174, 1st ACM Symposium on Cloud Computing, SoCC '10, Indianapolis, IN, United States, 6/6/10. https://doi.org/10.1145/1807128.1807157
Das S, Agrawal D, Abbadi AE. G-Store: A scalable data store for transactional multi key access in the cloud. In Proceedings of the 1st ACM Symposium on Cloud Computing, SoCC '10. 2010. p. 163-174 https://doi.org/10.1145/1807128.1807157
Das, Sudipto ; Agrawal, Divyakant ; Abbadi, Amr El. / G-Store : A scalable data store for transactional multi key access in the cloud. Proceedings of the 1st ACM Symposium on Cloud Computing, SoCC '10. 2010. pp. 163-174
@inproceedings{622f8a73f2f3457592bc2f8666509a62,
title = "G-Store: A scalable data store for transactional multi key access in the cloud",
abstract = "Cloud computing has emerged as a preferred platform for deploying scalable web-applications. With the growing scale of these applications and the data associated with them, scalable data management systems form a crucial part of the cloud infrastructure. Key-Value stores - such as Bigtable, PNUTS, Dynamo, and their open source analogues- have been the preferred data stores for applications in the cloud. In these systems, data is represented as Key-Value pairs, and atomic access is provided only at the granularity of single keys. While these properties work well for current applications, they are insufficient for the next generation web applications - such as online gaming, social networks, collaborative editing, and many more - which emphasize collaboration. Since collaboration by definition requires consistent access to groups of keys, scalable and consistent multi key access is critical for such applications. We propose the Key Group abstraction that defines a relationship between a group of keys and is the granule for on-demand transactional access. This abstraction allows the Key Grouping protocol to collocate control for the keys in the group to allow efficient access to the group of keys. Using the Key Grouping protocol, we design and implement G-Store which uses a key-value store as an underlying substrate to provide efficient, scalable, and transactional multi key access. Our implementation using a standard key-value store and experiments using a cluster of commodity machines show that G-Store preserves the desired properties of key-value stores, while providing multi key access functionality at a very low overhead.",
keywords = "Cloud computing, Consistency, Key-Value stores, Multi key access",
author = "Sudipto Das and Divyakant Agrawal and Abbadi, {Amr El}",
year = "2010",
month = "7",
day = "30",
doi = "10.1145/1807128.1807157",
language = "English",
isbn = "9781450300346",
pages = "163--174",
booktitle = "Proceedings of the 1st ACM Symposium on Cloud Computing, SoCC '10",

}

TY - GEN

T1 - G-Store

T2 - A scalable data store for transactional multi key access in the cloud

AU - Das, Sudipto

AU - Agrawal, Divyakant

AU - Abbadi, Amr El

PY - 2010/7/30

Y1 - 2010/7/30

N2 - Cloud computing has emerged as a preferred platform for deploying scalable web-applications. With the growing scale of these applications and the data associated with them, scalable data management systems form a crucial part of the cloud infrastructure. Key-Value stores - such as Bigtable, PNUTS, Dynamo, and their open source analogues- have been the preferred data stores for applications in the cloud. In these systems, data is represented as Key-Value pairs, and atomic access is provided only at the granularity of single keys. While these properties work well for current applications, they are insufficient for the next generation web applications - such as online gaming, social networks, collaborative editing, and many more - which emphasize collaboration. Since collaboration by definition requires consistent access to groups of keys, scalable and consistent multi key access is critical for such applications. We propose the Key Group abstraction that defines a relationship between a group of keys and is the granule for on-demand transactional access. This abstraction allows the Key Grouping protocol to collocate control for the keys in the group to allow efficient access to the group of keys. Using the Key Grouping protocol, we design and implement G-Store which uses a key-value store as an underlying substrate to provide efficient, scalable, and transactional multi key access. Our implementation using a standard key-value store and experiments using a cluster of commodity machines show that G-Store preserves the desired properties of key-value stores, while providing multi key access functionality at a very low overhead.

AB - Cloud computing has emerged as a preferred platform for deploying scalable web-applications. With the growing scale of these applications and the data associated with them, scalable data management systems form a crucial part of the cloud infrastructure. Key-Value stores - such as Bigtable, PNUTS, Dynamo, and their open source analogues- have been the preferred data stores for applications in the cloud. In these systems, data is represented as Key-Value pairs, and atomic access is provided only at the granularity of single keys. While these properties work well for current applications, they are insufficient for the next generation web applications - such as online gaming, social networks, collaborative editing, and many more - which emphasize collaboration. Since collaboration by definition requires consistent access to groups of keys, scalable and consistent multi key access is critical for such applications. We propose the Key Group abstraction that defines a relationship between a group of keys and is the granule for on-demand transactional access. This abstraction allows the Key Grouping protocol to collocate control for the keys in the group to allow efficient access to the group of keys. Using the Key Grouping protocol, we design and implement G-Store which uses a key-value store as an underlying substrate to provide efficient, scalable, and transactional multi key access. Our implementation using a standard key-value store and experiments using a cluster of commodity machines show that G-Store preserves the desired properties of key-value stores, while providing multi key access functionality at a very low overhead.

KW - Cloud computing

KW - Consistency

KW - Key-Value stores

KW - Multi key access

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

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

U2 - 10.1145/1807128.1807157

DO - 10.1145/1807128.1807157

M3 - Conference contribution

SN - 9781450300346

SP - 163

EP - 174

BT - Proceedings of the 1st ACM Symposium on Cloud Computing, SoCC '10

ER -