Spark Shuffle的内存调度算法分析及优化

被引量 : 0次 | 上传用户:bsky613
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着分布式计算框架的不断发展和普及,Spark以其先进的设计理念,迅速成为开源社区的热门研究项目。对于大数据计算框架而言,Shuffle过程的设计优劣和性能高低直接影响着整个系统的性能和吞吐量。本文研究的主要内容为Spark Shuffle过程中不同Task司内存分配算法的分析与优化。在分析已有Shuffle优化算法的基础上,发现因各Task对内存需求不均衡而造成Shuffle运行效率低的瓶颈。针对公平分配内存调度算法的不足,提出了一种基于溢出历史的自适应内存调度算法,并通过典型实验证明本文算法能有效提高内存利用率和程序运行效率,提高Spark系统的整体运行性能。本文的主要贡献包括:1) 阐述了分布式计算的主流框架MapReduce,包括MapReduce的编程模型、现状和不足。通过介绍Spark的设计理念分析了Spark对MapReduce模型的改进,比较了两者的优缺点。2)研究了Spark Shuffle的概念、发展及优化过程,通过阅读分析Spark Shuffle的源码研究Shuffle内存调度的思想,指出了公平分配算法存在的不足。3) 提出了基于溢出历史的自适应内存调度算法SBSA,解决Spark Shuffle公平分配内存调度算法影响Shuffle运行效率的问题。本算法详细设计了空闲内存的计算方式、关键Task可从空闲内存借用的内存比例以及Task可用内存的最大阈值。4) 通过典型实验比较了SBSA算法与先来先服务算法、公平分配调度算法的性能差异,实验结果证明本算法可以大大提高数据分布不均匀的应用程序的执行效率。从综合表现来看,本算法能充分利用空闲内存资源,提高资源利用效率,在一定程度上缓解目前内存资源不足的问题。
其他文献
"看病难看病贵"的问题始终得不到有效解决的原因在于政策执行不力。本文从政策问题与政策质量、政策执行主体、政策对象、政策外部环境四个方面分析了"看病难看病贵"问题背后
采用指数因素分解法,从居民最终能源消费方式(产品层次)入手分析了1993年至2007年,影响居民能源消费增长的主要因素。研究认为:居民购买力增强、消费结构向能源密集型产品的
<正>与传统理财方式相比,网络理财零门槛(可以从1元钱起买),随时可赎回,省时省事,而且还能货比三家,自然受到投资者的青睐。2013年6月,阿里巴巴集团推出余额宝,这是第三方支
<正>随着经济社会的快速发展和人们生活水平的日益提高,新休假制度的实施使我国旅游经济正在向休闲经济形态转变,休闲旅游已逐渐成为我国旅游消费的新亮点和旅游发展的新时尚
新产品开发是卷烟企业增强竞争力的重要手段,但又面临巨大的市场风险。本文通过对新产品推广特点的剖析,分析了影响营销决策的因素,指出了卷烟企业在进行新产品市场推广时应
文章对影响我国物流业健康快速发展的主要因素进行了分析,并提出对策建议。
<正> 70年代末、80年代初,全国各地推进农业经营体制改革,实行家庭承包责任制,重建了农户经济。这一制度创新极大地调动了农民的积极性、创造性,解放和发展了农村生产力,但同
企业持续经营能力是近年来学术界研究的热点问题,是伴随着市场经济的发展和市场竞争的日益激烈而不断发展起来的。本文在查阅研究文献的基础上,从企业持续经营的定义、企业持