知识卡片
批处理追赶线
内容
批处理工作流必须让每小时新增数据的动态处理时间小于一小时,否则系统会越跑越落后。优化时要关注单位数据处理成本,而不只是单次任务的表面耗时。
参考来源
- 位置:《大数据系统构建:可扩展实时数据系统构建原理与最佳实践》第18章《深入Lambda架构》"18.2.2 测量和优化批处理层的资源使用"一节(源文件:_epub-src/OEBPS/Text/127.xhtml)
- 结论依据:原文用T=O+P×H方程推导稳定运行时间,明确"你可能想知道如果动态处理时间P,大于或等于1将会发生什么。在这种情况下,工作流的每次迭代将比之前的迭代有更多的数据,因此批处理层将永远地被甩在后面。所以保持P小于1是非常重要的",并用集群规模翻倍、失败率上升两个真实案例说明P值而非表面耗时才是优化关键。
- 原始内容:如你所见,工作流的稳定运行时间与工作流的开销总量是成线性比例关系的……你可能想知道如果动态处理时间P,大于或等于1将会发生什么。在这种情况下,工作流的每次迭代将比之前的迭代有更多的数据,因此批处理层将永远地被甩在后面。所以保持P小于1是非常重要的。