# Reactors: A Case for Predictable, Virtualized Actor Database Systems

**Authors:** Vivek Shah, Marcos Antonio Vaz Salles

arXiv: 1701.05397 · 2018-05-14

## TL;DR

Reactors introduce a relational actor programming model for in-memory OLTP databases, enabling flexible, scalable, and low-latency transaction processing with guaranteed correctness and improved resource utilization.

## Contribution

This paper presents ReactDB, a novel system that implements reactors, allowing flexible virtualization of database architectures and supporting intra-transaction parallelism.

## Key findings

- ReactDB achieves low latency and high scalability in OLTP benchmarks.
- Reactors guarantee serializability while enabling intra-transaction parallelism.
- Flexible virtualization supports various deployment architectures without changing application code.

## Abstract

The requirements for OLTP database systems are becoming ever more demanding. Domains such as finance and computer games increasingly mandate that developers be able to encode complex application logic and control transaction latencies in in-memory databases. At the same time, infrastructure engineers in these domains need to experiment with and deploy OLTP database architectures that ensure application scalability and maximize resource utilization in modern machines. In this paper, we propose a relational actor programming model for in-memory databases as a novel, holistic approach towards fulfilling these challenging requirements. Conceptually, relational actors, or reactors for short, are application-defined, isolated logical actors that encapsulate relations and process function calls asynchronously. Reactors ease reasoning about correctness by guaranteeing serializability of application-level function calls. In contrast to classic transactional models, however, reactors allow developers to take advantage of intra-transaction parallelism and state encapsulation in their applications to reduce latency and improve locality. Moreover, reactors enable a new degree of flexibility in database deployment. We present ReactDB, a system design exposing reactors that allows for flexible virtualization of database architecture between the extremes of shared-nothing and shared-everything without changes to application code. Our experiments illustrate latency control, low overhead, and asynchronicity trade-offs with ReactDB in OLTP benchmarks.

## Full text

_Full body text omitted from this summary view._ Fetch the complete paper as Markdown: https://tomesphere.com/paper/1701.05397/full.md

## Figures

26 figures with captions in the complete paper: https://tomesphere.com/paper/1701.05397/full.md

## References

61 references — full list in the complete paper: https://tomesphere.com/paper/1701.05397/full.md

---
Source: https://tomesphere.com/paper/1701.05397