流式MapReduce实现Sector/Sphere | 张恒镭的博客

流式MapReduce实现Sector/Sphere

时间:13-12-22 栏目:MapReduce 作者: 评论:0 点击: 2,716 次

Sector/sphere是2006年由伊利诺大学的NCDM实验室提出并研发的流式MapReduce实现(传统MapReduce实现见我的博文:传统MapReduce实现),采用较为高效的C++语言实现。Sector/sphere由分布式文件系统Sector和并行计算框架sphere组成,一些测试结果表明:Sector/sphere比Hadoop在计算效率上高效得多(见参考资料(1))。

1、分布式文件系统Sector

上图展示了Sector系统的总架构,主要由三部分组成:security server,master和slave。 Security server主要用于存储用户的用户名,密码,文件访问权限等信息,同时也维护了授权的slave的IP列表,这样可以防止未经授权的slave连入集群。Master 维护了所有文件的元数据信息,监控各个slave节点的运行状态并且对用户提出的请求作出相应(同Hadoop的namenode类似)。Master可以直接与security server进行通信,从而验证slave,client和user的身份。Slave用于存储实际的文件,且一般运行在一个或多个数据中心中(同Hadoop的datanode类似)。

数据在Sector上以文件为单位进行存储(Hadoop是为block为单位),用户可以在任何节点上下载某个文件。不过,这样就需要用户将大的文件分割成一个一个小文件,供每个task处理。

Sector提供了安全机制,所有用户信息(账号)被保存到一个security server上,当有用户需要访问某个文件时,master要询问security server,由它检查该用户是否有权限;同样,当有slave想要接入集群时,也需经security server的许可。

Sector采用自己研发的UDT协议进行数据传输,在广域网中,该协议传输效率比HTTP高得多。

2、并行计算框架Sphere

先解释几个概念:

SPE:Sphere Proccessing Engine, SPE数据处理逻辑单位,可以处理来自一个数据段,一组数据或者整个文件。

stream:在sphere中,stream是一个数据集或者部分数据集的抽象,每一个stream被一个SPE处理。

Sphere计算框架有几个特点:

(1)       数据的处理过程借鉴了GPU模型,采用流式处理方式,即每个SPE产生的结果可以shuffle给另一个SPE进行处理,该SPE再传给下一个SPE,…,这样一直下去。当只有两个阶段时,便是MapReduce计算,正是从这个角度看,Sphere是MapReduce的一个扩展。

(2)       Master把尽可能多的控制权交给client,自己只负责非常少的工作,从而减轻自己的压力。当用户在client端提交一个作业时,master返回给client一个可用slave node列表,然后把作业的监控权和调度权交给了client,client负责这个slave node列表的使用方式(调度),并通过HEARTBEAT每隔一段时间与各个SPE通信,查看它的状态和task执行进度。

(3)       用户在sphere上开发应用程序时,可以自定义函数,这大大提高了分布式程序开发的自由度,而对于MapReduce框架,用户必须实现map()和reduce()函数,它们的接口都是提前规定好的。

3、,GFS/BigTable和Hadoop对比

总之,Sector/Sphere有以下几个创新之处:

(1)       提供安全机制。保密信息由一个专门的安全服务器保管。

(2)       采用自主研发的基于UDP的数据传输协议UDT,效率比http高很多

(3)       支持广域网,多个数据中心的架构

(4)       支持多阶段流式处理(MapReduce只是两个阶段)

缺点:

不够成熟,用户很少(基本没有),Map阶段有容错功能,reduce阶段没有,若reduce task失败,则整个job失败。

4、参考资料

(1)Sector/sphere官方网站:http://sector.sourceforge.net/

(2)论坛:http://sourceforge.net/projects/sector/forums

(3)Sector/sphere论文:http://www.cca08.org/papers/gu-grossman-ahm-08-1.pdf

(4)UDT官方网站:http://udt.sourceforge.net/

声明: 本文由( )原创编译,转载请保留链接: 流式MapReduce实现Sector/Sphere

流式MapReduce实现Sector/Sphere:等您坐沙发呢!

发表评论




------====== 本站公告 ======------
欢迎关注我的博客。

其他