首先大数据存储和分析引擎Hadoop自2006年诞生。谈及Hadoop大家自然不会对 MapReduce感到陌生,它将计算分为两个阶段,分别为 Map 和 Reduce。MapReduce计算框架虽然借鉴了函数式编程和矢量编程的思想完成了分布式计算。但不得不承认MapReduce在矢量编程结构过于简单,在完成一些比较复杂的高阶计算(例如:机器学习线性回归)的时候,需要将多个MapReduce任务串联起来才能完成一个复杂的计算逻辑,因此在早期人们需要在编写完多个job任务之后还需要Job的调用流程