@zhengyuhong
2015-04-19T02:02:38.000000Z
字数 440
阅读 973
hadoop spark mpi
Hadoop适合用于数据密集型但对时间要求不高的场景(长时间的大规模离线计算,如log分析),而机器学习里面常常面临迭代问题,Hadoop在这种迭代算法面前十分力不从心(主要受到网关带宽和磁盘IO瓶颈限制),于是有了Spark这种RDD全内存式的计算模型。Spark适合于机器学习的迭代计算场景(当然它底层也是可以配合Hadoop的HDFS的),计算效率较高,但是是以吃内存为代价的。
Spark相较于一般Mapreduce最大的优势在于数据的迭代操作。其实机理很简单,就是把要处理多遍的数据始终放在内存当中,减少IO,最大化效率,在实验中,效率的提升最高可达10 - 20倍。这一点在很多机器学习的算法当中非常有用,比如Page Rank, Logistic regression 等等。当然,这是以牺牲内存占用为代价的,如果你要处理的数据集过大,根本放不进内存,那spark就没有用武之地了。
基于内存的集群计算容错抽象
