



除了本章介绍的分布式处理框架MapReduce、Spark和Dryad,Yahoo!还提出了Map-Reduce merge [60] 框架,通过在reduce阶段后面加入merge阶段,提高了MapReduce对二维表的关系代数处理能力。UC Berkeley提出了MapReduce Online [61] ,改进了从map阶段到reduce阶段的数据流动方式,使得mapper输出的数据可以更快地流入reducer中,提高MapReduce对数据的在线处理能力。UCI的Bu等提出了HaLoop [62] ,提高了MapReduce迭代型任务的执行性能。NYU提出的面向内存计算应用的分布式计算编程模型Piccolo [63] 可以提供Key-Value表的操作接口。与MapReduce相比,Piccolo能够轻松地访问中间状态及中间数据。Spark Structured Streaming [64] 和Apache Flink统一了批式处理与流式处理的执行流程。