一种基于集群的通用并行计算框架设计
2016-02-13王宁
现代计算机 2016年35期
王宁
(四川大学计算机学院,成都610065)
一种基于集群的通用并行计算框架设计
王宁
(四川大学计算机学院,成都610065)
近年来各领域应用的数据量和计算量需求都大幅增加,传统单个计算设备往往无法胜任如此规模的计算量,因此越来越多的领域开始尝试使用并行计算技术,分布式并行计算是进行并行计算的一种主要方式,常见的框架为基于MapReduce的Hadoop。提出一种基于集群的通用并行计算框架,参考“管道过滤器”模式,对三个模块“任务划分”、“控制器节点”和“计算节点”都进行详细设计描述,相对于Hadoop,对有向无环图型任务由更好支持,并且支持迭代型任务,另外增加缓存机制,减少系统耗时,一定程度支持实时性应用。
并行计算;集群;系统框架;有向无环图;缓存
0 引言
并行计算[1](Parallel Computing)是指同时使用多种计算资源解决计算问题的过程,是提高计算机系统计算速度和处理能力的一种有效手段。它的基本思想是用多个处理器来协同求解同一问题,即将被求解的问题分解成若干个部分,各部分均由一个独立的处理机来并行计算。并行计算系统既可以是专门设计的、含有多个处理器的超级计算机,也可以是以某种方式互连的若干台的独立计算机构成的集群。通过并行计算集群完成数据的处理。
目前应用较为广泛的并行计算模型为Jeffrey Dean等提出的MapReduce[2],MapReduce的基本思想是将所有任务的执行看做两个操作,分别是Map(映射)和Reduce(化简),首先,Map会先对由很多独立元素组成的逻辑列表中的每一个元素进行指定的操作,且原始列表不会被更改,会创建多个新的列表来保存Map的处理结果。……
登录APP查看全文
