基于作业运行特征的大数据处理系统性能优化研究
2020-10-20肖坚
肖坚
【摘要】随着信息技术的发展,大数据处理系统得到了较快的发展,其逐渐拓展为交互式查询、流计算及复杂迭代计算等实时性的计算场景,提升了数据的处理效率和质量。本文从分布式硬件计算平台资源动态性、分布式图数据划分与通信开销、负载均衡程度的关系特征等方面对基于作业运行特征的大数据处理系统性能优化作出全面系统的分析阐述。
【关键词】作业运行特征 大数据处理系统 性能优化
当前的分布式计算硬件计算资源分散、高度动态化,针对计算平台的任务调度机制往往无法实现作业执行时的资源利用率;软件处理引擎方面,当前的大数据处理系统所引进的抽象隔离、自动内存管理一定程度上增加了开销,不利于系统长期稳定发展;应用支撑方面,当前大数据应用因为稀疏特性导致数据处理效率不高,已经无法满足现代化数据处理需求。因此,开展基于作業运行特征的大数据处理系统性能优化十分必要和急迫。
一、分布式硬件计算平台资源动态性
分布式硬件计算平台资源动态性的研究主要目的在于构建大数据处理任务调度机制。目前来看,可以提供海量与可扩展的计算资源主要有两种,一种是通过网络连接至个人电脑所组成的桌面网格计算系统,另一种由云计算运行商所提供的廉价瞬时计算资源。桌面网格计算系统能够通过互联网,构建一种集成化和无缝隙的计算环境,在这种环境下计算资源和信息资源均可以全面共享。廉价瞬时计算资源属于瞬时虚拟服务器,多分布于云平台的地理分布数据中心,其弊端在于如果市场价格高出用户能承受、能接受的范围,则该计算资源会被平台所收回。
在大数据处理任务调度机制设计中,本文基于BitDew中间件实现计算框架,所应用的BitDew-MapReduce计算框架与传统桌面设计不同,所遵循的方法是数据为中心,经典的主从式分布计算架构可以确保计算节点有效从主控节点上获取计算任务,另外,还可以实现数据的调度与分发。BitDew系统包括包含主/从管理进程的运行时系统、MapReduce编程模型实现机WordCount应用程序(用于基准测试)。为了避免计算应用程序处理相同的数据导致重复数据传输这种情况的出现,本文所设计的BitDew-MapReduce特别定义了新的数据属性类型,即MUTAFF、DISTRIB。其中的MUTAFF作用在于定义数据的相互依赖关系,可以将其看作为AFFINITY的双向版本;DISTRIB是数据集属性,借助调度器可以保证同一个数据集在每一个计算节点的数据不超过用户设置量。设计工作完成后,要想实现良好的运行时系统,特别对主控节点和计算节点作了调整优化,BitDew-MapReduce不依赖计算节点上缓存多副本来保证数据的可用性,只需要输入DataCollection中的所有数据属性便可以实现作业启动操作,作业执行到末端后,调度服务器可以根据map任务令牌上的属性值显示剩余工作量,并将其调度到Worker上。计算节点使用ActiveData API周期性从数据调度服务获取数据,而后依据数据类型决定将要执行的任务。
二、分布式图数据划分与通信开销、负载均衡程度的关系特征
分布式图数据划分与通信开销、负载均衡程度的关系特征重点解决的问题是两级分布式图划分机制。大数据处理系统的性能指标之一是可扩展性,这一性能尤其是在大规模数据中心环境的数据处理应用中尤为常见。一般来说,大数据可扩展性的分布式框架您必须具备两大特性,第一是必须可以根据节点硬件性能,对各个节点的计算负载加以动态平衡;第二是可以在合理时间对已经失效的作业执行进度加以恢复。本文所提出的动态负载均衡和容错机制基于两级图划分方法,更为重要的是借助开源系统PowerGraph可以实现高扩展的分布式图并行处理系统X-Graph。动态负载均衡机制的作用在于可以通过决定任务的重调度目标,而最终实现降低迁移后的消息传送开销。差异性复制容错机制最大的优势在于可以对已经丢失的数据分片进行重新计算,能够最大限度缩短因节点失效后的作业进度恢复时间,这大大提升了整个计算工作的效率与质量。
分多用户共享计算平台特征集中体现于硬件异构性、多用户资源调度机制、节点失效和资料抢占这三方面,对于多用户资源调度机制来说,当前最常用的数据中心资源调度器有Mesos、Borg、YARN,相同的一点是这几类数据中心资源调度器均可以对批处理计算任务和在线服务进程等进行统一的管理。对于节点失效和资料抢占来说,所借助的数据管理机制可以有效提升数据管理质量,即便数据丢失一个碎片,所有的计算节点仍然可以返回至上一次的检查点状态进行重新计算,这对于失效数据恢复十分有利,不过所开展的检查点创建一定程度上会拖慢数据处理效率,这一点仍需要后期分析研究,最终克服。
两级图划分机制设计上,本文创新性的提出一种元算法框架,可以直接采用PowerCraph已有的启发式顶点分割图划分算法,其整体流程为:计算节点读取原始数据分片→预定义单级图划分算法划分所读取数据的顶点和边→n个计算节点开始执行二级划分阶段→每个计算节点将本地分区的内部顶点分配至子分片。
三、结语
就现阶段研究成果来看,大数据处理系统主要包括三个层面的核心组件,即数据处理软件引擎、分布式硬件计算资源及应用支撑环境,我国现阶段对大数据处理系统性能优化也很大程度上围绕这三个层面展开。但均有不同程度的绝局限性,实际操作性不强。因此,在后期的相关研究与实践中,一方面要基于这三方面,另一方面要加大创新力度,对基于作业运行特征的大数据处理系统性能作更好的优化。
参考文献:
[1]田萍.大数据视域下计算机信息处理系统的优化设计[J].电子测试,2019(20).
[2]杜珺.计算机信息处理对大数据的实际应用[J].通讯世界,2015(12).
[3] 陈玉霞.提高计算机信息处理能力和信息安全能力的措施[J].电子制作,2017(18).
基金项目:本文系湖南省教育厅资助科研项目(19C1234)的阶段性研究成果。