Abstract
We are witnessing dramatic growth in the variety and volume of interactive data intensive services, and also in the performance of computing hardware. Consequently, these are exciting times to design scalable high-performance software systems in order to enable productive development and deployment of these services.
Existing popular approaches to building these services either use an in-memory database system or an actor runtime. We observe that these approaches have complementary strengths and weaknesses. In this dissertation, we propose the integration of actor programming models in database systems. In doing so, we lay down a vision for a new class of systems called actor database systems.
To explore this vision, this dissertation crystallizes the notion of an actor database system by defining its feature set in light of current application and hardware trends. In order to explore the viability of the outlined vision, a new programming model named Reactors has been designed to enrich classic relational database programming models with logical actor programming constructs. To support the reactor programming model, a high-performance in-memory multi-core OLTP database system named REACTDB has been built.
Our experiments with multiple benchmarks demonstrate the flexibility of the programming model in empowering application developers to reason about and improve performance of their programs by leveraging parallelism in application logic under ACID guarantees. Our experiments also establish the scalability of the system and its efficient low-overhead design and implementation on modern hardware.
Existing popular approaches to building these services either use an in-memory database system or an actor runtime. We observe that these approaches have complementary strengths and weaknesses. In this dissertation, we propose the integration of actor programming models in database systems. In doing so, we lay down a vision for a new class of systems called actor database systems.
To explore this vision, this dissertation crystallizes the notion of an actor database system by defining its feature set in light of current application and hardware trends. In order to explore the viability of the outlined vision, a new programming model named Reactors has been designed to enrich classic relational database programming models with logical actor programming constructs. To support the reactor programming model, a high-performance in-memory multi-core OLTP database system named REACTDB has been built.
Our experiments with multiple benchmarks demonstrate the flexibility of the programming model in empowering application developers to reason about and improve performance of their programs by leveraging parallelism in application logic under ACID guarantees. Our experiments also establish the scalability of the system and its efficient low-overhead design and implementation on modern hardware.
Original language | English |
---|
Publisher | Department of Computer Science, Faculty of Science, University of Copenhagen |
---|---|
Publication status | Published - 2017 |