概念定义
小写入的单次操作开销占主导:一个网络往返、一次提交、一次 fsync。把 N 项并成一次操作,这些成本除以 N;代价简单直接——每项都要等窗口关闭。
工作机制
收集器积累条目,按大小阈值、定时器到期或显式请求冲刷。Kafka 生产者按分区配 linger 时间批量;数据库驱动把插入并成多行语句;流引擎每 N 毫秒关闭处理窗口。失败处理分三路:整批重试、逐项隔离失败、或整组进死信。
使用场景
高速写入路径——日志、指标、遥测摄入——以及单事件开销超过新鲜度价值的流分析。窗口按延迟预算选:亚秒窗口的行为已接近纯流式。
常见误区
低流量流配固定长窗等于每项都为近乎空的批付全额窗口延迟——带时间上限的大小触发更合理。失败放大是隐患:一个坏项反复阻塞整批,必须抽离并死信。批量上界要由下游限制——语句大小、载荷上限——来定;批量也不消除背压需求,批间队列无背压就会顶破内存。