全球旧事资料 分类
州大学伯克利分校的AMPLab开发,并于2010年成为Apache基金会的开源项目之一。Spark提供了一个全面、统一的框架,用于管理各种有不同性质的数据集和数据源(批量数据或实时的流数据)的大数据处理的需求。速度上,相比先前的HadoopMapReduce框架,Spark可以将集群中的应用在内存中的运行速度提升100倍,可以将应用在硬盘上的运行速度提高10倍。易用性上,Spark提供了Scala、Java、Pytho
、R四种语言的接口,并有80种以上的较高抽象操作,可以直接使用Scala、Pytho
、R语言的命令行进行调用。Spark还提供了一系列库,包括SparkSQL用于数据查询、MLib用于机器学习、GraphX图标数据处理、SparkStreami
g流式数据处理。运行环境上,Spark可以运行于Mesos、HadoopYARN、独立集群,并可以从HBase、HDFS、Cassa
dra、Hive等库中获取数据。
5Mesos
ApacheMesos是一个集群管理器,将CPU、内存、磁盘存储以及其他的计算资源从物理主机或虚拟主机中抽象出来进行管理,提供了容错机制和弹性分布式系统机制,使Mesos易于使用并且高效运行。Mesos使用类似Li
ux内核的原则进行构建,但不在同一个抽象层次。Mesos的内核运行在每一台主机上,并向运行于其上的应用(如Spark、Hadoop、Kafka、Storm、MPI等)提供整个集群资源管理和调度的API。Mesos具有这些特点:可以弹性管理10000个结点,具有良好的容错性,支持Docker容器,各个任务之间相互独立,多种资源(CPU、GPU、内存、端口等)的调度管理,提供Java、C、Pytho
接口用于编写新的应用框架,提供了webUI可以在浏览器上查看任务运行状态与集群状态,相对YARN可以对资源进行更细粒度的管理。Mesosphere公司为Mesos库提供维护与技术支持,并在Mesos的基础上进行开发,简化了大数据
f开源库的部署。Mesos被Mesosphere公司定位为大数据集群的操作系统,在部署好的Mesos集群上很容易进行其他开源库的部署,现在已经实现了16分钟搭建一个Spark集群,相对于以往的集群搭建极大的减少了时间与技术成本。
三、可选方案
1单独使用Spark或MPI
在计算过程单独使用CPU集群可以处理时,Spark和MPI都已经在实践中得到了很好的应用,在环境部署和程序编写、运行上都已经有了很多的参考资料。对于矩阵运算,Spark可以采用MLib机器学习库中的分布式矩阵运算程序进行计算,MPI可以采用I
tel开发的MKL(MathKer
elLibrary)进行计算,MKL库中对于分布式矩阵运算、共享内存的多CPU矩阵运算、单CPU的矩阵运算都能高效率的实现。但对于计算密集型的程序,当前CPU的计算能力远低于GPU,可能r
好听全球资料 返回顶部