CN115357368A - 一种基于异构环境感知的MapReduce作业调度方法 - Google Patents

一种基于异构环境感知的MapReduce作业调度方法 Download PDF

Info

Publication number
CN115357368A
CN115357368A CN202211280671.9A CN202211280671A CN115357368A CN 115357368 A CN115357368 A CN 115357368A CN 202211280671 A CN202211280671 A CN 202211280671A CN 115357368 A CN115357368 A CN 115357368A
Authority
CN
China
Prior art keywords
node
data
computing
data storage
task
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211280671.9A
Other languages
English (en)
Inventor
吕敏
杨振宇
许胤龙
牛天洋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Science and Technology of China USTC
Original Assignee
University of Science and Technology of China USTC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by University of Science and Technology of China USTC filed Critical University of Science and Technology of China USTC
Priority to CN202211280671.9A priority Critical patent/CN115357368A/zh
Publication of CN115357368A publication Critical patent/CN115357368A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5021Priority

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及分布式计算系统技术领域,公开了一种基于异构环境感知的MapReduce作业调度方法,包含混合存储模式下数据的均衡放置、节点任务并发度评估、多作业并发时的资源均衡分配和作业内任务分配优先级划分等步骤;能够有效提升MapReduce作业的处理效率。适用于底层数据采用多种纠删码或纠删码和副本混合存储、计算侧硬件异构和后台负载多变的Hadoop集群环境中,既能保证MapReduce框架的作业吞吐,又能保证每个作业的服务质量,且保证集群节点存储或计算设备资源占用的均衡性。

Description

一种基于异构环境感知的MapReduce作业调度方法
技术领域
本发明涉及分布式计算系统技术领域,具体涉及一种基于异构环境感知的MapReduce作业调度方法。
背景技术
Hadoop MapReduce是一个典型的分布式离线批处理计算框架,其将海量数据的处理过程抽象为Map(映射)和Reduce(归约)两个阶段,通过资源管理框架YARN来进行资源管理与作业调度,实现对底层HDFS分布式文件系统中存储的大规模离线数据进行分析计算。但由于目前环境下,HDFS分布式文件系统为了降低存储开销,采用了纠删码和副本存储混合的存储模式,放大了MapReduce作业运行时对底层存储系统数据访问的热度倾斜现象,使得MapReduce作业中部分任务的数据访问效率降低;另一方面,集群节点间的硬件异构和运行时不同计算设备的实时负载差异也会影响MapReduce作业中不同任务的执行效率。上述两方面因素共同影响了当前MapReduce框架的作业处理能力。
发明内容
为解决上述技术问题,本发明提供一种基于异构环境感知的MapReduce作业调度方法,均衡MapReduce作业运行时对存储系统的数据访问热度和集群计算设备如CPU、内存等的资源占用并实现框架运行效率的提升;该方法通用性好,兼容当前Hadoop中MapReduce和HDFS等框架的设计。同时相比其他设计,无需采用复杂算法来进行资源分配和任务调度决策,从而避免产生大量额外开销,性能较好。
为解决上述技术问题,本发明采用如下技术方案:
一种基于异构环境感知的MapReduce作业调度方法,包括以下步骤:
第一步、混合存储模式下数据的均衡放置:
Hadoop集群中各数据存储节点收集自身的磁盘顺序读能力
Figure 202151DEST_PATH_IMAGE001
和磁盘顺序写能 力
Figure 238240DEST_PATH_IMAGE002
,以及网络上行带宽
Figure 5339DEST_PATH_IMAGE003
和网络下行带宽
Figure 392458DEST_PATH_IMAGE004
,此外周期性(以
Figure 496680DEST_PATH_IMAGE005
表示存储侧 历史负载分析周期)分析数据存储节点自身相关硬件设备一段时间内(以
Figure 652855DEST_PATH_IMAGE006
表示每次分析 日志的时间跨度)的历史负载,得出数据存储节点的数据传输性能,其中
Figure 449910DEST_PATH_IMAGE005
Figure 58745DEST_PATH_IMAGE006
为用户可配置 的参数:对于磁盘顺序读写,可通过磁盘负载监控工具按一定的时间间隔(如每分钟、每小 时)对磁盘读写负载采样,将采样结果记录中大于80%时间中的负载峰值作为长期磁盘后台 负载
Figure 966659DEST_PATH_IMAGE007
,对于网络传输,用类似方式利用网络负载监控工具对网络上下行带宽占用情 况进行采样,将采样结果记录中数据存储节点大于80%时间中的网络上行负载峰值、下行负 载峰值作为长期上行后台负载
Figure 977340DEST_PATH_IMAGE008
、长期下行后台负载
Figure 945296DEST_PATH_IMAGE009
Figure 41428DEST_PATH_IMAGE010
的单位均为数据传输速度MB/s。
元数据管理节点周期性获取Hadoop集群中各数据存储节点的数据传输性能,根据 节点分组阈值θ,依照各节点的数据传输性能高低进行分组,θ为可配置参数,单位为MB/s。 数据存储节点
Figure 487453DEST_PATH_IMAGE011
(i为节点序号)将根据公式(1)被划分到对应的节点组N个节点组
Figure 618220DEST_PATH_IMAGE012
中(j为节点组序号),元数据管理节点周期性更新节点分组情况:
Figure 757077DEST_PATH_IMAGE013
Figure 776723DEST_PATH_IMAGE014
Figure 26439DEST_PATH_IMAGE015
(1)
Figure 11713DEST_PATH_IMAGE016
表示数据存储节点的数据读取性能,
Figure 321471DEST_PATH_IMAGE017
表示数据存储节点的数据 写入性能,单位均为MB/s;数据存储节点的数据读取性能和数据写入性能统称为数据存储 节点的数据传输性能。
当进行文件写入时,元数据管理节点根据上述数据存储节点分组情况,在保证单个机架容错的前提下,将同一纠删码条带放在属于同一节点组的节点中,并且保证各节点组上存放的不同配置的条带数量均衡,在每个节点组内部的各节点上保证数据块和校验块比例的相对均衡;具体可以采用如下方式:以各节点组内数据存储节点上存储的全部块的平均数量来表征节点组的存储占用情况,通过将节点组的存储占用情况进行升序遍历的方式为纠删码条带的存储位置选址;通过将节点组内各存储节点上的数据块与全部块的比例进行升序遍历的方式,为该节点组内纠删码条带的数据块选取存储位置;通过将节点组内各存储节点上的校验块与全部块的比例进行升序遍历的方式,为该节点组内纠删码条带的校验块选取存储位置。
第二步、节点任务并发度评估:
在第一步保证了底层存储数据均衡的情况下,在进行作业处理时考虑每个计算节 点动态变化的计算能力。每个计算节点周期性(以
Figure 392196DEST_PATH_IMAGE018
表示算计算节点硬件负载采样周期,为 用户可调参数)采集自身CPU实时占用率
Figure 445602DEST_PATH_IMAGE019
、内存实时占用率
Figure 223065DEST_PATH_IMAGE020
,并结合Hadoop 静态配置的默认可用CPU核心数
Figure 703725DEST_PATH_IMAGE021
和内存最大可用容量
Figure 996166DEST_PATH_IMAGE022
,根据公式(2)对计算 节点当前的弹性可用计算单元EAC的数量
Figure 853264DEST_PATH_IMAGE023
进行计算:
Figure 547550DEST_PATH_IMAGE024
Figure 199112DEST_PATH_IMAGE025
Figure 182111DEST_PATH_IMAGE026
(2)
Figure 577320DEST_PATH_IMAGE027
Figure 126113DEST_PATH_IMAGE028
分别为计算节点的CPU物理核心数和内存容量,
Figure 214155DEST_PATH_IMAGE029
是每个 任务所需的内存资源上限。
Figure 481188DEST_PATH_IMAGE030
为保证计算节点CPU性能所允许的最大任务并发度,
Figure 414509DEST_PATH_IMAGE031
为保证计算 节点内存性能所允许的最大任务并发度,综合二者得出最终的EAC数量
Figure 83388DEST_PATH_IMAGE032
,作为计算 节点任务并发度的控制阈值,由此实现根据真实负载情况对集群弹性可用计算单元的动态 调节。
第三步、多作业并发时的资源均衡分配:
基于第二步得出某一时间周期内集群各计算节点任务并发度的控制阈值。对于一 组作业提交序列
Figure 280014DEST_PATH_IMAGE033
,该序列中各作业对应包含的任务数量为
Figure 768764DEST_PATH_IMAGE034
,某一时间段内队列中作业为
Figure 771355DEST_PATH_IMAGE035
,其中
Figure 294741DEST_PATH_IMAGE036
,集群在后续任务分配中应尽可能等分集群资源,即保证作业
Figure 459006DEST_PATH_IMAGE035
各 分配
Figure 700631DEST_PATH_IMAGE037
的集群资源。
这样做有利于保证短作业的快速执行,从而避免基于作业规模或作业剩余任务数的比例来决定资源分配导致的部分作业饥饿现象。当有新作业提交时,系统实时更新为各作业分配的弹性可用计算单元数量。
第四步:作业内任务分配优先级划分
一个作业内包含了大量Map任务和Reduce任务,在第三步确定了集群为各作业分 配的弹性可用计算单元数量后,第四步考虑每个作业内部具体的任务分配优先级。作业内 的Reduce任务一般在全部Map任务完成后开始分配执行,当作业
Figure 683412DEST_PATH_IMAGE038
进行Map任务的选取和分 配时,若当前集群根据第一步划分为了n个节点组
Figure 61303DEST_PATH_IMAGE039
,对应的数 据访问性能比例为
Figure 662049DEST_PATH_IMAGE040
,则作业
Figure 125391DEST_PATH_IMAGE038
将以
Figure 469785DEST_PATH_IMAGE041
的比例选取对应数据位 于节点组
Figure 967762DEST_PATH_IMAGE042
的Map任务,以保证接下来一段时间内数据访问负载的相对 均衡。当作业
Figure 411513DEST_PATH_IMAGE043
进行Reduce任务的选取和分配时,假设集群为作业
Figure 627731DEST_PATH_IMAGE043
分配的弹性可用计算单 元数量为
Figure 510236DEST_PATH_IMAGE044
,则根据当前集群各计算节点的弹性可用计算单元数量的比例计 算出各计算节点应该处理的作业
Figure 862720DEST_PATH_IMAGE038
的Reduce任务数量。若集群中部分计算节点上的空闲弹 性可用计算单元数量小于待为其分配的作业
Figure 539689DEST_PATH_IMAGE038
的Reduce任务数量,则作业
Figure 977624DEST_PATH_IMAGE038
中的部分 Reduce任务需要等待这部分计算节点上弹性可用计算单元的释放。
与现有技术相比,本发明的有益技术效果是:
本发明基于异构环境感知的MapReduce作业调度方法,包含混合存储模式下数据的均衡放置、节点任务并发度评估、多作业并发时的资源均衡分配和作业内任务分配优先级划分等步骤。
首先,由于本发明用启发式算法更改了Hadoop默认的随机数据放置和默认的公平作业调度策略,并未引入过高的算法复杂性,因此不会对系统的数据存储能力产生影响,且实现起来较为简单;此外,一定周期性内的节点软硬件信息统计产生的存储、计算和网络开销相较于MapReduce作业运行过程本身的开销也可以忽略不计。
在MapReduce作业并发场景下,一般各作业中Reduce任务的数量相较于Map任务要小近乎一个量级,并且不同作业对应的Reduce任务特征相较于Map任务差异更加明显,即Reduce任务对于各类计算资源的敏感程度相较于Map任务更高,因此,为了降低任务分配的复杂程度,实现对存储系统数据访问的热度均衡,需要对Map任务和Reduce任务进行进一步区分,引入任务优先级划分来保证各作业当前分配的Map任务对集群各节点数据访问压力均衡,并且保证各作业当前分配的Reduce任务在集群中均匀分布,避免了由于任务特征差异造成的CPU、内存资源竞争。
因此本方法与传统方法相比,能够有效提升MapReduce作业的处理效率。适用于底层数据采用多种纠删码或纠删码和副本混合存储、计算侧硬件异构和后台负载多变的Hadoop集群环境中,既能保证MapReduce框架的作业吞吐,又能保证每个作业的服务质量,且保证集群节点存储或计算设备资源占用的均衡性。
附图说明
图1为Hadoop集群默认的数据存储和作业内任务分配模式示意图;
图2为本发明中Hadoop集群数据存储和作业内任务分配方案示意图;
图3为MapReduce作业并发场景下的作业调度和任务分配方案示意图;
图4为MapReduce作业并发场景下作业内部任务优先级确定方案示意图;
图5为Map任务优先级确定时节点组内部数据访问的两种情况示意图;
图6为本发明基于异构环境感知的MapReduce作业调度方法的操作流程示意图。
具体实施方式
下面结合附图通过一个具体实施例对本发明基于异构环境感知的MapReduce作业调度方法作进一步地说明。
本实施例中的基于异构环境感知的MapReduce作业调度方法的应用场景,是同时运行了HDFS分布式文件系统和YARN资源管理框架且由15台服务器节点组成的集群。
图1中给出了HDFS分布式文件系统默认的数据存储方式和YARN资源管理框架默认的资源管理和任务分配方式,HDFS分布式文件包括元数据管理节点(主节点)、数据存储节点(从属节点),YARN资源管理框架包括资源管理节点(主节点)、实际负责任务运行的计算节点(从属节点)。集群分为3个机架,每个机架内有5个节点,为了简化复杂程度示意图中仅展示部分节点。
在存储侧,当向HDFS分布式文件系统中存入一个RS-(3,2)纠删码条带时,)纠删码条带的1个数据块存放在了HDFS分布式文件系统中读写性能较低的一个数据存储节点。一般情况下,MapReduce作业中的Map任务需要访问纠删码条带的全部数据块,来获取原始文件连续的一部分数据进行处理;因此当MapReduce作业中的任务Task1在访问该纠删码条带的3个数据块时,由于数据存储节点数据访问性能差异的影响,位于低读写性能的数据存储节点上的数据块可能迟迟无法完成数据传输,影响任务Task1的处理效率。
而在计算侧,资源管理节点将各计算节点的任务并发度静态控制为10,并随机决定各节点上的任务分配,导致在集群中某个低计算性能的计算节点上的任务数量反高于高计算性能的计算节点上的任务数量,从而在低计算性能的计算节点上发生CPU、内存等资源竞争,影响多个任务的处理效率。
因此需要动态感知异构集群中的软硬件变化情况,进行更加均衡的数据存放和动态计算资源管理,能够有效均衡数据存储节点上存储压力和计算节点的负载压力,加快任务的处理速度,从而提升MapReduce作业的完成效率。
本实施例基于异构环境感知的MapReduce作业调度方法,具体包括以下步骤:
第一步:混合存储模式下数据的均衡放置
图2为数据写入时如何均衡放置的示意图。图2中有14个数据存储节点DN1-DN14, 元数据管理节点首先通过数据存储节点上的设备信息组件采集得到的磁盘顺序读写性能、 网络上下行带宽和历史负载记录,并按公式(1)将数据存储节点分为了三个性能的节点组
Figure 804765DEST_PATH_IMAGE045
,其中
Figure 11756DEST_PATH_IMAGE046
Figure 125205DEST_PATH_IMAGE047
Figure 50436DEST_PATH_IMAGE048
。向HDFS分布式文件系统中写入两个RS-(3,2)纠 删码条带,考虑机架级别容错,每个机架内节点放置同一纠删码条带的数据块或校验块总 数不超过2。因此纠删码条带1中的3个数据块分别放置在数据存储节点DN6、DN9和DN10,校 验块分别放置在数据存储节点DN4和数据存储节点DN14。考虑存储占用均衡和节点组访问 性能,纠删码条带2中的数据块分别放置在数据存储节点DN1、DN4和DN14,校验块分别放置 在数据存储节点DN5和DN11。
第二步:节点任务并发度评估
图2示意了各计算节点对任务并发度的动态控制。YARN资源管理框架中计算节点利用增加的负载计算组件周期性采集后台CPU、内存等设备负载情况,根据公式(2)得出自身合适的弹性可用计算单元(Elastic-Avail-Container,简称EAC)数量,并汇报给资源管理节点。每个Map任务或者Reduce任务在一个EAC中运行,通过EAC数量控制计算节点任务并发度,即任务并发度等于EAC数量。
如图2,计算节点NM4计算得到该周期内自身合适的任务并发度为15,说明计算节 点NM4的CPU、内存等硬件性能较高或该时刻节点后台负载较低,与之相反计算节点NM5的任 务并发度计算为5,其余计算节点的任务并发度为10。考虑当前系统中只有一个MapReduce 作业,Map任务数量为56,则资源管理节点将把MapReduce作业的全部Map任务按各计算节点 计算出的任务并发度比例进行分配。计算节点NM4分配了6个Map任务,计算节点NM5分配了2 个Map任务,其余计算节点分配4个Map任务,实现了节点间弹性可用计算单元的负载均衡。 图2中任务Task1对应处理的数据恰好是纠删码条带1的数据块部分,由于纠删码条带1的数 据块部分位于同一节点组
Figure 274744DEST_PATH_IMAGE049
内,因此避免了由于节点数据访问性能差异造成的传输效率降 低。
第三步:多作业并发时的资源均衡分配
图3给出了多作业并发时的资源均衡分配方案,考虑当前系统作业队列中存在5个 作业Job1至Job5,对应剩余任务数量分别为Tjob1=30、Tjob2=70、Tjob3=50、Tjob4=110、Tjob5=20; 假设该时刻各计算节点的任务并发度为:计算节点NM4任务并发度CNM4=15,计算节点NM5的 任务并发度CNM5=5,其余计算节点的任务并发度为10,可知集群当前总的任务并发度为
Figure 601820DEST_PATH_IMAGE050
,此时对于作业Job1至Job5,系统为其等分集群的弹性可用计算单元,每 个作业的最大任务分配数量为28,由于Job5只剩下20个任务,因此其余作业可以等量增加2 个任务的分配,最终作业Job1至Job5的任务并发度为30,30,30,30,20。
第四步:作业内任务分配优先级划分
如图4所示,在第三步确定好各作业的资源分配后,作业Job4内部任务分配的优先 级确定。如图4所示,在当前周期内Job4在集群中分配的任务数量不超过30,而Job4剩余的 110个任务中有90个Map任务和20个Reduce任务,Reduce任务在全部Map任务执行结束后开 始运行。因此在当前阶段Job4的作业管理进程将选取30个Map任务进行分配。在HDFS存储 侧,节点性能分组如图2、图4所示,若节点组
Figure 886171DEST_PATH_IMAGE051
数据访问性能比为1:3:6,则需挑选30 个Map任务,满足其对应的纠删码条带的数据块部分位于节点组
Figure 767539DEST_PATH_IMAGE052
的数量分别为3、 9、18,并且保证选取的纠删码条带在节点组内部的具体存储节点相对均衡,如图5所示,挑 选3个对应纠删码条带数据块在节点组
Figure 795538DEST_PATH_IMAGE053
上的Map任务时,情况一对节点组
Figure 977121DEST_PATH_IMAGE053
内的各节点访 问压力要比情况二更均衡,图5中各纠删码条带中的框表示数据块或者校验块。当Job4的全 部Map任务执行结束后,开始为其Reduce任务进行分配,需要保证每个计算节点上分配的 Job4 Reduce任务数量比例和计算节点的实时任务并发度数量比例一致。当作业队列发生 更新或到下一周期时,集群各计算节点动态更新任务并发度,此时Job4对应的任务分配数 量限制也会变化,但任务优先级确定和分配方式依据保持不变。
图6给出了整个方案的实施操作流程图。首先存储侧实现对异构集群节点数据访问性能的分组,在数据写入时实现混合存储模式下数据块的均衡放置。而后在MapReduce作业并发场景下,根据一定的时间周期或作业队列的变化,动态调节集群各节点的弹性可用计算单元。最后各作业根据集群可为其分配的资源上限,按照存储侧的节点分组情况,选取数据访问压力均衡的一批Map任务开始执行,当作业的全部Map任务结束后,再按照当前计算侧各节点实时的任务并发度比例,分配不超过集群为作业分配的资源上限数量的Reduce任务至作业完成,至此整个流程结束。
在本实施例中,通过基于异构环境感知的MapReduce作业调度方法,一方面在存储侧可以根据集群的硬件异构情况和长期后台读写负载来均衡纠删码条带的数据放置,提升MapReduce作业的数据访问性能。另一方面,在计算侧动态调节每个节点可处理的任务并发度,能够有效避免高性能或空闲节点的资源浪费,同时缓解低性能或高负载节点上严重的资源竞争状况,提升MapReduce作业的数据计算性能。通过上述两方面来在异构Hadoop集群环境中提升MapReduce框架的数据处理能力。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内,不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立技术方案,说明书的这种叙述方式仅仅是为了清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。

Claims (4)

1.一种基于异构环境感知的MapReduce作业调度方法,异构环境包括同时运行着HDFS分布式文件系统和YARN资源管理框架的集群,MapReduce作业中任务的数据以纠删码条带形式存储在HDFS分布式文件系统中,纠删码条带包括数据块和校验块,数据块和校验块统称为全部块,MapReduce作业调度方法包括以下步骤:
步骤一:根据HDFS分布式文件系统各数据存储节点的数据传输性能,对各数据存储节点进行分组,得到多个节点组;将同一纠删码条带的全部块放在属于同一节点组的数据存储节点中,以各节点组内数据存储节点上存储的全部块的平均数量来表征节点组的存储占用情况,通过将节点组的存储占用情况进行升序遍历的方式为纠删码条带的存储位置选址;通过将节点组内各存储节点上的数据块与全部块的比例进行升序遍历的方式,为该节点组内纠删码条带的数据块选取存储位置;通过将节点组内各存储节点上的校验块与全部块的比例进行升序遍历的方式,为该节点组内纠删码条带的校验块选取存储位置;
步骤二:根据YARN资源管理框架各计算节点的硬件信息,得到计算节点当前的弹性可 用计算单元数量
Figure 887779DEST_PATH_IMAGE001
,将一个MapReduce作业的各任务按照各计算单元内的弹性可用 计算单元的数量比分配到各计算单元中;MapReduce作业包括Map任务和Reduce任务,
步骤三:步骤二中,在HDFS分布式文件系统中选取Map任务时,根据各节点组的数据传输性能,按比例选择位于各节点组内的以纠删码条带形式存储的Map任务数量;Reduce任务在所有Map任务执行结束后再执行;执行Reduce任务时,根据各计算节点中当前的弹性可用计算单元数量比,将Reduce任务分配到各计算单元中。
2.根据权利要求1所述的基于异构环境感知的MapReduce作业调度方法,其特征在于: 步骤一中,集群中各数据存储节点收集自身的磁盘顺序读能力
Figure 744877DEST_PATH_IMAGE002
、磁盘顺序写能力
Figure 439163DEST_PATH_IMAGE003
,以及网络上行带宽
Figure 28408DEST_PATH_IMAGE004
和网络下行带宽
Figure 73724DEST_PATH_IMAGE005
,每隔固定时间分析数据存储节点自 身的历史负载,将数据存储节点磁盘大于设定时间中的负载峰值作为长期磁盘后台负载
Figure 468933DEST_PATH_IMAGE006
,将数据存储节点网络大于设定时间中的上行负载峰值和下行负载峰值分别作为网 络传输的长期上行后台负载
Figure 17726DEST_PATH_IMAGE007
、长期下行后台负载
Figure 105768DEST_PATH_IMAGE008
步骤一中数据存储节点
Figure 372801DEST_PATH_IMAGE009
的数据传输性能包括磁盘顺序读能力
Figure 509385DEST_PATH_IMAGE010
、磁盘顺序写 能力
Figure 912684DEST_PATH_IMAGE011
、网络上行带宽
Figure 171627DEST_PATH_IMAGE012
、网络下行带宽
Figure 925957DEST_PATH_IMAGE013
、长期磁盘后台负载
Figure 662968DEST_PATH_IMAGE014
、长期 上行后台负载
Figure 186354DEST_PATH_IMAGE015
、长期下行后台负载
Figure 69994DEST_PATH_IMAGE016
根据节点分组阈值θ,依照各数据存储节点
Figure 46041DEST_PATH_IMAGE017
的数据传输性能高低将数据存储节点
Figure 586743DEST_PATH_IMAGE018
划分到对应的节点组G中:
Figure 230214DEST_PATH_IMAGE019
根据上述计算方式将集群中的各存储节点根据性能分别划分到N个节点组
Figure 565381DEST_PATH_IMAGE020
中;其中i为数据存储节点序号,j为节点组序号,
Figure 294302DEST_PATH_IMAGE021
为数据存储节点的 数据读取性能,
Figure 310800DEST_PATH_IMAGE022
为数据存储节点的数据写入性能,
Figure 808777DEST_PATH_IMAGE023
Figure 314845DEST_PATH_IMAGE024
3.根据权利要求1所述的基于异构环境感知的MapReduce作业调度方法,其特征在于: 步骤二中,每个计算节点周期性采集自身的CPU实时占用率
Figure 531063DEST_PATH_IMAGE025
、内存实时占用率
Figure 413568DEST_PATH_IMAGE026
,并结合Hadoop集群默认配置的可用CPU核心数
Figure 766052DEST_PATH_IMAGE027
和内存最大可用容量
Figure 849546DEST_PATH_IMAGE028
,以及节点CPU、内存的硬件信息,对各计算节点当前的弹性可用计算单元EAC的数量
Figure 287480DEST_PATH_IMAGE029
进行计算:
Figure 708097DEST_PATH_IMAGE030
其中,
Figure 180667DEST_PATH_IMAGE031
为保证计算节点CPU性能所允许的最大任务并发度:
Figure 28537DEST_PATH_IMAGE032
Figure 953768DEST_PATH_IMAGE033
为保证计算节点内存性能所允许的最大任务并发度:
Figure 912497DEST_PATH_IMAGE034
Figure 239573DEST_PATH_IMAGE035
Figure 523924DEST_PATH_IMAGE036
分别为计算节点的CPU物理核心数和内存容量,
Figure 936450DEST_PATH_IMAGE037
是每个任务所 需的内存资源上限。
4.根据权利要求1所述的基于异构环境感知的MapReduce作业调度方法,其特征在于, 还包括多MapReduce作业并发时的资源均衡分配策略:某一时间段内队列中MapReduce作业 为
Figure 698870DEST_PATH_IMAGE038
Figure 880453DEST_PATH_IMAGE039
,则作业
Figure 771923DEST_PATH_IMAGE040
各分配
Figure 671746DEST_PATH_IMAGE041
的集群资源;其中集群资源为 各计算节点当前的弹性可用计算单元数量之和。
CN202211280671.9A 2022-10-19 2022-10-19 一种基于异构环境感知的MapReduce作业调度方法 Pending CN115357368A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211280671.9A CN115357368A (zh) 2022-10-19 2022-10-19 一种基于异构环境感知的MapReduce作业调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211280671.9A CN115357368A (zh) 2022-10-19 2022-10-19 一种基于异构环境感知的MapReduce作业调度方法

Publications (1)

Publication Number Publication Date
CN115357368A true CN115357368A (zh) 2022-11-18

Family

ID=84007898

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211280671.9A Pending CN115357368A (zh) 2022-10-19 2022-10-19 一种基于异构环境感知的MapReduce作业调度方法

Country Status (1)

Country Link
CN (1) CN115357368A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116185645A (zh) * 2023-04-28 2023-05-30 联通沃音乐文化有限公司 基于神经网络的集群资源智能调度方法、系统及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170060630A1 (en) * 2015-08-26 2017-03-02 International Business Machines Corporation Scheduling mapreduce tasks based on estimated workload distribution
CN108304264A (zh) * 2018-01-22 2018-07-20 华中科技大学 一种基于spark流式计算的纠删码归档方法
CN112988884A (zh) * 2019-12-17 2021-06-18 中国移动通信集团陕西有限公司 大数据平台数据存储方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170060630A1 (en) * 2015-08-26 2017-03-02 International Business Machines Corporation Scheduling mapreduce tasks based on estimated workload distribution
CN108304264A (zh) * 2018-01-22 2018-07-20 华中科技大学 一种基于spark流式计算的纠删码归档方法
CN112988884A (zh) * 2019-12-17 2021-06-18 中国移动通信集团陕西有限公司 大数据平台数据存储方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
杨振宇等: "纠删码存储下的离线批处理作业性能优化", 《集成技术》 *
沈记全等: "基于纠删码技术的云存储数据块部署方案", 《信息与控制》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116185645A (zh) * 2023-04-28 2023-05-30 联通沃音乐文化有限公司 基于神经网络的集群资源智能调度方法、系统及存储介质
CN116185645B (zh) * 2023-04-28 2023-08-04 联通沃音乐文化有限公司 基于神经网络的集群资源智能调度方法、系统及存储介质

Similar Documents

Publication Publication Date Title
US10185592B2 (en) Network storage device using dynamic weights based on resource utilization
US10534542B2 (en) Dynamic core allocation for consistent performance in a non-preemptive scheduling environment
KR101957006B1 (ko) 네트워크 액세스가능 블록 저장을 위한 조정된 승인 제어
US20190324819A1 (en) Distributed-system task assignment method and apparatus
CN108845874B (zh) 资源的动态分配方法及服务器
US20110252166A1 (en) System and Methods for Allocating Shared Storage Resources
US8627330B2 (en) Workload manager managing a workload of an enterprise data warehouse
CN103699433B (zh) 一种于Hadoop平台中动态调整任务数目的方法及系统
US10394606B2 (en) Dynamic weight accumulation for fair allocation of resources in a scheduler hierarchy
CN105718316A (zh) 一种作业调度的方法及装置
WO2017092377A1 (zh) 一种移动通信系统内动态资源分配方法和装置
CN115357368A (zh) 一种基于异构环境感知的MapReduce作业调度方法
CN107203256B (zh) 一种网络功能虚拟化场景下的节能分配方法与装置
JP4121525B2 (ja) リソース利用率を制御する方法およびコンピュータシステム
CN109298949B (zh) 一种分布式文件系统的资源调度系统
Kambatla et al. UBIS: Utilization-aware cluster scheduling
CN113014408A (zh) 分布式系统及其管理方法
CN109144664B (zh) 一种基于用户服务质量需求差异的虚拟机动态迁移方法
Peng et al. BQueue: A coarse-grained bucket QoS scheduler
KR20150070930A (ko) 최적 비용을 고려한 마이그레이션 자원 할당 시스템 및 할당 방법
CN111208943B (zh) 存储系统的io压力调度系统
CN118567865B (zh) 基于算力优化的集群数据采集方法、系统、设备及介质
CN110955522A (zh) 一种协调性能隔离和数据恢复优化的资源管理方法及系统
CN112433670B (zh) 一种针对去中心化架构存储系统的迁移任务调度方法
JP7350694B2 (ja) 制御装置、情報処理装置、情報処理制御方法及びコンピュータプログラム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20221118