Lightweight Asynchronous Snapshots for Distributed Dataflows
2015 (English)Report (Other academic)
Distributed stateful stream processing enables the deployment and execution of large scale continuous computations in the cloud, targeting both low latency and high throughput. One of the most fundamental challenges of this paradigm is providing processing guarantees under potential failures. Existing approaches rely on periodic global state snapshots that can be used for failure recovery. Those approaches suffer from two main drawbacks. First, they often stall the overall computation which impacts ingestion. Second, they eagerly persist all records in transit along with the operation states which results in larger snapshots than required. In this work we propose Asynchronous Barrier Snapshotting (ABS), a lightweight algorithm suited for modern dataflow execution engines that minimises space requirements. ABS persists only operator states on acyclic execution topologies while keeping a minimal record log on cyclic dataflows. We implemented ABS on Apache Flink, a distributed analytics engine that supports stateful stream processing. Our evaluation shows that our algorithm does not have a heavy impact on the execution, maintaining linear scalability and performing well with frequent snapshots.
Place, publisher, year, edition, pages
2015. , 8 p.
, TRITA-ICT, 2015:08
fault tolerance, distributed computing, stream processing, dataflow, cloud computing, state management
Research subject Information and Communication Technology; Computer Science
IdentifiersURN: urn:nbn:se:kth:diva-170185ISBN: 978-91-7595-651-0OAI: oai:DiVA.org:kth-170185DiVA: diva2:827567
QC 201506302015-06-282015-06-282015-06-30Bibliographically approved