Delivery, consistency, and determinism: rethinking guarantees in distributed stream processing

14 Jul 2019  ·  Trofimov Artem, Kuralenok Igor E., Marshalkin Nikita, Novikov Boris ·

Consistency requirements for state-of-the-art stream processing systems are defined in terms of delivery guarantees. Exactly-once is the strongest one and the most desirable for end-user. However, there are several issues regarding this concept. Commonly used techniques that enforce exactly-once produce significant performance overhead. Besides, the notion of exactly-once is not formally defined and does not capture all properties that provide stream processing systems supporting this guarantee. In this paper, we introduce a formal framework that allows us to define streaming guarantees more regularly. We demonstrate that the properties of delivery, consistency, and determinism are tightly connected within distributed stream processing. We also show that having lightweight determinism, it is possible to provide exactly-once with almost no performance overhead. Experiments show that the proposed approach can significantly outperform alternative industrial solutions.

PDF Abstract
No code implementations yet. Submit your code now

Categories


Databases Distributed, Parallel, and Cluster Computing

Datasets


  Add Datasets introduced or used in this paper