Event-time Aggregation and Watermarking in Apache Spark’s Structured Streaming - The Databricks Blog