Paper Moon: A Comparison of Stateful Functions and Pulsar Functions

Flink Stateful Functions and Pulsar Functions aim to solve similar problems, including providing an API for stateful computation and managing state within an event streams world. Stateful Functions and Pulsar Functions take different approaches to this problem, including where they draw the boundary for what their APIs should do. In building a distributed stream processing platform on Pulsar with the need for stateful computation attached, I explored the question of which of these approaches would be best. In this talk, I walk through the tradeoffs between the two APIs, their philosophical underpinnings, and why we ultimately landed on using Stateful Functions for our streaming platform. Attendees can expect to learn about Stateful Functions and Pulsar Functions, walk through some code samples and come away with an understanding of problems Stateful Functions are designed to handle well. 0:00 Intro 2:33 Introduction/Philosophy 7:33 Runtime 10:51 Orchestration 13:40 Scaling 16:43 State Management 24:30 Ecosystem 26:30 Key Differences 30:05 Examples 34:26 Conclusions