CN110850956B - 一种基于数据覆盖集的分布式运算集群动态能耗管理方法 - Google Patents
一种基于数据覆盖集的分布式运算集群动态能耗管理方法 Download PDFInfo
- Publication number
- CN110850956B CN110850956B CN201911033382.7A CN201911033382A CN110850956B CN 110850956 B CN110850956 B CN 110850956B CN 201911033382 A CN201911033382 A CN 201911033382A CN 110850956 B CN110850956 B CN 110850956B
- Authority
- CN
- China
- Prior art keywords
- cluster
- data coverage
- data
- coverage set
- nodes
- 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.)
- Active
Links
- 238000005265 energy consumption Methods 0.000 title claims abstract description 13
- 238000007726 management method Methods 0.000 title claims abstract description 11
- 238000012423 maintenance Methods 0.000 claims abstract description 4
- 238000000034 method Methods 0.000 claims description 8
- 230000005059 dormancy Effects 0.000 claims description 7
- 238000012360 testing method Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000007958 sleep Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/329—Power saving characterised by the action undertaken by task scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (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
一种基于数据覆盖集的分布式运算集群动态能耗管理方法,包括以下步骤:步骤1,准备阶段:在集群中划分出若干数量的互不相同的数据覆盖集;划分时要求所有数据覆盖集的并集应涵盖集群中的所有节点;步骤2,工作阶段:启动集群时,选择列表内的一个数据覆盖集,并启用其中的所有节点,在启动完成后,除数据覆盖集外,工作节点的数量依据需要动态调整;步骤3,调整阶段:在集群运行一段时间后,要更换使用的数据覆盖集;切换间隔应以天为单位,将其与集群的关机维护相结合,即选择在集群定期维护时更换数据覆盖集合。本发明动态的调整工作节点数量,可以在保证数据可用性的情况下,降低能耗,减少设备损耗,从而大幅度降低运行成本。
Description
技术领域
本发明属于数据中心能耗管理领域,特别涉及一种基于数据覆盖集的分布式运算集群动态能耗管理方法。
背景技术
诸如雅虎公司的Hadoop一类的分布式运算框架可对海量的数据进行有效处理。Hadoop的实现依赖于具有高容错性的分布式文件系统(HDFS)。HDFS被设计用来部署在大量的廉价硬件上,这些硬件上分布着数据块的多个副本,为用户提供快速的数据访问并可在部分机器故障时,通过副本继续提供服务。
HDFS采用主/从节点结构,典型架构如图1所示。每个集群包含一个主节点和多个数据节点,主节点负责管理文件系统命名空间以及用户的文件访问;存储着数据块的数据节点分布在不同的机架上,提供直接的数据读取和写入服务。
在HDFS中,文件通常被切分成一定大小的数据块,并分布在多个数据节点中,主节点保存着文件数据块的分布信息,用户向主节点发出基于文件的操作(打开、关闭、重命名或删除等)请求,在涉及到文件数据的读取和写入时,主节点返回目标数据块在集群中的位置,用户可直接和对应数据节点交互完成操作。
在分布式运算集群中,为了保证数据的可用性,通常需要同时运行足够数量的数据节点,部分节点虽然没有计算任务,但是却因此无法进入休眠。
按传统方法,由于数据块存放节点的选择没有考虑数据可用性的因素,数据块分布随机性高,难以确定保证数据可用性所需的节点集合,导致大量节点无法进入休眠。
为降低集群能耗,减少启用机器的数量,可改用“数据覆盖集”来确保数据可用性,也就是保证一个集群子集的运行,该子集至少包含了所有数据块的一个副本。采用数据覆盖集后,就能依据性能需求灵活地启用/关闭集合外的节点,而不必顾虑数据的可用性。
但在目前的技术实践中,采用数据覆盖集时,通常集群内仅建立一个数据覆盖集,此时,集群的可用性就对数据覆盖集内机器的可靠性有了极大的依赖。同时,数据覆盖集的持续工作也会导致机器寿命/性能下降较快。
发明内容
本发明的目的在于提供一种基于数据覆盖集的分布式运算集群动态能耗管理方法,以解决上述问题。
为实现上述目的,本发明采用以下技术方案:
一种基于数据覆盖集的分布式运算集群动态能耗管理方法,包括以下步骤:
步骤1,准备阶段:在集群中划分出若干数量的互不相同的数据覆盖集;划分时要求所有数据覆盖集的并集应涵盖集群中的所有节点;
步骤2,工作阶段:启动集群时,选择列表内的一个数据覆盖集,并启用其中的所有节点,在启动完成后,除数据覆盖集外,工作节点的数量依据需要动态调整;
步骤3,调整阶段:在集群运行一段时间后,要更换使用的数据覆盖集;切换间隔应以天为单位,将其与集群的关机维护相结合,即选择在集群定期维护时更换数据覆盖集合。
进一步的,步骤1中具体包括以下步骤:
1)假设集群中包含了S个机架,将每个机架均分为W个区域,并将得到的S*W个区域进行编号;
2)将每个数据覆盖集的大小设定为n个区域,则每个数据覆盖集包括的区域编号依次为(1~n)、(2~n+1)、(3~n+2)…(WS,1~n-1);
3)完成划分后,集群中将包含W*S个数据覆盖集,且不同数据覆盖集之间的最大重叠比例为1-1/n;
4)完成数据覆盖集的划分后,将结果保存到主节点中,供未来调度使用。
进一步的,在选择n时,使n不等于S;在划分时,使单个数据覆盖集的大小在集群整体的10%~30%之间;要求每个数据覆盖集中都包含数据块的一个副本,则副本数量的最小值为[WS/n]+1。
进一步的,步骤2中调整方式如下:
1)首先提前测试单个服务器的任务上限,在运行时得到当前可用节点的总体服务能力;初始状态下集群的服务能力取决于当前使用的数据覆盖集的大小;
2)在运行中,如果主节点检测到用户对集群的需求增大,且超过了集群此时可用节点的负载能力,唤醒休眠中的节点;如果主节点检测到用户需求远低于当前服务能力,减少工作节点,此时不可关闭数据覆盖集中的节点;如果负载与需求相对均衡,则不需要调整工作节点数量;
3)在选择启用(关闭)节点时,应优先唤醒保存着当前用户/应用所需数据块数量较多的节点。
进一步的,步骤3中更换过程如下:
1)唤醒集群中尚在休眠中的节点,并同步数据,将唤醒的节点中的数据更新至最新版本;
2)从数据覆盖集列表中选择下一段时间使用的数据覆盖集,选择时,将列表中的所有数据覆盖集与先前使用的集合作比较,分别计算每个数据覆盖集与该集合的重叠部分的大小,并在重叠部分最小的数据覆盖集中随机选择下一时间段内使用的数据覆盖集;
3)根据历史数据预估重新启动集群时的服务需求,决定需要启动的机器数量,并在选定的数据覆盖集外选择相应数量的额外机器;
4)在重新启动集群时,改为启动第2)步中选择的数据覆盖集中的节点和第3)步中选择的额外工作节点。
与现有技术相比,本发明有以下技术效果:
通过启用最小覆盖集的概念,保证每一时刻,数据集中的每个数据块在启动的机器上至少有一个副本,从而确保数据中心的正常工作,并在此基础上结合数据节点的按需启用,在保证数据可用性的情况下,启动额外的非必需节点,增加工作节点数量,可提升集群性能、处理速度;相应地,关闭非必需节点,减少工作节点的数量,可降低集群整体的能耗,减少设备损耗,大幅度降低电力成本和设备成本。
当运行成本不是需要考虑的首要因素时,本发明为适应性能需要提供了灵活的应对策略。在划分数据覆盖集时,选择不同的集合容量,就能生成不同的方案,数据覆盖集容量越大的方案,由于包含节点数量多,能适应的负载量也就越大。
不同层级的方法对应着不同的应用场景。在负载相对稳定的情况下,选用容量大的数据覆盖集,既可满足性能需求,也能提高集群稳定性;在负载变化频繁的情况下,选用容量较小的数据覆盖集,通过及时启用/关闭集合外工作节点来适应负载,可在满足用户性能需求的情况下,尽可能地降低能耗。
附图说明
图1为HDFS的架构示意图。
图2为分布式运算集群动态能耗管理方法工作流程图。
图3为本发明区域编号示意图。
具体实施方式
以下结合附图对本发明进一步说明:
请参阅图2和图3,一种基于数据覆盖集的分布式运算集群动态能耗管理方法,包括以下步骤:
步骤1,准备阶段:在集群中划分出若干数量的互不相同的数据覆盖集;划分时要求所有数据覆盖集的并集应涵盖集群中的所有节点;
步骤2,工作阶段:启动集群时,选择列表内的一个数据覆盖集,并启用其中的所有节点,在启动完成后,除数据覆盖集外,工作节点的数量依据需要动态调整;
步骤3,调整阶段:在集群运行一段时间后,要更换使用的数据覆盖集;切换间隔应以天为单位,将其与集群的关机维护相结合,即选择在集群定期维护时更换数据覆盖集合。
步骤1中具体包括以下步骤:
1)假设集群中包含了S个机架,将每个机架均分为W个区域,并将得到的S*W个区域进行编号;
2)将每个数据覆盖集的大小设定为n个区域,则每个数据覆盖集包括的区域编号依次为(1~n)、(2~n+1)、(3~n+2)…(WS,1~n-1);
3)完成划分后,集群中将包含W*S个数据覆盖集,且不同数据覆盖集之间的最大重叠比例为1-1/n;
4)完成数据覆盖集的划分后,将结果保存到主节点中,供未来调度使用。
在选择n时,使n不等于S,否则可能出现一个数据块的所有副本都保存在同一个机架上的情况;在划分时,使单个数据覆盖集的大小在集群整体的10%~30%之间;按以上方法划分集群后,对数据块的副本数量也有了限制,要求每个数据覆盖集中都包含数据块的一个副本,则副本数量的最小值为[WS/n]+1。
与以往的分布式集群工作方式相比,除了动态增减工作节点外,本方案还要求对集群数据副本管理方式进行修改。集群运行过程中,需要在传统的副本生成、更改机制上做出部分调整。
首先,在为新创建的数据块选择副本存放节点时,要保证每个数据覆盖集中至少存在一个副本。以前述划分方法为例,在生成新的数据块时,首先在区域1~n中的任一区域K中的任意机器上创建第一个副本。之后在区域K+n、K+2n…的任意机器上分别添加副本,直到每个数据覆盖集中都包含新数据块的一个副本。按如上方式,由于每个区域都是n个不同数据覆盖集的一部分,且每间隔n个区域添加一个副本可保证前后两个副本所在的数据覆盖集没有重叠,因此只需创建[WS/n]+1个副本即可满足需求。
其次,在处理涉及到数据块副本数量的操作时,主节点回复客户时只计算当前正在工作的节点中的副本而忽略休眠节点中的副本,以避免不必要的新副本生成。
步骤2中调整方式如下:
1)首先提前测试单个服务器的任务上限,在运行时得到当前可用节点的总体服务能力;由于集群最初只启用了数据覆盖集中的节点,故初始状态下集群的服务能力取决于当前使用的数据覆盖集的大小;
2)在运行中,如果主节点检测到用户对集群的需求增大,且超过了集群此时可用节点的负载能力,唤醒休眠中的节点;如果主节点检测到用户需求远低于当前服务能力(即需求与服务能力的差距超过一个节点的服务能力),减少工作节点,此时不可关闭数据覆盖集中的节点;如果负载与需求相对均衡,则不需要调整工作节点数量;
3)由于每个节点上保存的数据块不尽相同,在选择启用(关闭)节点时,应优先唤醒保存着当前用户/应用所需数据块数量较多的节点。
步骤3中更换过程如下:
1)唤醒集群中尚在休眠中的节点,并同步数据,将唤醒的节点中的数据更新至最新版本;
2)从数据覆盖集列表中选择下一段时间使用的数据覆盖集,选择时,将列表中的所有数据覆盖集与先前使用的集合作比较,分别计算每个数据覆盖集与该集合的重叠部分的大小,并在重叠部分最小的数据覆盖集中随机选择下一时间段内使用的数据覆盖集;
3)根据历史数据预估重新启动集群时的服务需求,决定需要启动的机器数量,并在选定的数据覆盖集外选择相应数量的额外机器;
4)在重新启动集群时,改为启动第2)步中选择的数据覆盖集中的节点和第3)步中选择的额外工作节点。
Claims (1)
1.一种基于数据覆盖集的分布式运算集群动态能耗管理方法,其特征在于,包括以下步骤:
步骤1,准备阶段:在集群中划分出若干数量的互不相同的数据覆盖集;划分时要求所有数据覆盖集的并集涵盖集群中的所有节点;
步骤2,工作阶段:启动集群时,选择列表内的一个数据覆盖集,并启用其中的所有节点,在启动完成后,除数据覆盖集外,工作节点的数量依据需要动态调整;
步骤3,调整阶段:在集群运行一段时间后,要更换使用的数据覆盖集;切换间隔以天为单位,将其与集群的关机维护相结合,即选择在集群定期维护时更换数据覆盖集合;
步骤3中更换过程如下:
1)唤醒集群中尚在休眠中的节点,并同步数据,将唤醒的节点中的数据更新至最新版本;
2)从数据覆盖集列表中选择下一段时间使用的数据覆盖集,选择时,将列表中的所有数据覆盖集与先前使用的集合作比较,分别计算每个数据覆盖集与该集合的重叠部分的大小,并在重叠部分最小的数据覆盖集中随机选择下一时间段内使用的数据覆盖集;
3)根据历史数据预估重新启动集群时的服务需求,决定需要启动的机器数量,并在选定的数据覆盖集外选择相应数量的额外机器;
4)在重新启动集群时,改为启动第2)步中选择的数据覆盖集中的节点和第3)步中选择的额外工作节点;
步骤1中具体包括以下步骤:
1)假设集群中包含了S个机架,将每个机架均分为W个区域,并将得到的S*W个区域进行编号;
2)将每个数据覆盖集的大小设定为n个区域,则每个数据覆盖集包括的区域编号依次为(1~n)、(2~n+1)、(3~n+2)…(WS-1~WS,1~n-2)、(WS,1~n-1);
3)完成划分后,集群中将包含W*S个数据覆盖集,且不同数据覆盖集之间的最大重叠比例为1-1/n;
4)完成数据覆盖集的划分后,将结果保存到主节点中,供未来调度使用;
在选择n时,使n不等于S;在划分时,使单个数据覆盖集的大小在集群整体的10%~30%之间;要求每个数据覆盖集中都包含数据块的一个副本,则每个数据块副本数量的最小值为[WS/n]+1;
步骤2中调整方式如下:
1)首先提前测试单个服务器的任务上限,在运行时计算得到当前可用节点的总体服务能力;初始状态下集群的服务能力取决于当前使用的数据覆盖集的大小;
2)在运行中,如果主节点检测到用户对集群的需求增大,且超过了集群此时可用节点的负载能力,唤醒休眠中的节点;如果主节点检测到用户需求远低于当前服务能力,减少工作节点,此时不可关闭数据覆盖集中的节点;如果负载与需求相对均衡,则不需要调整工作节点数量;
3)在选择启用节点时,优先唤醒保存着当前用户/应用所需数据块数量较多的节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911033382.7A CN110850956B (zh) | 2019-10-28 | 2019-10-28 | 一种基于数据覆盖集的分布式运算集群动态能耗管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911033382.7A CN110850956B (zh) | 2019-10-28 | 2019-10-28 | 一种基于数据覆盖集的分布式运算集群动态能耗管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110850956A CN110850956A (zh) | 2020-02-28 |
CN110850956B true CN110850956B (zh) | 2021-11-19 |
Family
ID=69598746
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911033382.7A Active CN110850956B (zh) | 2019-10-28 | 2019-10-28 | 一种基于数据覆盖集的分布式运算集群动态能耗管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110850956B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111753997B (zh) * | 2020-06-28 | 2021-08-27 | 北京百度网讯科技有限公司 | 分布式训练方法、系统、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102207891A (zh) * | 2011-06-10 | 2011-10-05 | 浙江大学 | 对数据划分分布式环境实现动态划分和负载均衡的方法 |
CN102597963A (zh) * | 2009-10-26 | 2012-07-18 | 国际商业机器公司 | 集群中的动态副本卷交换 |
CN103530317A (zh) * | 2013-09-12 | 2014-01-22 | 杭州电子科技大学 | 云存储系统中一种能耗自适应的副本管理方法 |
CN104852819A (zh) * | 2015-05-21 | 2015-08-19 | 杭州天宽科技有限公司 | 一种基于异构MapReduce集群的面向SLA的能耗管理方法 |
CN105306547A (zh) * | 2015-09-29 | 2016-02-03 | 杭州天宽科技有限公司 | 提高云计算系统能量有效性的数据摆放及节点调度方法 |
CN106547854A (zh) * | 2016-10-20 | 2017-03-29 | 天津大学 | 基于贪心萤火虫算法的分布式文件系统存储优化节能方法 |
-
2019
- 2019-10-28 CN CN201911033382.7A patent/CN110850956B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102597963A (zh) * | 2009-10-26 | 2012-07-18 | 国际商业机器公司 | 集群中的动态副本卷交换 |
CN102207891A (zh) * | 2011-06-10 | 2011-10-05 | 浙江大学 | 对数据划分分布式环境实现动态划分和负载均衡的方法 |
CN103530317A (zh) * | 2013-09-12 | 2014-01-22 | 杭州电子科技大学 | 云存储系统中一种能耗自适应的副本管理方法 |
CN104852819A (zh) * | 2015-05-21 | 2015-08-19 | 杭州天宽科技有限公司 | 一种基于异构MapReduce集群的面向SLA的能耗管理方法 |
CN105306547A (zh) * | 2015-09-29 | 2016-02-03 | 杭州天宽科技有限公司 | 提高云计算系统能量有效性的数据摆放及节点调度方法 |
CN106547854A (zh) * | 2016-10-20 | 2017-03-29 | 天津大学 | 基于贪心萤火虫算法的分布式文件系统存储优化节能方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110850956A (zh) | 2020-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11360854B2 (en) | Storage cluster configuration change method, storage cluster, and computer system | |
US9201747B2 (en) | Real time database system | |
US20140108532A1 (en) | System and method for supporting guaranteed multi-point delivery in a distributed data grid | |
CN103034739A (zh) | 一种分布式存储系统及其更新和查询方法 | |
CN104468651B (zh) | 分布式多副本数据存储方法及装置 | |
CN104679594B (zh) | 一种中间件分布式计算方法 | |
CN102917025A (zh) | 一种云计算平台的业务迁移方法 | |
CN113315710A (zh) | 基于异步动态路由的中台api网关管理配置及扩展方法 | |
CN110188084A (zh) | 一种分布式文件存储系统及文件存储方法 | |
EP4293510A1 (en) | Data migration method and apparatus, and device, medium and computer product | |
CN114363350B (zh) | 一种服务治理系统及方法 | |
CN110850956B (zh) | 一种基于数据覆盖集的分布式运算集群动态能耗管理方法 | |
CN102508881A (zh) | 一种电力信息系统内存数据库的多节点集群方法 | |
CN111400036A (zh) | 基于服务器集群的云应用管理系统、方法、装置及介质 | |
CN107239235B (zh) | 一种多控多活raid同步方法及系统 | |
CN114500416B (zh) | 用于最多一次消息投递的投递方法和投递系统 | |
CN113204424B (zh) | 一种优化Raft集群的方法、装置及存储介质 | |
CN107943615B (zh) | 基于分布式集群的数据处理方法与系统 | |
CN117201278A (zh) | 一种实现信创环境云原生应用主备容灾高可用场景的方法 | |
CN104052799A (zh) | 一种利用资源环实现高可用存储的方法 | |
CN110502582B (zh) | 一种分布式数据库的在线扩容方法 | |
CN115905163A (zh) | 一种数据迁移方法、装置、设备及介质 | |
CN113766018A (zh) | 一种业务驱动的Web应用负载均衡任务分配方法 | |
CN115687250A (zh) | 一种存储方法、设备、系统和计算机存储介质 | |
CN116112499B (zh) | 数据采集系统的构建方法及数据采集方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20240401 Address after: 101, Section B, 1st Floor, No. 203, Zhongyuan 2nd District, Wangjing Lize, Chaoyang District, Beijing, 100102 Patentee after: Beijing Cool Data Technology Co.,Ltd. Country or region after: China Address before: 710049 No. 28 West Xianning Road, Shaanxi, Xi'an Patentee before: XI'AN JIAOTONG University Country or region before: China |
|
TR01 | Transfer of patent right |