How Stream Processing Works: From Stateless Functions to Stateful Windows | Dark Hacker News