【技术实现步骤摘要】
一种最小化租赁成本的公有云服务租赁方法
本专利技术涉及云计算资源调度
,尤其涉及一种最小化租赁成本的公有云服务租赁方法。
技术介绍
如今,在云平台上现有的分布式并行计算框架仍然存在诸多挑战,其中,数据倾斜正成为提升系统性能的瓶颈。数据倾斜这一现象通常由数据本身性质引起,且普遍存在于并行计算框架中。具体的,当数据倾斜出现在计算过程中时,由于少量任务的处理时间明显地多于其它任务的处理时间,因而严重降低了整个系统的执行效率,进而严重阻碍系统并行处理的能力。由于大数据的来源主要是社交媒体、电商平台和搜索引擎三大领域,这些数据的最大特征即数据分布极其不均衡,存在着大量热点数据,例如社交媒体中的热门话题、电商平台的爆款商品和搜索引擎的搜索热点,处理这样的数据分布极其不均衡的数据时,特别容易造成在处理过程中的数据倾斜现象,出现个别“慢”任务(Straggler),从而大大延长整个应用的完工时间。数据倾斜被认为是影响并行分布式框架如Spark平台的执行效率的一个关键问题,并且数据量越大,其导致的执行效率问题就越突出。现如今,对于Spark平台中数据倾斜问题的解决方法较少,但是Hadoop平台上的数据倾斜问题的解决方法已有了一些积累。通常,可以按照处理阶段将数据倾斜划分为Map型、Reduce型、Map&Reduce型和Shuffle型这四种类型。对于Map&Reduce型,在SkewTune系统中,如果任务的剩余时间超过1分钟并且集群中有空闲节点,则该系统在不改变默认分区函数的前提下,在检测到任务为Stragg ...
【技术保护点】
1.一种最小化租赁成本的公有云服务租赁方法,其特征在于,包括:/n步骤1,获取Spark应用程序的采样数据,并标记所述采样数据中可能出现数据倾斜的任务为慢任务,将所述慢任务划分成多个子任务;/n步骤2,根据所述Spark应用程序的截止期,基于关键路径长度的截止期划分方法,确定所述Spark应用程序中每个并行计算阶段和计算任务组的子截止期,所述计算任务组包括多个计算单元;/n步骤3,根据就绪的所述计算任务组确定待调度的计算单元优先队列Q,所述待调度的计算单元优先队列Q中计算单元的优先级根据每个计算单元的数据量大小按照降序排列;/n步骤4,将所述待调度的计算单元优先队列Q的队头出队作为调度任务,将所述调度任务调度到公有云的资源上进行处理;调度所述调度任务时,在满足每个所述调度任务的子截止期的前提下,将所述调度任务调度到租赁价格代价较小的按需资源上。/n
【技术特征摘要】
1.一种最小化租赁成本的公有云服务租赁方法,其特征在于,包括:
步骤1,获取Spark应用程序的采样数据,并标记所述采样数据中可能出现数据倾斜的任务为慢任务,将所述慢任务划分成多个子任务;
步骤2,根据所述Spark应用程序的截止期,基于关键路径长度的截止期划分方法,确定所述Spark应用程序中每个并行计算阶段和计算任务组的子截止期,所述计算任务组包括多个计算单元;
步骤3,根据就绪的所述计算任务组确定待调度的计算单元优先队列Q,所述待调度的计算单元优先队列Q中计算单元的优先级根据每个计算单元的数据量大小按照降序排列;
步骤4,将所述待调度的计算单元优先队列Q的队头出队作为调度任务,将所述调度任务调度到公有云的资源上进行处理;调度所述调度任务时,在满足每个所述调度任务的子截止期的前提下,将所述调度任务调度到租赁价格代价较小的按需资源上。
2.根据权利要求1所述的一种最小化租赁成本的公有云服务租赁方法,其特征在于,所述步骤1包括:
步骤1-1,采用蓄水池算法对用户提交的每个所述Spark应用程序进行采样,将每个计算任务组作为一个蓄水池,采样部分计算单元作为采样数据,计算所有样本所需处理数据量的均值,即获得每个所述计算任务组中计算单元所需处理数据量的均值;
步骤1-2,根据所述蓄水池算法的抽样比例,建立分布直方图;
步骤1-3,根据,获得所述计算单元的偏斜因子:
其中,表示计算单元所需处理数据量,表示每个计算任务组中计算单元所需处理数
据量的均值;
若所述偏斜因子大于或等于0.5,则将任务标记为慢任务;
步骤1-4,将被标记为所述慢任务的任务放入慢任务集合;
步骤1-5,根据所述采样数据,将所述慢任务的数据划分成均值的预设倍数个数据分
区,为每个所述数据分区对应生成一个子任务,所述预设倍数的值为。
3.根据权利要求2所述的一种最小化租赁成本的公有云服务租赁方法,其特征在于,所述步骤2包括:
步骤2-1,根据用户提交的截止期约束和公有云中虚拟机资源的执行速度以及并行计算阶段与计算任务组间的偏序关系,生成相应的拓扑序列,设使用处理速度最快公有云资源预估的时间参数,所述时间参数包括最早开始时间和最晚开始时间;
步骤2-2,根据所述拓扑序列计算每个并行计算阶段的子截止期;
步骤2-3,跟据所述计算任务组所在的层次,通过以下公式,确定每个并行计算
阶段及计算任务组的子截止期:
其中,为计算得到的第j个计算任务组的子截止期,表示第j个计算任务
组的最晚结束时间,为给定的Spark应用的截止期;所述计算单元的子截止期等于计算单
元所在计算任务组的子截止期;
步骤2-4,将初始并行计算阶段队列SJ的队头元素,即计算任务组队列S出队,将所述初始并行计算阶段队列SJ队头元素中的所有计算单元加入待调度的计算单元优先队列Q中;
步骤2-5,更新所述待调度的计算单元优先队列Q,即将所有没有前驱计算任务组,或者,所述前驱计算任务组已经处理完成的计算任务组中的所有计算单元添加到待...
【专利技术属性】
技术研发人员:徐海燕,任乐天,袁龙,张涛,
申请(专利权)人:金陵科技学院,江苏新扬子造船有限公司,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。