3.2.1 生成策略 在流式计算的世界里,时间不是一条笔直向前的射线,而是一张被数据洪流不断冲刷、褶皱、拉伸甚至局部倒置的弹性织物。事件发生的时间(event time)与系统处理它的时间(processing time)之间,永远横亘着网络延迟、乱序抵达、重试重发、批处理缓冲等现实鸿沟。当我们在 Flink、Spark Structured Streaming 或 Kafka Streams 中宣称“基于事件时间做窗口聚合”时,我们真正依赖的,并非某个神秘的时间服务器,而是一个精巧、务实、可配置、可调试的水位线(Watermark)生成策略——它不是时间本身,而是系统对“时间已推进到何处”的有依据的乐观估计。