Publication | Closed Access
G-Store
232
Citations
23
References
2010
Year
Unknown Venue
Cluster ComputingKey Group AbstractionKey-value StoresEngineeringDatabase SupportCloud ComputingManagementDistributed Data StoreData PrivacyKeyvalue DatabaseData IntegrationDistributed Data ManagementCloud Data ManagementData ManagementBlockchainData SecurityBig Data
Cloud computing has become the preferred platform for scalable web applications, but existing key‑value stores only provide atomic access at the single‑key level, which is inadequate for collaborative applications that require consistent multi‑key access. The authors introduce the Key Group abstraction to enable on‑demand transactional access to related sets of keys. They implement this abstraction in G‑Store by using a Key Grouping protocol that collocates control for keys in a group, allowing efficient, scalable, and transactional multi‑key operations on top of a standard key‑value store. Experiments on a commodity cluster demonstrate that G‑Store retains the desirable properties of key‑value stores while delivering multi‑key access with minimal overhead.
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.
| Year | Citations | |
|---|---|---|
Page 1
Page 1