English

UStore: A Distributed Storage With Rich Semantics

Databases 2017-02-10 v1 Distributed, Parallel, and Cluster Computing

Abstract

Today's storage systems expose abstractions which are either too low-level (e.g., key-value store, raw-block store) that they require developers to re-invent the wheels, or too high-level (e.g., relational databases, Git) that they lack generality to support many classes of applications. In this work, we propose and implement a general distributed data storage system, called UStore, which has rich semantics. UStore delivers three key properties, namely immutability, sharing and security, which unify and add values to many classes of today's applications, and which also open the door for new applications. By keeping the core properties within the storage, UStore helps reduce application development efforts while offering high performance at hand. The storage embraces current hardware trends as key enablers. It is built around a data-structure similar to that of Git, a popular source code versioning system, but it also synthesizes many designs from distributed systems and databases. Our current implementation of UStore has better performance than general in-memory key-value storage systems, especially for version scan operations. We port and evaluate four applications on top of UStore: a Git-like application, a collaborative data science application, a transaction management application, and a blockchain application. We demonstrate that UStore enables faster development and the UStore-backed applications can have better performance than the existing implementations.

Keywords

Cite

@article{arxiv.1702.02799,
  title  = {UStore: A Distributed Storage With Rich Semantics},
  author = {Anh Dinh and Ji Wang and Sheng Wang and Gang Chen and Wei-Ngan Chin and Qian Lin and Beng Chin Ooi and Pingcheng Ruan and Kian-Lee Tan and Zhongle Xie and Hao Zhang and Meihui Zhang},
  journal= {arXiv preprint arXiv:1702.02799},
  year   = {2017}
}

Comments

21 pages

R2 v1 2026-06-22T18:13:46.952Z