大致说一下目前在工业界(学术界)里比较流行的几种分布式计算框架(平台):
1:MapReduce(MR),最为
general和流行的一个分布式计算框架,其开源实现Hadoop已经得到了极为广泛的运用(Facebook,
Yahoo!等等),同时在Hadoop基础上发展起来的项目也有很多(Hive是发展最好的),另外像
Cloudera,Hortonworks,MapR这样的在Hadoop基础上发展起来的公司也有很多。
2:Pregel,和MR一样也是Google发明的,其优势是在完成一些适合于抽象为图算法的应用的计算时可以更为高效,Giraph可以算是一个比较好的发展中的开源实现。
3:Storm,Twitter的项目,号称Hadoop的实时计算平台,对于一些需要real time performance的job可以拥有比MR更高的效率。
4:Spark,UC Berkeley AMPLab的项目,其很好地利用了JVM中的heap,对于中间计算结果可以有更好的缓存支持,因此其在performance上要比MR高出很多。Shark是其基础上类似于Hive的一个项目。
5:Dryad和Scope,
都是MR(Microsoft Research)的项目,从paper上来看Dryad是一个更为general
purpose的计算框架,在vertices里实现计算,通过channels实现communication,两者组成一个graph
workflow;而Scope有点类似于Hive和Shark,都是将某种类似于SQL的script
language编译成可以在底层分布式平台上计算的job。但是这两个项目因为不开源,所以资料不多,也没有开源项目那样的community。
当然还有其他很多,比如Google的Dremel,Yale的HadoopDB(现在已经商业化叫做Hadapt)。