S-Store: a streaming NewSQL system for big velocity applications

First-generation streaming systems did not pay much attention to state management via ACID transactions (e.g., [3, 4]). S-Store is a data management system that combines OLTP transactions with stream processing. To create S-Store, we begin with H-Store, a main-memory transaction processing engine, a...

Full description

Bibliographic Details
Main Authors: Cetintemel, Ugur (Author), Tufte, Kristin (Author), Wang, Hao (Contributor), Zdonik, Stanley (Author), Du, Jiang (Author), Kraska, Tim (Author), Maier, David (Author), Meehan, John (Author), Pavlo, Andrew (Author), Stonebraker, Michael (Contributor), Sutherland, Erik (Author), Madden, Samuel R. (Contributor), Tatbul Bitim, Emine Nesime (Contributor)
Other Authors: Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory (Contributor), Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science (Contributor)
Format: Article
Language:English
Published: Association for Computing Machinery (ACM), 2016-01-19T01:48:04Z.
Subjects:
Online Access:Get fulltext
Description
Summary:First-generation streaming systems did not pay much attention to state management via ACID transactions (e.g., [3, 4]). S-Store is a data management system that combines OLTP transactions with stream processing. To create S-Store, we begin with H-Store, a main-memory transaction processing engine, and add primitives to support streaming. This includes triggers and transaction workflows to implement push-based processing, windows to provide a way to bound the computation, and tables with hidden state to implement scoping for proper isolation. This demo explores the benefits of this approach by showing how a naïve implementation of our benchmarks using only H-Store can yield incorrect results. We also show that by exploiting push-based semantics and our implementation of triggers, we can achieve significant improvement in transaction throughput. We demo two modern applications: (i) leaderboard maintenance for a version of "American Idol", and (ii) a city-scale bicycle rental scenario.