CN108089921A - 用于云端大数据运算架构的服务器及其运算资源最佳化方法 - Google Patents
用于云端大数据运算架构的服务器及其运算资源最佳化方法 Download PDFInfo
- Publication number
- CN108089921A CN108089921A CN201611095718.9A CN201611095718A CN108089921A CN 108089921 A CN108089921 A CN 108089921A CN 201611095718 A CN201611095718 A CN 201611095718A CN 108089921 A CN108089921 A CN 108089921A
- Authority
- CN
- China
- Prior art keywords
- task
- data
- nodes
- server
- computing
- 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.)
- Granted
Links
- 238000005457 optimization Methods 0.000 title claims abstract description 78
- 238000000034 method Methods 0.000 title claims abstract description 76
- 238000004364 calculation method Methods 0.000 claims description 100
- 230000003321 amplification Effects 0.000 claims description 53
- 238000003199 nucleic acid amplification method Methods 0.000 claims description 53
- 238000007726 management method Methods 0.000 claims description 31
- 230000009897 systematic effect Effects 0.000 claims description 30
- 238000013500 data storage Methods 0.000 claims description 24
- 238000012544 monitoring process Methods 0.000 claims description 9
- 238000005070 sampling Methods 0.000 claims description 6
- 238000004519 manufacturing process Methods 0.000 claims 2
- 230000003416 augmentation Effects 0.000 abstract 1
- 238000004458 analytical method Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- 241001269238 Data Species 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 239000003638 chemical reducing agent Substances 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 241000894007 species Species 0.000 description 1
- 230000009885 systemic effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Computational Linguistics (AREA)
- Computational Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Algebra (AREA)
- Probability & Statistics with Applications (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
一种用于云端大数据运算架构的服务器及其云端运算资源最佳化方法。服务器运行一动态扩增系统,以执行下列操作:接收一任务信息;基于任务信息所记载的一待执行任务,执行一轮廓程序以产生一轮廓文件;执行一分类程序,以判断待执行任务的一任务类别;执行一预测程序,以得到待执行任务的相对于多个运算节点数量的多个预测执行时间、运算节点类型及系统参数;执行一最佳化程序,以决定待执行任务的实际运算节点数量运算;以及,传送一最佳化输出信息至一管理服务器,以使管理服务器分配至少一数据运算系统来执行待执行任务的一程序码文件。
Description
【技术领域】
本发明是关于一种用于云端大数据运算架构的服务器及其云端运算资源最佳化方法。具体而言,本发明的服务器运行一动态扩增系统以执行一轮廓程序、一分类程序、一预测程序以及一最佳化程序来决定待执行任务的实际运算节点数量、运算节点类型及系统参数。
【背景技术】
随着科技的发展,许多云端服务提供商(例如:Amazon、Google、VMware、Microsoft等)皆提供云端运算服务,并根据使用者的需求配置虚拟主机供使用者进行数据的处理。云端运算服务可采用Hadoop运算框架、Spark运算框架或其他多种云端运算框架,来提供处理大数据运算的平台。在这种公有云服务的架构下,云端服务提供商大多具有足够的硬件资源,以提供看似无限的运算资源,故当使用者欲执行的程序复杂度及欲处理的数据量增加时,使用者可直接自行调整或通过设定所需的虚拟主机的数量及其系统参数(即硬件与软件的配置)来满足自身的需求。
然而,虚拟主机的数量及其系统参数的调整或设定皆是靠使用者个人的经验所决定的,并非经由有效的分析欲执行的程序复杂度及欲处理的数据量所决定的,特别是目前的云端服务提供商未提供此分析服务。此外,若进一步考量运算资源有限的情况(即虚拟主机的数量及其系统参数的设定有所限制的情况),则使用者自行所调整或设定的虚拟主机的数量及其系统参数将会造成有限资源分配不公,并且使得有限资源无法达到最佳化的利用,而使得运算系统整体效益低落。
有鉴于此,本领域亟需一种云端运算资源最佳化机制,在运算资源有限的情况下,可自动配置运算资源以及进行虚拟主机的扩增或删减,而使得有限资源达到最佳化的利用。
【发明内容】
本发明的目的在于提供一种云端运算资源最佳化机制,其是在云端大数据运算架构中运行一动态扩增系统,以对一任务信息所记载的一待执行任务,进行轮廓分析。接着,动态扩增系统基于轮廓分析的结果,对待执行任务进行分类,并基于分类结果,指定该待执行任务的运算节点类型及系统参数,以及预测待执行任务相对于多个运算节点数量的多个预测执行时间。随后,动态扩增系统根据待执行任务的一使用者定义属性与这些预测执行时间、至少一其他任务每一者的一其他使用者定义属性及多个其他预测执行时间以及云端大数据运算架构的最大运算资源,决定待执行任务的一实际运算节点数量,并将待执行任务的实际运算节点数量、运算节点类型及系统参数提供至云端大数据运算架构的管理服务器,以使其得以分配适当的运算资源给待执行任务。
据此,本发明云端运算资源最佳化机制可套用于采用各种云端运算框架(例如:Hadoop运算框架及Spark运算框架)的云端大数据运算架构中,以在运算资源有限的情况下,自动配置运算资源以及进行虚拟主机的扩增或删减,而使得有限资源达到最佳化的利用,进而避免因使用者自行调整或设定的虚拟主机的数量及其系统参数所造成的有限资源分配不公或运算系统整体效益低落。
为达上述目的,本发明揭露一种用于一云端大数据(Big Data)运算架构的服务器,其包含一收发器及一处理器。该收发器连接至一网络。该处理器电性连接至该收发器,用以运行一动态扩增系统(Dynamic Scaling System),以通过该收发器接收一任务信息。该任务信息记载一待执行任务的一使用者定义属性、一程序码文件及多个数据文件。该程序码文件及这些数据文件存储于一数据存储系统,其运行于该云端大数据运算架构中的一数据存储服务器总成中。动态扩增系统更被运行以执行一轮廓程序,包含下列步骤:对该任务信息中所记载的这些数据文件进行取样,以决定多个取样数据文件以及产生一预先执行信息,该预先执行信息记载这些取样数据文件及该待执行任务的该程序码文件;通过该收发器传送该预先执行信息至该云端大数据运算架构的一大数据运算服务器总成,以使该大数据运算服务器总成中所运行的一取样数据运算系统针对这些取样数据文件,执行该程序码文件,并根据该程序码文件的一执行结果,产生一轮廓文件;以及通过该收发器,自该大数据运算服务器总成,接收该轮廓文件。接着,动态扩增系统更被运行以执行一分类程序,包含下列步骤:基于一分类模型,将该轮廓文件与该分类模型进行比对,以判断该待执行任务的一任务类别。随后,动态扩增系统更被运行以执行一预测程序,包含下列步骤:基于一预测模型中对应该任务类别的一子预测模型所记载的一运算节点类型及一系统参数,指定该运算节点类型及该系统参数予该待执行任务;以及基于该子预测模型,根据该任务类别及该轮廓文件,产生该待执行任务的一执行时间预测曲线,得到该待执行任务的相对于多个运算节点数量的多个预测执行时间,这些运算节点数量是一对一地对应至这些预测执行时间。此外,动态扩增系统更被运行以执行一最佳化程序,包含下列步骤:判断是否存在至少一其他任务;当存在该至少一其他任务时,根据该待执行任务的该使用者定义属性与这些预测执行时间、各该至少一其他任务的一其他使用者定义属性及多个其他预测执行时间以及该大数据运算服务器总成的一最大运算资源,决定该待执行任务的一实际运算节点数量;产生一最佳化输出信息,该最佳化输出信息记载该待执行任务的该程序码文件、这些数据文件、该实际运算节点数量、该运算节点类型及该系统参数。另外,动态扩增系统更被运行以通过该收发器,传送该最佳化输出信息至该云端大数据运算架构的一管理服务器,以使该管理服务器所运行的一管理系统根据该最佳化输出信息,分配该大数据运算服务器总成中所运行的至少一数据运算系统来针对该待执行任务的这些数据文件,执行该程序码文件,其中该至少一数据运算系统的一数目等于该实际运算节点数量。
此外,本发明更揭露一种用于一云端大数据(Big Data)运算架构的一服务器的云端运算资源最佳化方法。该服务器包含一收发器及一处理器。该收发器连接至一网络。该处理器电性连接至该收发器,用以运行一动态扩增系统(Dynamic Scaling System)以执行该云端运算资源最佳化方法。该云端运算资源最佳化方法包含步骤:通过该收发器接收一任务信息。该任务信息记载一待执行任务的一使用者定义属性、一程序码文件及多个数据文件。该程序码文件及这些数据文件存储于一数据存储系统,其运行于该云端大数据运算架构中的一数据存储服务器总成中。该云端运算资源最佳化方法包含步骤:执行一轮廓程序,其包含下列步骤:对该任务信息中所记载的这些数据文件进行取样,以决定多个取样数据文件以及产生一预先执行信息,该预先执行信息记载这些取样数据文件及该待执行任务的该程序码文件;通过该收发器传送该预先执行信息至该云端大数据运算架构的一大数据运算服务器总成,以使该大数据运算服务器总成中所运行的一取样数据运算系统针对这些取样数据文件,执行该程序码文件,并根据该程序码文件的一执行结果,产生一轮廓文件;以及通过该收发器,自该大数据运算服务器总成,接收该轮廓文件。该云端运算资源最佳化方法更包含步骤:执行一分类程序,其包含步骤:基于一分类模型,将该轮廓文件与该分类模型进行比对,以判断该待执行任务的一任务类别。该云端运算资源最佳化方法更包含步骤:执行一预测程序,其包含步骤:基于一预测模型中对应该任务类别的一子预测模型所记载的一运算节点类型及一系统参数,指定该运算节点类型及该系统参数予该待执行任务;以及基于该子预测模型,根据该任务类别及该轮廓文件,产生该待执行任务的一执行时间预测曲线,得到该待执行任务的相对于多个运算节点数量的多个预测执行时间,这些运算节点数量是一对一地对应至这些预测执行时间。该云端运算资源最佳化方法更包含步骤:执行一最佳化程序,其包含步骤:判断是否存在至少一其他任务;当存在该至少一其他任务时,根据该待执行任务的该使用者定义属性与这些预测执行时间、各该至少一其他任务的一其他使用者定义属性及多个其他预测执行时间以及该大数据运算服务器总成的一最大运算资源,决定该待执行任务的一实际运算节点数量;产生一最佳化输出信息,该最佳化输出信息记载该待执行任务的该程序码文件、这些数据文件、该实际运算节点数量、该运算节点类型及该系统参数。此外,该云端运算资源最佳化方法更包含步骤:通过该收发器,传送该最佳化输出信息至该云端大数据运算架构的一管理服务器,以使该管理服务器所运行的一管理系统根据该最佳化输出信息,分配该大数据运算服务器总成中所运行的至少一数据运算系统来针对该待执行任务的这些数据文件,执行该程序码文件,其中该至少一数据运算系统的一数目等于该实际运算节点数量。
在参阅附图及随后描述的实施方式后,本领域的技术人员便可了解本发明的其他目的,以及本发明的技术手段及实施态样。
【附图说明】
图1是本发明的服务器1的示意图;
图2是描绘本发明的云端大数据运算架构的一实施例;
图3是描绘本发明的一任务的执行时间预测曲线;
图4是本发明的最佳化程序中比值计算的示意图;
图5是描绘本发明的云端大数据运算架构的另一实施例;
图6是描绘本发明的监控程序更新一任务的执行时间预测曲线;以及
图7至第11图是本发明的云端运算资源最佳化方法流程图。
【具体实施方式】
以下将通过实施例来解释本发明内容,本发明的实施例并非用以限制本发明须在如实施例所述的任何特定的环境、应用或特殊方式方能实施。因此,关于实施例的说明仅为阐释本发明的目的,而非用以限制本发明。需说明者,以下实施例及附图中,与本发明非直接相关的元件已省略而未绘示,且附图中各元件间的尺寸关系仅为求容易了解,并非用以限制实际比例。
本发明第一实施例如图1至图4所示。图1是本发明的服务器1的示意图。服务器1包含一收发器11及一处理器13。收发器11连接至一网络,例如:一网际网络、一区域网络、一电信网络或其任意组合的网络。处理器13电性连接至收发器11,用以运行一动态扩增系统130,以通过收发器11接收一任务信息。任务信息记载一待执行任务的一使用者定义属性、一程序码文件及多个数据文件。程序码文件及这些数据文件存储于一数据存储系统41,其运行于一云端大数据运算架构中的一数据存储服务器总成4中,如图2所示。
此外,如图2所示,动态扩增系统130更被运行以执行一轮廓程序131。于轮廓程序131中,动态扩增系统130先对任务信息中所记载的这些数据文件进行取样,以决定多个取样数据文件以及产生一预先执行信息。预先执行信息记载这些取样数据文件及待执行任务的程序码文件。取样数据文件是用于评估待执行任务所需运算的资源及时间。
接着,动态扩增系统130被运行以通过收发器11传送预先执行信息至云端大数据运算架构的一大数据运算服务器总成2,以使大数据运算服务器总成2中所运行的一取样数据运算系统21针对这些取样数据文件,执行程序码文件,并根据程序码文件的一执行结果,产生一轮廓文件。接着,动态扩增系统130被运行以通过收发器11,自大数据运算服务器总成2,接收轮廓文件。待执行数据的轮廓文件包含一程序码文件剖析数据、一取样任务日志档及一系统资源使用纪录。
须说明者,于本实施例中,各取样数据运算系统(运算节点)21是大数据运算服务器总成2中的虚拟主机。各运算节点被配置共享实体硬件资源,例如:存储器容量、处理器核心数量、硬盘容量及图形处理器数量等。然而,于其他实施例中,各取样数据运算系统(运算节点)21亦可为大数据运算服务器总成2中的实体主机。
举例而言,当大数据运算服务器总成2接收预先执行信息后,通过Hadoop、Spark等运算框架的运算节点(即取样数据运算系统21),针对取样数据文件执行程序码文件,并记录执行程序码文件过程中呼叫的应用程序接口、输入各取样数据文件所产生的结果、执行各取样数据文件的时间、所使用的系统资源种类及各个目录(例如:app目录、framework目录及logs目录)存储的内容等,作为程序码文件的执行结果,再将执行结果的一部分组织为轮廓文件。据此,待执行数据的轮廓文件包含程序码文件剖析数据(例如:程序码文件执行过程中呼叫的应用程序接口)、取样任务日志档(例如:执行各取样数据文件的时间)及系统资源使用纪录(例如:所使用的系统资源量)。
须说明者,于其他实施例中,本发明可更进一步地考量待执行任务所需处理的数据量。在此情况下,动态扩增系统130于执行轮廓程序131前,会先判断待执行任务的这些数据文件的一文件大小,以及当这些数据文件的文件大小大于一临界值时,才执行轮廓程序131。反之,当这些数据文件的文件大小等于小于临界值时,则动态扩增系统130直接基于系统预设规则,指定待执行任务的运算节点数量、运算节点类型及系统参数,并将任务信息传送至云端大数据运算架构的管理服务器3。换言之,当待执行任务的这些数据文件的文件大小相当小时,此任务所需的执行时间应亦相当短,故可直接进入排程而等待被执行。
接着,动态扩增系统130更被运行以执行一分类程序133。分类程序133基于一分类模型,将轮廓文件与分类模型进行比对,以判断待执行任务的一任务类别。须说明者,分类模型具有多个标准任务类别,其可通过使用者自行设定,或者事先使用大量已知任务作为训练数据,经由机器学习演算法(例如:量化共轭梯度演算法)训练后而产生(即动态扩增系统130上线前经由机器学习演算法所产生)。此外,于动态扩增系统130执行一段时间后,动态扩增系统130可更基于过去已执行任务的轮廓文件,使用一分群演算法(例如:K-means分群法)修改这些标准任务类别,以使得标准任务类别的数量得以增减以及使得标准任务类别可更精准地区分后续所处理的任务特征。
随后,动态扩增系统130更被运行以执行一预测程序135。于判断待执行任务所属的任务类别后,预测程序135基于预测模型中对应此任务类别的一子预测模型所记载的一运算节点类型及一系统参数,指定运算节点类型及系统参数予待执行任务,以及基于子预测模型,根据任务类别及轮廓文件,产生待执行任务的执行时间预测曲线(例如:图3所示的执行时间预测曲线P1),得到待执行任务的相对于多个运算节点数量的多个预测执行时间。这些运算节点数量是一对一地对应至这些预测执行时间。
详言之,预测模型中的各子预测模型是记载分类模型中各标准任务类别所对应的运算节点类型及系统参数。据此,当得知待执行任务的任务类别后,预测程序135即可根据待执行任务的任务类别及轮廓文件,指定所属任务类别的运算节点类型及系统参数予待执行任务,并产生待执行任务的执行时间预测曲线,以评估待执行任务在各个运算节点数量被执行时所需的执行时间。
须说明者,于本实施例中,各数据运算系统(运算节点)23是大数据运算服务器总成2中的虚拟主机。各运算节点被配置以使用不同的硬件资源,例如:存储器容量、处理器核心数量、硬盘容量及图形处理器数量等。不同的运算节类型是代表具有不同的硬件资源,例如:区分为S大小的节点、M大小的节点、L大小的节点、XL大小的节点等。管理服务器3可根据不同待执行任务所需的运算节点类型,产生符合其需求的运算节点。此外,各运算节点的系统参数可包含「number of reducer」、「memory buffer size」等(即Hadoop和Spark系统中可设定及可调整的参数)。在待执行任务被执行后,待执行任务所被指定的运算节点类型及系统参数则不再改变。由于本领域的技术人员可基于本发明实施例的说明了解运算节点类型及系统参数的设定,故在此不再加以赘述。
此外,于其他实施例中,各数据运算系统(运算节点)23亦可为大数据运算服务器总成2中的实体主机。然而,由于本领域的技术人员可基于本发明实施例的说明了解如何将本发明云端运算资源最佳化机制套用至各运算节点为实体主机的态样中,故亦不在此加以赘述。
以待执行任务的执行时间预测曲线P1作为说明,请参考图3所示,横轴是代表运算节点数量N,纵轴是代表预测执行时间T。于预测程序135中,动态扩增系统130将待执行任务的轮廓文件输入至其任务类别对应的子预测模型中,并通过线性回归分析得到待执行任务的执行时间预测曲线P1,得到待执行任务于不同运算节点数量下被执行所对应的预测执行时间。举例而言,由图3可知,假设运算节点数量为1时,待执行任务的预测执行时间为4小时;运算节点数量为2时,待执行任务的预测执行时间为2小时;运算节点数量为3时,待执行任务的预测执行时间为1小时;以及运算节点数量为4时,待执行任务的预测执行时间为0.5小时。
须说明者,预测模型中的子预测模型的建立方式可通过机器学习演算法(例如:多层感知器回归演算法)达成,将大量已知任务类别及轮廓文件的任务作为训练数据,以分别使用不同数量的运算节点(即依据任务类别所决定的运算节点类型的运算节点)执行任务而获得实际执行时间,以建立子预测模型。此外,于动态扩增系统130执行一段时间后,动态扩增系统130可更基于过去已执行任务的轮廓文件及这些标准任务类别的更变,而重新建立预测模型中的各子预测模型。
此外,于本实施例中,前述的待分析任务的这些取样数据文件、轮廓文件、分类模型及预测模型可存储于数据存储服务器总成4中。数据存储服务器总成4可更运行一动态扩增数据存储系统43,用以管理并存储动态扩增系统130运行时所需使用及产生的各种数据。然而,于其他实施例中,服务器1可配置其存储器的特定存储资源,以供动态扩增系统130存储分类模型及预测模型。
另外,动态扩增系统130更被运行以执行一最佳化程序137。基于管理系统31所提供的运算资源信息(大数据运算服务器总成2的一最大运算资源)及排程中或执行中的任务,最佳化程序137判断是否存在至少一其他任务。当存在至少一其他任务时,最佳化程序137被执行以根据待执行任务的使用者定义属性与这些预测执行时间、各至少一其他任务的其他使用者定义属性及多个其他预测执行时间以及大数据运算服务器总成2的最大运算资源,决定待执行任务的一实际运算节点数量,并产生一最佳化输出信息。最佳化输出信息记载待执行任务的程序码文件、这些数据文件、实际运算节点数量、运算节点类型及系统参数。
举例而言,使用者定义属性包含一任务执行优先权值、一任务截止时间、一最小运算节点数量以及一最大运算节点数量。最佳化程序137根据下列公式计算待执行任务的一任务权重值(即任务价值):
其中,V是任务权重值,EP是任务执行优先权值且为一正整数,D是待执行任务的任务截止时间,以及WT是一执行等待时间。
须说明者,任务执行优先权值可由使用者自行设定,或由系统管理者基于企业管理的各种需求而设定。举例而言,系统管理者可基于员工的职位高低而进行设定,例如:助理的权限为1,课长的权限为2,部长的权限为3。此外,最小运算节点数量以及最大运算节点数量亦可由使用者自行决定,或由系统管理者基于企业管理的各种需求而设定。举例而言,职位越高的员工可使用较多的节点数量。
此外,最佳化程序137中,动态扩增系统130根据待执行任务的任务权重值与这些预测执行时间、各至少一其他任务的一其他任务权重值及这些其他预测执行时间以及大数据运算服务器总成2的最大运算资源,决定待执行任务的实际运算节点数量。举例而言,如图4所示,最佳化程序137计算待执行任务的任务权重值与这些预测执行时间每一者间的多个比值。
于图4的表格中,假设待执行任务为任务1,其任务权重值V1为2,故在运算节点数量N为1及预测执行时间为4小时的情况下,其比值(即每单位时间内任务的价值)为2/4;在运算节点数量N为2及预测执行时间为2小时的情况下,故其比值为2/2;以及在运算节点数量N为3及预测执行时间为1小时的情况下,故其比值为2/1。
此外,类似地,最佳化程序137中,动态扩增系统130更针对各至少一其他任务(例如:图4所示的任务2及任务3,任务2具有任务权重值V2为1,且任务3具有任务权重值V3为4),计算其他任务权重值与这些其他预测执行时间每一者间的多个其他比值。接着,最佳化程序137计算任一的这些比值与至少一其他任务每一者的任一的这些其它比值间的多个总和值,挑选这些总和值中的一最大总和值,将最大总和值所对应的比值的预测执行时间所对应的运算节点数量作为实际运算节点数量。
最佳化程序137是根据下列公式计算这些比值的这些总和值中的最大总和值:
其中,Vi是第i个任务的任务权重值,Ti(ni)是第i个任务于运算节点数量为ni时的预测执行时间,以及第i个任务的ni为一正整数且是介于其使用者定义属性中最小运算节点数量与最大运算节点数量间。
于其他实施例中,在至少一其他任务的其他实际运算节点数量有更新的时候,最佳化输出信息可更记载各至少一其他任务的一其他实际运算节点数量。换言之,于最佳化程序137中,动态扩增系统130更针对各至少一其他任务,将最大总和值所对应的其他比值的其它预测执行时间所对应的其他运算节点数量作为其他实际运算节点数量,而将其记载于最佳化输出信息中。然而,于其他实施例中,最佳化输出信息可更记载各至少一其他任务的一其他实际运算节点数量,不论至少一其他任务的其他实际运算节点数量是否有更新(即记载所有待执行任务以及正在执行的任务的实际运算节点数量)。
举例而言,请再次参考图4,假设大数据运算服务器总成2的最大运算资源为5个运算节点。须说明者,为了简化说明,此范例是假设任务1、任务2及任务3具有相同的任务类别,故运算节点类型是相同而使得管理服务器3会配置相同类型的运算节点以执行任务1、任务2及任务3。在此情况下,大数据运算服务器总成2的最大运算资源可简化而以运算节点数量作为单位。然而,本领域的技术人员可了解,大数据运算服务器总成2的最大运算资源实际上应以其可使用的硬件资源作为单位。
在任务1的运算节点数量为1,任务2的运算节点数量为1,以及任务3的运算节点数量为3的情况下,任务1、任务2及任务3的比值的总和值为4.75。在任务1的运算节点数量为2,任务2的运算节点数量为0(即任务2暂时不执行),以及任务3的运算节点数量为3的情况下,任务1、任务2及任务3的比值的总和值为5。为使得总任务价值最大,最佳化模块137挑选最大总和值为5来进行运算资源的分配,并将任务1的比值2/2的预测执行时间2小时所对应的运算节点数量为2作为任务1的实际运算节点数量,以及将任务3的比值4/1的预测执行时间1小时所对应的运算节点数量为3作为任务3的实际运算节点数量。
此外,动态扩增系统130更被运行以通过收发器11,传送最佳化输出信息至云端大数据运算架构的一管理服务器3。随后,管理服务器3所运行的一管理系统31根据最佳化输出信息,分配大数据运算服务器总成2中所运行的至少一数据运算系统(运算节点)23来针对待执行任务的这些数据文件,执行程序码文件,其中至少一数据运算系统(运算节点)23的一数目等于实际运算节点数量。如上述范例,管理服务器3将分配2个运算节点执行任务1,以及分配3个运算节点执行任务2。
须说明者,管理系统31可符合任一种云端运算框架的规范,其可包含扩展模块/应用程序接口、资源管理模块/应用程序接口等。然而,各种云端运算框架的管理系统31已为本领域的已知技术,故在此不在加以赘述。
本发明第二实施例请参考图5及图6。第二实施例是第一实施例的延伸。于本实施例中,动态扩增系统130被运行以执行一监控程序139。监控程序139于至少一数据运算系统(运算节点)23执行待执行任务的程序码文件时,更新待执行任务的执行时间预测曲线。
详言之,于至少一数据运算系统23执行待执行任务的程序码文件时,监控程序139被执行以自管理系统31得知待执行任务的实际执行进度,并比较待执行任务的实际执行进度与先前基于子预测模型所得到待执行任务的预测执行进度间的误差值,并根据误差值修正执行时间预测曲线。
举例而言,请参考图6,如先前所述,于执行时间预测曲线P1中,待执行任务的运算节点数量为1时,待执行任务的预测执行时间为4小时;运算节点数量为2时,待执行任务的预测执行时间为2小时;运算节点数量为3时,待执行任务的预测执行时间为1小时;以及运算节点数量为4时,待执行任务的预测执行时间为0.5小时。假设待执行任务的实际运算节点数量为2,若依据执行时间预测曲线P1,待执行任务的预测执行时间应为2小时。然而,监控程序139于待执行任务执行一半时,判断其实际执行时间仅需1小时,即只需原本预测执行时间的50%,因此监控程序139更新将执行时间预测曲线P1修正为更新后的执行时间预测曲线P1’,以使执行时间预测曲线更接近实际状况。
此外,执行时间预测曲线被更新后,动态扩增系统130可立即再次执行最佳化程序137,以使得各任务的实际运算节点数量得以更新,特别是当正被执行的任务所需的执行时间比预期慢的时候,最佳化程序137可判断是否增加运算节点数供此任务被执行。换言之,本发明的动态扩增系统130可于接获新的待执行任务或任一个执行时间预测曲线被更新时执行最佳化程序137,以不断地循环重新调整任务的实际运算节点数量。
然而,于另一实施例中,在考量动态扩增系统130的整体系统负荷,本发明的动态扩增系统130亦可定时地执行最佳化程序137(例如:半小时、一小时执行一次),或者当所接获的新的待执行任务的数量达到一预设值时才执行最佳化程序137。换言之,最佳化程序137被执行的条件可由系统管理者依据实际系统运作情况决定或调整,且这些条件皆属于本发明保护的范畴。
本发明第三实施例是一云端运算资源最佳化方法,其流程图如图7所示。云端运算资源最佳化方法适用于一云端大数据运算架构的一服务器(例如:前述实施例的服务器1)。服务器包含一收发器及一处理器。收发器连接至一网络。处理器电性连接至收发器,用以运行一动态扩增系统以执行云端运算资源最佳化方法。
首先,于步骤S701中,通过收发器接收一任务信息。任务信息记载一待执行任务的一使用者定义属性、一程序码文件及多个数据文件。程序码文件及这些数据文件存储于一数据存储系统,其运行于云端大数据运算架构中的一数据存储服务器总成中。
于步骤S703中,执行一轮廓程序。轮廓程序包含如图8所示的步骤。于步骤S801中,对任务信息中所记载的这些数据文件进行取样,以决定多个取样数据文件以及产生一预先执行信息。预先执行信息记载这些取样数据文件及待执行任务的程序码文件。随后,步骤S803中,通过收发器传送预先执行信息至云端大数据运算架构的一大数据运算服务器总成,以使大数据运算服务器总成中所运行的一取样数据运算系统针对这些取样数据文件,执行程序码文件,并根据程序码文件的一执行结果,产生一轮廓文件。于步骤S805中,通过收发器,自大数据运算服务器总成,接收轮廓文件。
接着,于步骤S705中,执行一分类程序。分类程序包含如图9所示的步骤。于步骤S901中,基于一分类模型,将轮廓文件与分类模型进行比对,以判断待执行任务的一任务类别。然后,于步骤S707中,执行一预测程序。预测程序包含如图10所示的步骤。于步骤S1001中,基于一预测模型中对应任务类别的一子预测模型所记载的一运算节点类型及一系统参数,指定运算节点类型及系统参数予待执行任务。随后,于步骤S1003中,基于子预测模型,根据任务类别及轮廓文件,产生待执行任务的一执行时间预测曲线,得到待执行任务的相对于多个运算节点数量的多个预测执行时间。这些运算节点数量是一对一地对应至这些预测执行时间。
然后,于步骤S709中,执行一最佳化程序。最佳化程序包含如图11所示的步骤。于步骤S1101中,判断是否存在至少一其他任务。接着,当存在至少一其他任务时,执行步骤S1103,以根据待执行任务的使用者定义属性与这些预测执行时间、各至少一其他任务的一其他使用者定义属性及多个其他预测执行时间以及大数据运算服务器总成的一最大运算资源,决定待执行任务的一实际运算节点数量。之后,于步骤S1105中,产生一最佳化输出信息。最佳化输出信息记载待执行任务的程序码文件、这些数据文件、实际运算节点数量、运算节点类型及系统参数。
随后,于步骤S1107中,通过收发器,传送最佳化输出信息至云端大数据运算架构的一管理服务器,以使管理服务器所运行的一管理系统根据最佳化输出信息,分配大数据运算服务器总成中所运行的至少一数据运算系统来针对待执行任务的这些数据文件,执行程序码文件。至少一数据运算系统的一数目等于该实际运算节点数量。此外,当于步骤S1101中判断不存在其他任务时,则执行步骤S1102,产生并传送一输出信息至云端大数据运算架构的管理服务器。输出信息记载待执行任务的程序码文件、这些数据文件、实际运算节点数量、运算节点类型及系统参数。在此情况下,实际运算节点数量可被设定为使用者定义属性中所记载的最大运算节点数量,或者基于系统预设规范,被设定为大数据运算服务器总成2的最大运算资源所能提供的最大运算节点数量。
于其他实施例中,云端运算资源最佳化方法更包含步骤:于执行轮廓程序前,判断待执行任务的这些数据文件的一文件大小,当这些数据文件的文件大小大于一临界值时,执行轮廓程序。此外,其他实施例中,云端运算资源最佳化方法更包含步骤:执行一监控程序,其包含步骤:于至少一数据运算系统执行待执行任务的程序码文件时,更新待执行任务的执行时间预测曲线。
另外,于一实施例中,使用者定义属性包含一任务执行优先权值、一任务截止时间、一最小运算节点数量以及一最大运算节点数量,最佳化程序更包含步骤:根据下列公式计算待执行任务的一任务权重值:
其中,V是该任务权重值,EP是该任务执行优先权值,D是该待执行任务的该任务截止时间,以及WT是一执行等待时间。
再者,最佳化程序可更包含步骤:根据待执行任务的任务权重值与这些预测执行时间、各至少一其他任务的一其他任务权重值及这些其他预测执行时间以及大数据运算服务器总成的最大运算资源,决定待执行任务的实际运算节点数量;计算待执行任务的任务权重值与这些预测执行时间每一者间的多个比值;针对各至少一其他任务,计算其他任务权重值与这些其他预测执行时间每一者间的多个其他比值;计算任一的这些比值与至少一其他任务每一者的任一的这些其它比值间的多个总和值;挑选这些总和值中的一最大总和值;以及将最大总和值所对应的比值的预测执行时间所对应的运算节点数量作为实际运算节点数量。
此外,于一实施例中,最佳化输出信息更记载各至少一其他任务的一其他实际运算节点数量。最佳化程序更包含步骤:针对各至少一其他任务,将最大总和值所对应的其他比值的其它预测执行时间所对应的其他运算节点数量作为其他实际运算节点数量。
另外,于一实施例中,云端大数据运算架构更包含一动态扩增数据存储系统。动态扩增数据存储系统用以存储待分析任务的这些取样数据文件、轮廓文件、分类模型及预测模型。待执行数据的轮廓文件包含一程序码文件剖析数据、一取样任务日志档及一系统资源使用纪录。
此外,于一实施例中,分类模型具有多个标准任务类别。分类程序更包含步骤:基于多个已执行任务的多个历史轮廓文件,使用一分群演算法修改这些标准任务类别。另外,于一实施例中,服务器更包含一存储器,用以存储分类模型及预测模型。
除了上述步骤,本发明的云端运算资源最佳化方法亦能执行在所有前述实施例中所阐述的所有操作并具有所有对应的功能,本领域的技术人员可直接了解此实施例如何基于所有前述实施例执行此等操作及具有这些功能,故不赘述。
综上所述,本发明的云端运算资源最佳化方法基于在云端大数据运算架构中运行一动态扩增系统,以对一待执行任务,进行轮廓分析,并基于轮廓分析的结果,对待执行任务进行分类。接着,本发明的云端运算资源最佳化方法基于轮廓分析及分类结果,指定待执行任务的运算节点类型及系统参数,以及预测待执行任务的相对于多个运算节点数量的多个预测执行时间。随后,动态扩增系统根据待执行任务的一使用者定义属性与这些预测执行时间、至少一其他任务每一者的一其他使用者定义属性及多个其他预测执行时间以及云端大数据运算架构的最大运算资源,决定待执行任务的一实际运算节点数量,并将待执行任务的实际运算节点数量、运算节点类型及系统参数提供至云端大数据运算架构的管理服务器,以使其得以分配适当的运算资源给待执行任务。据此,本发明在运算资源有限的情况下,可自动配置运算资源以及进行虚拟主机的扩增或删减,而使得有限资源达到最佳化的利用,而避免因使用者自行调整或设定的虚拟主机的数量及其系统参数所造成的有限资源分配不公或运算系统整体效益低落。
上述的实施例仅用来例举本发明的实施态样,以及阐释本发明的技术特征,并非用来限制本发明的保护范畴。任何熟悉此技术者可轻易完成的改变或均等性的安排均属于本发明所主张的范围,本发明的权利保护范围应以权利要求书为准。
【符号说明】
1:服务器
2:大数据运算服务器总成
3:数据管理服务器
4:数据存储服务器总成
11:收发器
13:处理器
21:取样数据运算系统
23:数据运算系统
31:管理系统
41:数据存储系统
43:动态扩增数据存储系统
130:动态扩增系统
131:轮廓程序
133:分类程序
135:预测程序
137:最佳化程序
139:监控程序
P1:执行时间预测曲线
P1’:更新后的执行时间预测曲线
N:运算节点数量
Vi、V1、V2、V3:任务权重值
T:预测执行时间
S701-S1107:步骤
Claims (22)
1.一种用于一云端大数据(Big Data)运算架构的服务器,包含:
一收发器,连接至一网络;以及
一处理器,电性连接至该收发器,用以运行一动态扩增系统(Dynamic ScalingSystem)以执行下列操作:
通过该收发器接收一任务信息,该任务信息记载一待执行任务的一使用者定义属性、一程序码文件及多个数据文件,该程序码文件及该多个数据文件存储于一数据存储系统,其运行于该云端大数据运算架构中的一数据存储服务器总成中;
执行一轮廓程序,包含下列步骤:
对该任务信息中所记载的该多个数据文件进行取样,以决定多个取样数据文件以及产生一预先执行信息,该预先执行信息记载该多个取样数据文件及该待执行任务的该程序码文件;
通过该收发器传送该预先执行信息至该云端大数据运算架构的一大数据运算服务器总成,以使该大数据运算服务器总成中所运行的一取样数据运算系统针对该多个取样数据文件,执行该程序码文件,并根据该程序码文件的一执行结果,产生一轮廓文件;以及
通过该收发器,自该大数据运算服务器总成,接收该轮廓文件,执行一分类程序,包含下列步骤:
基于一分类模型,将该轮廓文件与该分类模型进行比对,以判断该待执行任务的一任务类别,
执行一预测程序,包含下列步骤:
基于一预测模型中对应该任务类别的一子预测模型所记载的一运算节点类型及一系统参数,指定该运算节点类型及该系统参数予该待执行任务;以及
基于该子预测模型,根据该任务类别及该轮廓文件,产生该待执行任务的一执行时间预测曲线,得到该待执行任务的相对于多个运算节点数量的多个预测执行时间,该多个运算节点数量是一对一地对应至该多个预测执行时间;
执行一最佳化程序,包含下列步骤:
判断是否存在至少一其他任务;
当存在该至少一其他任务时,根据该待执行任务的该使用者定义属性与该多个预测执行时间、各该至少一其他任务的一其他使用者定义属性及多个其他预测执行时间以及该大数据运算服务器总成的一最大运算资源,决定该待执行任务的一实际运算节点数量;
产生一最佳化输出信息,该最佳化输出信息记载该待执行任务的该程序码文件、该多个数据文件、该实际运算节点数量、该运算节点类型及该系统参数;以及
通过该收发器,传送该最佳化输出信息至该云端大数据运算架构的一管理服务器,以使该管理服务器所运行的一管理系统根据该最佳化输出信息,分配该大数据运算服务器总成中所运行的至少一数据运算系统来针对该待执行任务的该多个数据文件,执行该程序码文件,其中,该至少一数据运算系统的一数目等于该实际运算节点数量。
2.如权利要求1所述的服务器,其特征在于,该处理器更执行一监控程序,包含下列步骤:
于该至少一数据运算系统执行该待执行任务的该程序码文件时,更新该待执行任务的该执行时间预测曲线。
3.如权利要求1所述的服务器,其特征在于,该处理器于执行该轮廓程序前,更判断该待执行任务的该多个数据文件的一文件大小,以及当该多个数据文件的该文件大小大于一临界值时,执行该轮廓程序。
4.如权利要求1所述的服务器,其特征在于,该使用者定义属性包含一任务执行优先权值、一任务截止时间、一最小运算节点数量以及一最大运算节点数量,该最佳化程序更包含下列步骤:
根据下列公式计算该待执行任务的一任务权重值:
<mrow>
<mi>V</mi>
<mo>=</mo>
<mi>E</mi>
<mi>P</mi>
<mo>&times;</mo>
<mfrac>
<mi>D</mi>
<mrow>
<mi>D</mi>
<mo>-</mo>
<mi>W</mi>
<mi>T</mi>
</mrow>
</mfrac>
<mo>,</mo>
</mrow>
其中,V是该任务权重值,EP是该任务执行优先权值,D是该待执行任务的该任务截止时间,以及WT是一执行等待时间。
5.如权利要求4所述的服务器,其特征在于,该最佳化程序中,该处理器根据该待执行任务的该任务权重值与该多个预测执行时间、各该至少一其他任务的一其他任务权重值及该多个其他预测执行时间以及该大数据运算服务器总成的该最大运算资源,决定该待执行任务的该实际运算节点数量。
6.如权利要求5所述的服务器,其特征在于,该最佳化程序更包含下列步骤:
计算该待执行任务的该任务权重值与该多个预测执行时间每一者间的多个比值;
针对各该至少一其他任务,计算该其他任务权重值与该多个其他预测执行时间每一者间的多个其他比值;
计算任一的该多个比值与该至少一其他任务每一者的任一的该多个其它比值间的多个总和值;
挑选该多个总和值中的一最大总和值;以及
将该最大总和值所对应的该比值的该预测执行时间所对应的该运算节点数量作为该实际运算节点数量。
7.如权利要求6所述的服务器,其特征在于,该最佳化输出信息更记载各该至少一其他任务的一其他实际运算节点数量,以及该最佳化程序更包含下列步骤:
针对各该至少一其他任务,将该最大总和值所对应的该其他比值的该其它预测执行时间所对应的该其他运算节点数量作为该其他实际运算节点数量。
8.如权利要求1所述的服务器,其特征在于,该数据存储服务器总成更运行一动态扩增数据存储系统,以及该动态扩增数据存储系统用以存储该待分析任务的该多个取样数据文件、该轮廓文件、该分类模型及该预测模型。
9.如权利要求1所述的服务器,其特征在于,该待执行任务数据的该轮廓文件包含一程序码文件剖析数据、一取样任务日志档及一系统资源使用纪录。
10.如权利要求1所述的服务器,其特征在于,该分类模型具有多个标准任务类别,以及该处理器更基于多个已执行任务的多个历史轮廓文件,使用一分群演算法修改该多个标准任务类别。
11.如权利要求1所述的服务器,其特征在于,更包含一存储器,用以存储该分类模型及该预测模型。
12.一种用于一云端大数据(Big Data)运算架构的一服务器的云端运算资源最佳化方法,该服务器包含一收发器及一处理器,该收发器连接至一网络,该处理器电性连接至该收发器,用以运行一动态扩增系统(Dynamic Scaling System)以执行该云端运算资源最佳化方法,该云端运算资源最佳化方法包含下列步骤:
通过该收发器接收一任务信息,该任务信息记载一待执行任务的一使用者定义属性、一程序码文件及多个数据文件,该程序码文件及该多个数据文件存储于该云端大数据运算架构中的一数据存储服务器总成中;
执行一轮廓程序,包含下列步骤:
对该任务信息中所记载的该多个数据文件进行取样,以决定多个取样数据文件以及产生一预先执行信息,该预先执行信息记载该多个取样数据文件及该待执行任务的该程序码文件;
通过该收发器传送该预先执行信息至该云端大数据运算架构的一大数据运算服务器总成,以使该大数据运算服务器总成中所运行的一取样数据运算系统针对该多个取样数据文件,执行该程序码文件,并根据该程序码文件的一执行结果,产生一轮廓文件;以及
通过该收发器,自该大数据运算服务器总成,接收该轮廓文件,执行一分类程序,包含下列步骤:
基于一分类模型,将该轮廓文件与该分类模型进行比对,以判断该待执行任务的一任务类别,
执行一预测程序,包含下列步骤:
基于一预测模型中对应该任务类别的一子预测模型所记载的一运算节点类型及一系统参数,指定该运算节点类型及该系统参数予该待执行任务;以及
基于该子预测模型,根据该任务类别及该轮廓文件,产生该待执行任务的一执行时间预测曲线,得到该待执行任务的相对于多个运算节点数量的多个预测执行时间,该多个运算节点数量是一对一地对应至该多个预测执行时间;
执行一最佳化程序,包含下列步骤:
判断是否存在至少一其他任务;
当存在该至少一其他任务时,根据该待执行任务的该使用者定义属性与该多个预测执行时间、各该至少一其他任务的一其他使用者定义属性及多个其他预测执行时间以及该大数据运算服务器总成的一最大运算资源,决定该待执行任务的一实际运算节点数量;
产生一最佳化输出信息,该最佳化输出信息记载该待执行任务的该程序码文件、该多个数据文件、该实际运算节点数量、该运算节点类型及该系统参数;以及
通过该收发器,传送该最佳化输出信息至该云端大数据运算架构的一管理服务器,以使该管理服务器所运行的一管理系统根据该最佳化输出信息,分配该大数据运算服务器总成中所运行的至少一数据运算系统来针对该待执行任务的该多个数据文件,执行该程序码文件,其中该至少一数据运算系统的一数目等于该实际运算节点数量。
13.如权利要求12所述的云端运算资源最佳化方法,其特征在于更包含:
执行一监控程序,包含下列步骤:
于该至少一数据运算系统执行该待执行任务的该程序码文件时,更新该待执行任务的该执行时间预测曲线。
14.如权利要求12所述的云端运算资源最佳化方法,其特征在于,于执行该轮廓程序前,更包含下列步骤:
判断该待执行任务的该多个数据文件的一文件大小;以及
当该多个数据文件的该文件大小大于一临界值时,执行该轮廓程序。
15.如权利要求12所述的云端运算资源最佳化方法,其特征在于,该使用者定义属性包含一任务执行优先权值、一任务截止时间、一最小运算节点数量以及一最大运算节点数量,该最佳化程序更包含下列步骤:
根据下列公式计算该待执行任务的一任务权重值:
<mrow>
<mi>V</mi>
<mo>=</mo>
<mi>E</mi>
<mi>P</mi>
<mo>&times;</mo>
<mfrac>
<mi>D</mi>
<mrow>
<mi>D</mi>
<mo>-</mo>
<mi>W</mi>
<mi>T</mi>
</mrow>
</mfrac>
<mo>,</mo>
</mrow>
其中,V是该任务权重值,EP是该任务执行优先权值,D是该待执行任务的该任务截止时间,以及WT是一执行等待时间。
16.如权利要求15所述的云端运算资源最佳化方法,其特征在于,该最佳化程序更包含下列步骤:
根据该待执行任务的该任务权重值与该多个预测执行时间、各该至少一其他任务的一其他任务权重值及该多个其他预测执行时间以及该大数据运算服务器总成的该最大运算资源,决定该待执行任务的该实际运算节点数量。
17.如权利要求16所述的云端运算资源最佳化方法,其特征在于,该最佳化程序更包含下列步骤:
计算该待执行任务的该任务权重值与该多个预测执行时间每一者间的多个比值;
针对各该至少一其他任务,计算该其他任务权重值与该多个其他预测执行时间每一者间的多个其他比值;
计算任一的该多个比值与该至少一其他任务每一者的任一的该多个其它比值间的多个总和值;
挑选该多个总和值中的一最大总和值;以及
将该最大总和值所对应的该比值的该预测执行时间所对应的该运算节点数量作为该实际运算节点数量。
18.如权利要求17所述的云端运算资源最佳化方法,其特征在于,该最佳化输出信息更记载各该至少一其他任务的一其他实际运算节点数量,以及该最佳化程序更包含下列步骤:
针对各该至少一其他任务,将该最大总和值所对应的该其他比值的该其它预测执行时间所对应的该其他运算节点数量作为该其他实际运算节点数量。
19.如权利要求12所述的云端运算资源最佳化方法,其特征在于,该云端大数据运算架构更包含一动态扩增数据存储系统,以及该动态扩增数据存储系统用以存储该待分析任务的该多个取样数据文件、该轮廓文件、该分类模型及该预测模型。
20.如权利要求12所述的云端运算资源最佳化方法,其特征在于,该待执行数据的该轮廓文件包含一程序码文件剖析数据、一取样任务日志档及一系统资源使用纪录。
21.如权利要求12所述的云端运算资源最佳化方法,其特征在于,该分类模型具有多个标准任务类别,以及该分类程序包含下列步骤:
基于多个已执行任务的多个历史轮廓文件,使用一分群演算法修改该多个标准任务类别。
22.如权利要求12所述的云端运算资源最佳化方法,其特征在于,该服务器更包含一存储器,用以存储该分类模型及该预测模型。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW105138406A TWI620075B (zh) | 2016-11-23 | 2016-11-23 | 用於雲端巨量資料運算架構之伺服器及其雲端運算資源最佳化方法 |
TW105138406 | 2016-11-23 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108089921A true CN108089921A (zh) | 2018-05-29 |
CN108089921B CN108089921B (zh) | 2022-01-21 |
Family
ID=62147675
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611095718.9A Active CN108089921B (zh) | 2016-11-23 | 2016-12-02 | 用于云端大数据运算架构的服务器及其运算资源最佳化方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10460241B2 (zh) |
CN (1) | CN108089921B (zh) |
TW (1) | TWI620075B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020087239A1 (zh) * | 2018-10-30 | 2020-05-07 | 北京比特大陆科技有限公司 | 大数据运算加速系统 |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11200512B2 (en) | 2018-02-21 | 2021-12-14 | International Business Machines Corporation | Runtime estimation for machine learning tasks |
TWI676940B (zh) * | 2018-08-29 | 2019-11-11 | 國立交通大學 | 以機械學習為基礎之最佳化預測模型的建立與預測結果的取得系統及方法 |
US10831633B2 (en) * | 2018-09-28 | 2020-11-10 | Optum Technology, Inc. | Methods, apparatuses, and systems for workflow run-time prediction in a distributed computing system |
CN109284871A (zh) * | 2018-09-30 | 2019-01-29 | 北京金山云网络技术有限公司 | 资源调整方法、装置和云平台 |
CN109376012A (zh) * | 2018-10-10 | 2019-02-22 | 电子科技大学 | 一种针对异构环境的基于Spark的自适应任务调度方法 |
CN111258748B (zh) * | 2018-12-03 | 2023-09-05 | 中国移动通信集团上海有限公司 | 分布式文件系统及控制方法 |
CN113574517A (zh) * | 2019-03-14 | 2021-10-29 | 李亚东 | 生成分布式系统的规则编译器引擎装置、方法、系统和介质 |
US11561836B2 (en) * | 2019-12-11 | 2023-01-24 | Sap Se | Optimizing distribution of heterogeneous software process workloads |
CN112988372B (zh) * | 2019-12-16 | 2023-10-24 | 杭州海康威视数字技术股份有限公司 | 确定硬件运算平台分配方式的方法和装置 |
US11409642B2 (en) * | 2020-01-13 | 2022-08-09 | Fujitsu Limited | Automatic parameter value resolution for API evaluation |
US20210342290A1 (en) * | 2020-04-30 | 2021-11-04 | International Business Machines Corporation | Technique selection for file system utilization prediction |
CN112256695B (zh) * | 2020-09-18 | 2023-07-28 | 银联商务股份有限公司 | 可视化的图计算方法及其系统、存储介质以及电子设备 |
TWI777262B (zh) * | 2020-09-30 | 2022-09-11 | 財團法人資訊工業策進會 | 機器學習系統及機器學習方法 |
CN112543420B (zh) * | 2020-11-03 | 2024-04-16 | 深圳前海微众银行股份有限公司 | 任务处理方法、装置及服务器 |
CN112486658B (zh) * | 2020-12-17 | 2024-07-19 | 华控清交信息科技(北京)有限公司 | 一种任务调度方法、装置和用于任务调度的装置 |
CN112995287B (zh) * | 2021-02-04 | 2022-09-13 | 中国科学院计算技术研究所 | 一种面向边缘计算的关键词检测任务调度方法 |
CN113239243A (zh) * | 2021-07-08 | 2021-08-10 | 湖南星汉数智科技有限公司 | 基于多计算平台的图数据分析方法、装置和计算机设备 |
CN113626167A (zh) * | 2021-08-11 | 2021-11-09 | 京东科技控股股份有限公司 | 线程控制方法、装置、设备及计算机存储介质 |
CN113673857B (zh) * | 2021-08-13 | 2024-07-12 | 南京理工大学 | 一种面向数据中台的服务感知与资源调度系统及方法 |
CN114401262A (zh) * | 2022-01-17 | 2022-04-26 | 东云睿连(武汉)计算技术有限公司 | 基于rdma的大数据传输系统、方法、装置、设备及存储介质 |
CN116032757B (zh) * | 2022-12-16 | 2024-05-10 | 派欧云计算(上海)有限公司 | 边缘云混跑场景的网络资源优化方法及装置 |
CN116302457A (zh) * | 2023-05-25 | 2023-06-23 | 之江实验室 | 一种云原生工作流引擎实现方法、系统、介质及电子设备 |
CN117194053B (zh) * | 2023-11-06 | 2024-08-09 | 北京宏数科技有限公司 | 一种基于大数据的云管理方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1172738A2 (en) * | 2000-07-10 | 2002-01-16 | Hewlett-Packard Company, A Delaware Corporation | A web server request classification system that classifies requests based on users'behaviors and expectations |
CN102339233A (zh) * | 2010-07-15 | 2012-02-01 | 戴元顺 | 云计算集中管理平台 |
CN103440167A (zh) * | 2013-09-04 | 2013-12-11 | 福州大学 | Hadoop多作业环境下自学习反馈的任务调度方法 |
US20160048413A1 (en) * | 2014-08-18 | 2016-02-18 | Fujitsu Limited | Parallel computer system, management apparatus, and control method for parallel computer system |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9442540B2 (en) * | 2009-08-28 | 2016-09-13 | Advanced Green Computing Machines-Ip, Limited | High density multi node computer with integrated shared resources |
US8997107B2 (en) | 2011-06-28 | 2015-03-31 | Microsoft Technology Licensing, Llc | Elastic scaling for cloud-hosted batch applications |
US8914515B2 (en) * | 2011-10-28 | 2014-12-16 | International Business Machines Corporation | Cloud optimization using workload analysis |
US9367601B2 (en) | 2012-03-26 | 2016-06-14 | Duke University | Cost-based optimization of configuration parameters and cluster sizing for hadoop |
US9940162B2 (en) * | 2012-09-28 | 2018-04-10 | Cycle Computing, Llc | Realtime optimization of compute infrastructure in a virtualized environment |
US9184982B2 (en) * | 2013-01-15 | 2015-11-10 | Hewlett-Packard Development Company, L.P. | Balancing the allocation of virtual machines in cloud systems |
TW201525706A (zh) * | 2013-12-17 | 2015-07-01 | Inventec Corp | 雲端系統 |
US10346206B2 (en) * | 2016-08-27 | 2019-07-09 | International Business Machines Corporation | System, method and computer program product for resource management in a distributed computation system |
-
2016
- 2016-11-23 TW TW105138406A patent/TWI620075B/zh active
- 2016-12-02 CN CN201611095718.9A patent/CN108089921B/zh active Active
- 2016-12-07 US US15/372,348 patent/US10460241B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1172738A2 (en) * | 2000-07-10 | 2002-01-16 | Hewlett-Packard Company, A Delaware Corporation | A web server request classification system that classifies requests based on users'behaviors and expectations |
CN102339233A (zh) * | 2010-07-15 | 2012-02-01 | 戴元顺 | 云计算集中管理平台 |
CN103440167A (zh) * | 2013-09-04 | 2013-12-11 | 福州大学 | Hadoop多作业环境下自学习反馈的任务调度方法 |
US20160048413A1 (en) * | 2014-08-18 | 2016-02-18 | Fujitsu Limited | Parallel computer system, management apparatus, and control method for parallel computer system |
Non-Patent Citations (2)
Title |
---|
GEORGE KOUSIOURIS等: ""Enabling Proactive Data Management in Virtualized Hadoop Clusters Based on Predicted Data Activity Patterns"", 《 2013 EIGHTH INTERNATIONAL CONFERENCE ON P2P, PARALLEL, GRID, CLOUD AND INTERNET COMPUTING》 * |
李千目等: ""一种Hadoop平台下的调度算法及混合调度策略"", 《计算机研究与发展》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020087239A1 (zh) * | 2018-10-30 | 2020-05-07 | 北京比特大陆科技有限公司 | 大数据运算加速系统 |
Also Published As
Publication number | Publication date |
---|---|
US20180144251A1 (en) | 2018-05-24 |
US10460241B2 (en) | 2019-10-29 |
TWI620075B (zh) | 2018-04-01 |
CN108089921B (zh) | 2022-01-21 |
TW201820165A (zh) | 2018-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108089921A (zh) | 用于云端大数据运算架构的服务器及其运算资源最佳化方法 | |
US20200293838A1 (en) | Scheduling computation graphs using neural networks | |
US10360500B2 (en) | Two-phase distributed neural network training system | |
Dai et al. | Cloud infrastructure resource allocation for big data applications | |
US20200334293A1 (en) | Computation platform agnostic data classification workflows | |
Yang et al. | A spatiotemporal compression based approach for efficient big data processing on cloud | |
US20190095819A1 (en) | Scalable and efficient distributed auto-tuning of machine learning and deep learning models | |
US20190354554A1 (en) | Graphically managing data classification workflows in a social networking system with directed graphs | |
Abdoos et al. | Hierarchical control of traffic signals using Q-learning with tile coding | |
Yadav et al. | A bi-objective task scheduling approach in fog computing using hybrid fireworks algorithm | |
US8909644B2 (en) | Real-time adaptive binning | |
US20180004835A1 (en) | Data classification workflows implemented with dynamically modifiable directed graphs | |
US10691692B2 (en) | Computer-implemented method of executing a query in a network of data centres | |
KR20200029387A (ko) | 캐시 최적화 및 효율적인 프로세싱을 위한 데이터 집성 방법 | |
CN111356998A (zh) | 机器学习查询处理系统 | |
CN112257868A (zh) | 构建和训练用于预测客流量的集成预测模型的方法及装置 | |
CN103475730B (zh) | 一种云环境下用户确定度引导的web服务选择方法 | |
CN110020310A (zh) | 资源加载的方法、装置、终端及存储介质 | |
Tekiyehband et al. | An efficient dynamic service provisioning mechanism in fog computing environment: A learning automata approach | |
Chen | RIFLING: A reinforcement learning‐based GPU scheduler for deep learning research and development platforms | |
Asghari et al. | Bi-objective cloud resource management for dependent tasks using Q-learning and NSGA-3 | |
CN116996941A (zh) | 基于配网云边端协同的算力卸载方法、装置及系统 | |
CN102105842A (zh) | 将业务规则与工程应用相集成的系统和方法 | |
Delande et al. | Horizontal scaling in cloud using contextual bandits | |
Lisovskaya et al. | On the total customers’ capacity in multi-server queues |
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 |