학술논문

Consistent retrospective snapshots in distributed event-sourced systems
Document Type
Conference
Source
2017 International Conference on Networked Systems (NetSys) Networked Systems (NetSys), 2017 International Conference on. :1-8 Mar, 2017
Subject
Communication, Networking and Broadcast Technologies
Computing and Processing
Clocks
Computer architecture
History
Protocols
Computational modeling
Debugging
Reliability
Language
Abstract
An increasing number of distributed, event-based systems adopt an architectural style called event sourcing, in which entities keep their entire history in an event log. Event sourcing enables data lineage and allows entities to rebuild any previous state. Restoring previous application states is a straight-forward task in event-sourced systems with a global and totally ordered event log. However, the extraction of causally consistent snapshots from distributed, individual event logs is rendered non-trivial due to causal relationships between communicating entities. High dynamicity of entities increases the complexity of such reconstructions even more. We present approaches for retrospective and global state extraction of event-sourced applications based on distributed event logs. We provide an overview on historical approaches towards distributed debugging and breakpointing, which are closely related to event log-based state reconstruction. We then introduce and evaluate our approach for non-local state extraction from distributed event logs, which is specifically adapted for dynamic and asynchronous event-sourced systems.