CN105580001A - 对与服务类别相关联的混合流进行处理 - Google Patents
对与服务类别相关联的混合流进行处理 Download PDFInfo
- Publication number
- CN105580001A CN105580001A CN201380079890.3A CN201380079890A CN105580001A CN 105580001 A CN105580001 A CN 105580001A CN 201380079890 A CN201380079890 A CN 201380079890A CN 105580001 A CN105580001 A CN 105580001A
- Authority
- CN
- China
- Prior art keywords
- mixed flow
- service
- execution
- subflow
- service classification
- 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
Links
Classifications
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/254—Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
Abstract
本文所描述的是用于对混合流进行处理的技术。混合流可与多个服务类别中的一个相关联,并可包括被定向于多个执行环境的子流。可基于与服务类别相关联的目标以及资源的分配或可用性来生成执行调度。如果混合流的执行未满足目标,则可根据与服务类别相关联的策略来采取动作。
Description
相关申请的交叉引用
此申请涉及在2013年4月3日提交的、名称为“修改将在多个执行环境中执行的操作流”的国际专利申请No.PCT/US2013/035080,其通过引用被纳入本文。
背景技术
可通过不同类型的执行环境来实施对数据的操作。例如,一个执行环境可为数据库管理系统(DBMS)环境,其中数据被存储于关系表中并接受基于数据库的操作。作为另一个示例,执行环境可包括Map(映射)Reduce(归约)环境,该环境使用映射任务和归约任务来实施操作。还可存在其他类型的执行环境。
附图说明
以下参照附图来进行详细说明,其中:
图1示出根据示例的用于对与服务类别相关联的混合流进行处理的方法;
图2示出根据示例的用于对多个执行环境中的资源进行管理的方法;
图3示出根据示例的用于对子流进行验证的方法;
图4示出根据示例的用于支持对与多个服务类别相关联的混合流进行管理的混合流管理系统;
图5示出根据示例的用于对与服务类别相关联的混合流进行处理的计算机可读介质。
具体实施方式
企事业单位(例如,商行、教育机构、政府机关等等)可依赖于报告和分析(通常被称为“计算”),该报告和分析对来自数据存储库的不同数据集合的数据进行整合,并使用各种执行环境来对该数据进行操作。在一些示例中,单个分析计算可被建模为有向图,在有向图中,起始节点为数据源,结束节点为数据目标,中间节点为数据操作,并且弧表示数据流。这样的计算可被称为分析数据流(或简单地称为“流”)。在其他示例中,流可能具有不同的表示(除了有向图之外)。一种利用一个以上的数据存储库或执行环境的分析数据流被称为混合分析数据流(或简单地称为“混合流”)。作为用于某些目的(例如,流应在最后期限之前完成,或各个流的平均响应时间不应超过阈值等)的单元被加以管理的分析数据流的集合被称为工作负载。服务类别工作负载管理器可被用于对与相应的服务类别相关联的流的集合进行管理。
混合流可包括在不同的执行环境中实施的操作集合。在相应的执行环境中实施的混合流的操作集合可被称为“子流”。在混合流中可能存在被定向于单个执行环境的多个子流。例如,单个混合流可包括被定向于第一执行环境的三个子流和被定向于第二执行环境的两个子流。
不同类型的执行环境的示例包括以下中的至少一些:数据库管理系统(DBMS)环境、映射归约环境、提取转换和加载(ETL)环境、数学和统计分析环境、事件信息流处理环境或者其他执行环境。每个执行环境都可包括执行引擎和相应的数据存储库。执行引擎可包括用于将相应的运算符应用于数据的一个或多个执行阶段,其中运算符可针对数据进行转换或实施一些其他动作。存储库指一个或多个数据集合。执行环境可在公共云或公共网络中使用,在该情况下,执行环境可被称为公共云执行环境。可替代地,可在专用网络中使用的执行环境可被称为专用执行环境。
DBMS环境将数据存储在关系表中,并对关系表中的数据应用数据库运算符(例如,连接运算符、更新运算符、合并运算符等)。映射归约环境包括可分别应用映射函数和归约函数的映射任务和归约任务。映射任务基于相应的映射函数来对输入数据进行处理以生成中间结果,所述映射函数用于对由映射任务实施的处理进行定义。归约任务基于对应的归约函数将来自映射任务的中间结果作为输入分段以产生输出,所述归约函数用于对由归约任务实施的处理进行定义。
执行环境的另一个示例包括ETL环境,该环境从一个源(或多个源)中提取数据、转换数据、并将转换后的数据加载到目的地中。数学/统计分析环境可对数组或数据向量实施数学运算。事件信息流处理环境可对诸如传感器数据等事件信息流实施计算。
尽管上面列出了不同执行环境的具体类型,但应注意到,在其他示例中,可使用其他类型的执行环境来对数据实施操作。
服务类别可与目标性能目标相关联,其识别通过与服务类别相关的工作负载的执行而被满足的一个或多个目的。性能目标也可被称为服务等级目标。性能目标的一个示例涉及到执行时间(例如,用于执行工作负载的持续时间、或完成工作负载的目标最后期限)。性能目标的另一个示例是资源使用目标,其可规定诸如计算资源、存储资源或通信资源等资源的使用不应超过目标水平。在其他的示例中,可采用其他性能目标。
混合流的执行计划规定在哪里(即目标执行环境)执行混合流的子流,并可规定与子流的执行相关联的其他细节(如顺序)。由于执行环境中功能的重叠、操作的多个实现细节、执行计划的目标(例如,与容错、延迟等有关的目标)等等,单个混合流可具有多个可替代的执行计划。基于混合流的执行计划,管理系统可将混合流的子流部署在目标执行环境中,且可协调安排混合流的执行。
可能存在与在目标执行环境中部署执行计划相关联的几个问题。首先,至少一个执行环境的计算基础设施的状态可能已在制作执行计划的时间与实施执行计划的时间之间发生变化。例如,执行环境可能变成过载(使得存在资源竞争)或计算基础设施可能会遭遇故障。其次,混合流与不得不满足的性能目标相关联。在某些情况下,可能会规定不满足性能目标的罚则。因此,管理系统应当确保实现目标性能目标。
在一些示例中,工作负载管理器可存在于单独的执行环境中,并且该工作负载管理器可对任务的优先级、并行运行的任务的数目等进行调整,以增加单独的执行环境中的工作负载满足相应目标的目标的可能性。但是,在单个执行环境中的工作负载管理器可能仅作出该环境的最佳决策。这样的工作负载管理器并不知晓其他执行环境的状态。因此,对于具有在多个不同类型的执行环境中执行的流的工作负载,工作负载管理变得更富挑战性。
根据一些实施方式,提供混合流管理系统,用以将基于策略的混合流管理应用于多个服务类别中的混合流。该系统可包括多个服务类别工作负载管理器(例如,针对每个服务类别一个工作负载管理器),以便对根据服务类别的混合流进行管理。
在一个示例方法中,可接收与多个服务类别中的一个相关联的混合流。混合流可包括被定向于多个执行环境的多个子流。可基于标准来生成调度用以在多个执行环境中运行子流。标准可包括一个或多个与混合流的服务类别相关联的目标、多个执行环境针对服务类别的资源分配、资源可用性、以及与混合流相关联的参数或约束条件。一个或多个子流可被分派到执行环境中以进行执行。可对所分派的子流的执行进行监测以生成统计数据。如果统计数据与目标相差一阈值,则可根据与服务类别相关联的策略来采取补救动作。因此,可对与服务类别相关联的混合流进行管理以达成性能目标。此外,可支持多个服务类别,使得与服务类别中的任何一个相关联的混合流都可被适当地管理以达成与相应的服务类别相关联的性能目标。下面参考附图来描述附加示例、优点、特征、修改等。
图1示出根据示例的用于对与服务类别相关联的混合流进行处理的方法。方法100可由诸如混合流管理系统400或计算系统500等计算设备、系统或计算机来实施。用于实现方法100的计算机可读指令可被存储在计算机可读存储介质上。被存储在介质上的这些指令在本文中被称为“模块”,并可由计算机执行。
这里要描述的方法100-300涉及图4的混合流管理系统400。系统400可包括一个或多个计算机和/或由一个或多个计算机来实现。例如,计算机可为服务器计算机、工作站计算机、台式计算机、笔记本电脑、移动设备等,并可为分布式系统中的一部分。计算机可包括一个或多个控制器和一个或多个机器可读存储介质。
控制器可包括用于实现机器可读指令的处理器和存储器。处理器可包括至少一个中央处理单元(CPU)、至少一个基于半导体的微处理器、至少一个如数字图像处理单元那样的数字信号处理器(DSP)、适用于检索和执行被存储于存储器中的指令的其他硬件设备或处理元件、或者其组合。处理器可包括一个芯片上的单个或多个内核、在多个芯片上的多个内核、在多个设备上的多个内核、或者其组合。处理器可从存储器中取得、解码和执行指令以实现各种功能。作为可替代的或者除了检索和执行指令之外,处理器可包括包含有用于执行各种任务或功能的多个电子器件的至少一个集成电路(IC)、其他控制逻辑、其他电子电路、或者其组合。
控制器可包括诸如机器可读存储介质等存储器。机器可读存储介质可为包含或存储可执行指令的任何电子、磁性、光学或其他物理的存储设备。因此,机器可读存储介质可包括例如:各种随机存取存储器(RAM)、只读存储器(ROM)、闪存、以及其组合。例如,机器可读介质可包括非易失性的随机存取存储器(NVRAM)、电可擦可编程只读存储器(EEPROM)、存储驱动器、NAND闪存等。此外,机器可读存储介质可以是计算机可读的和非暂时性的。另外,系统400可包括脱离于一个或多个控制器的一个或多个机器可读存储介质。
混合流管理系统400可包括多个组件。例如,系统400可包括接口410和优化器420。接口410可接收用于创建或修改流的流定义。作为示例,接口410可提供图形用户界面(GUI)以允许用户交互地创建或修改流。可替代地,流可采用声明性语言来编写,并且可通过接口被导入。使用接口410所创建或修改的流可以是混合流。优化器420生成每个流的多个候选执行计划。优化器420能够考虑用于给定的流的可替代候选执行计划,并可估计候选执行计划的相应成本。
成本的示例可包括处理资源使用成本、存储资源使用成本、通信成本、输入/输出(I/O)成本等。可选择来自候选执行计划中的执行计划(可以是最优执行计划)用于执行,其中最优执行计划可涉及与最低成本相关联的或满足一些其他标准的执行计划。
系统400还可包括执行器430,并可通过网络连接到执行环境490。网络可以是任何类型的通信网络,包括但并不限于:有线网络(例如,电缆)、无线网络(例如,蜂窝、卫星)、蜂窝电信网络、以及基于IP的电信网络(例如,互联网协议语音网络)。网络还可包括传统的固话或公用电话交换网络(PSTN)或上述的组合。
优化器420可将所选择的执行计划提供给执行器430。所选择的执行计划本身是一个流,并且如果其包括被定向于两个或更多个的执行环境490的子流,则该执行计划为混合流,现在将参考方法100-300来更详细地描述执行器430。
方法100可开始于110,在110中接收混合流。例如,执行器430可从优化器420中接收所选择的执行计划420。混合流可与由系统400支持的多个服务类别中的一个相关联。服务类别是用于针对请求提供差异化服务的方式。
可采用不同的方式为混合流确定和/或指派服务类别。例如,用户可登录到接口410以创建流。用户可通过用户标识符并凭借用户在企业中的角色而与特定的服务类别相关联。例如,如果用户标识符对应于企业的首席执行官,则任何所生成的流都可被指派将确保最高优先级(例如,最快的执行、最大数量的分配资源等)的服务类别。相比之下,与市场部或工程部相对应的用户标识符可被指派具有较低优先级的服务类别。服务类别还取决于流的大小、流的类型、流所需的执行环境的数量等。服务类别可通过发起请求的地理位置和时间来确定。针对流来确定和/或指派服务类别的各种其他方法也可被采用。
在120,可生成调度以在执行环境中运行混合流的子流。例如,调度器450可被配置为生成用于执行子流的调度。此外,调度器450可生成用于执行与不同的服务类别相关联的混合流的单独的调度,使得每个服务类别都具有它自己的调度以执行与该服务类别相关联的流。
可采用诸如第一适合法或装箱法等不同的调度技术。此外,调度可基于不同的标准来生成。例如,可基于一个或多个与服务类别相关联的目标、多个执行环境针对服务类别的资源分配、资源可用性、以及与混合流相关联的参数和/或约束条件来生成调度。
目标可以是针对服务类别所规定的任何一种服务等级目标(例如,流的90%必须在不到一分钟内完成,整组流必须按规定时间完成等)。用于给定的服务类别的目标可被存储在对应的服务类别工作负载管理器480的计算机可读介质486中以作为目标487。调度器450因此可以在所生成的调度满足目标487这样的约束条件下进行操作。
资源的分配也取决于服务类别。例如,每个服务类别可从每个执行环境中分配到一组资源。例如,服务类别可被分配多个处理内核、最小量或最大量的存储器、网络带宽的一小部分等。此外,资源的分配可以具体到每个执行环境490。例如,服务类别可被分配给处理内核E1的50%而仅分配给处理内核E2的25%。
资源管理器440可被用于通过为服务类别工作负载管理器480指派特定的分配来管理针对不同服务类别的资源分配。在一个示例中,所有服务类别中的资源分配不应超过执行环境中的资源总量。在另一个示例中,资源的初始分配可能超过资源总量,但资源管理器440中的逻辑可确保当临近任何一种资源在使用中的总量时,修改该资源针对每个服务类别工作负载管理器480的分配量,使得不存在资源竞争。
资源管理器440可执行方法200。在210,资源管理器440可对资源可用性进行监测。这可以通过经由应用程序接口来查询执行环境490的自身状态而完成。在220,资源管理器440可管理针对服务类别工作负载管理器480的资源分配。正如上面所讨论的,资源的分配可取决于服务类别。例如,每个服务类别可以有一组被传送给资源管理器440的资源请求。由于资源可用性随着时间而变化(比如由于可在执行环境中使用额外的资源,因此在执行环境中缺乏资源等),因此资源管理器440可对资源的分配进行修改。此外,正如后面所讨论的,资源管理器440可响应于来自服务类别工作负载管理器480的请求而对资源的分配进行修改。资源管理器440也可保持与执行环境相关联的其他参数和统计数据,例如允许每个环境的多道程序设计级。
最后,返回到方法100,生成调度的标准可包括与混合流相关联的参数和/或约束条件。例如,在混合流中不同的子流可彼此有依赖性,使得某些子流应同时执行,某些子流应在其他子流之前或之后执行等。同样,混合流可与到达时间(例如,流首次到达优化器420或执行器430的时间)和请求的执行时间(例如,由用户通过接口410输入请求的时间)相关联。参数还可与混合流中的子流的数量、完全执行混合流所需的最小时间量、流的执行所需的执行环境的数量和类型等有关。还可考虑其他的参数和约束条件。
调度450可将所有这些标准考虑在内,以生成用于执行混合流的调度。此外,调度器450可以为与给定的服务类别相关联的多个混合流生成该调度。例如,可以存在在同一时间由系统400管理的、与给定的服务类别相关联的五个独立的混合流。调度器450可针对所有五个混合流来考虑这些标准以生成调度,该调度用于在执行环境490中执行这五个混合流的子流,使得目标和与流相关联的约束条件得到满足。此外,如果接收到新的流、如果资源重新分配等,调度器450可对调度进行再计算。
在130,一个或多个子流可基于调度被分派到执行环境中以进行执行。例如,分派器470可被配置为将子流分派到执行环境490中。然而在分派子流之前,可根据图3的方法300来实施验证处理。验证器460可执行方法300。在310,可以对欲分派的子流的执行请求进行验证。例如,验证器460可通过资源监视器440来验证子流的执行所需的所有资源都是可用的,并且都被适当地分配给服务类别。还可对目标487被满足、所有的依赖关系已被适当满足等进行验证。如果验证成功,则子流可被分派。
在320,如果验证失败,则可采取动作。例如,在发生故障时,验证器460可通知服务类别工作负载管理器480验证失败。服务类别工作负载管理器480的动作模块484可随后采取遵循一个或多个策略488的补救动作。可针对每个服务类别来规定策略488以应对计划失效。针对计划失效的各种情况可存在单独的策略,并且该策略可导致采取不同的动作。
以下是可采取的补救动作的非详尽列表。例如,服务类别工作负载管理器480可从一个或多个执行环境490中请求额外的资源。这样的请求可能需要删除已分配给另一个服务类别的资源,并且将那些资源重新分配给与失效的子流相关联的服务类别。服务类别工作负载管理器480可请求额外的执行环境的实例。服务类别工作负载管理器480可请求将给定的子流发送到不同的执行环境中以在其上执行。服务类别工作负载管理器480可请求将子流分解成更小的片段。服务类别工作负载管理器480可请求调度器450生成新的调度,该调度使优化器420发送合乎于计算环境的当前状态的新的执行计划(例如,来自先前生成的执行计划的列表),或者使优化器420生成完全新的执行计划。
返回到方法100,可对所分派的子流的执行进行监测。例如,服务类别工作负载管理器480的监测模块482可对与服务类别相关联的子流的执行进行监测。可根据监测来生成诸如子流的平均执行时间、所执行的子流的比例、预计的混合流的总执行时间等统计数据489。如果统计数据与一个或多个目标487相差一阈值,则动作模块484可如上所述地根据一个或多个策略488来采取动作。
图5示出根据示例的用于处理与服务类别相关联的混合流的计算系统。计算系统500可包括一台或多台计算机和/或由一台或多台计算机来实现。例如,计算机可为服务器计算机、工作站计算机、台式计算机、笔记本电脑、移动设备等,并且可为分布式系统的一部分。正如关联例如混合流管理系统400所描述的,计算机可包括一个或多个控制器以及一个或多个机器可读存储介质。
此外,计算系统500的用户可通过一个或多个其他计算机来与计算系统500进行交互,其他计算机可被认为是或不被认为是计算系统500的一部分。作为示例,用户可通过驻留在系统500上或者驻留在诸如桌面计算机、工作站计算机、平板电脑等另一台计算机上的计算机应用程序来与系统500进行交互。计算机应用程序可包括用户接口(例如,触摸界面、鼠标、键盘、手势输入设备)。
计算系统500可执行方法100-300及其变形,并且组件510-540可被配置为执行方法100-300及其变形的各个部分。此外,由组件510-540实现的功能可以是更大的软件平台、系统或应用程序等的一部分。例如,这些组件可以是数据分析系统的一部分。
计算机510可访问数据库540。正如本文所描述的,数据库可包括一个或多个计算机,并且可包括一个或多个控制器和机器可读存储介质。计算机可通过网络连接到数据库。网络可以是任何类型的通信网络,包括但并不限于:有线网络(例如,电缆)、无线网络(例如,蜂窝、卫星)、蜂窝电信网络和基于IP的电信网络(例如,互联网协议语音网络)。网络还可包括传统的固话或公用电话交换网络(PSTN)或上述的组合。
处理器520可以是至少一个中央处理单元(CPU)、至少一个基于半导体的微处理器、适用于检索和执行被存储在机器可读存储介质530中的指令的其他硬件设备或处理元件、或者其组合。处理器520可包括一个芯片上的单个或多个内核、在多个芯片上的多个内核、在多个设备上的多个内核、或其组合。处理器520可取得、解码和执行指令532-538等以实现各种处理。作为可替代的或者除了检索和执行指令之外,处理器520可包括包含有用于执行指令532-538的功能的多个电子器件的至少一个集成电路(IC)、其他控制逻辑、其他电子电路、或者其组合。因此,处理器520可在多个处理单元中被实现,并且指令532-538可在计算机510的不同区域内由不同的处理单元来实现。
机器可读存储介质530可为包含或者存储可执行指令的任何电子、磁性、光学、或其他物理的存储设备。因此,机器可读存储介质可包括例如:各种随机存取存储器(RAM)、只读存储器(ROM)、闪存、以及其组合。例如,机器可读介质可包括非易失性的随机存取存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、存储驱动器、NAND闪存等。此外,机器可读存储介质530可以是计算机可读的和非暂时性的。机器可读存储介质530可采用对处理元件进行管理的一系列可执行指令来编码。
由处理器520(例如,通过处理器的一个处理元件或多个处理元件)执行指令532-538时,会使处理器520实施处理,例如,方法100-300和/或其变形及一部分。
例如,服务类别指令532可使处理器520对与多个混合流中的每一个相关联的服务类别进行确定。调度指令534可使处理器520基于与每个混合流相关联的参数和约束条件、与相应的服务类别相关联的目标和资源分配、以及资源可用性,来为每个服务类别中的混合流生成单独的执行调度。监测指令536可使处理器510对每个混合流的执行进行监测以产生统计数据。如果给定的混合流的统计数据和与给定的混合流的服务类别相关联的目标相差一阈值,则动作指令538可使处理器520采取补救动作。补救动作可取决于与给定的混合流的服务类别相关联的策略。
在前述说明中,阐释了众多细节以提供对本文所公开的主题的理解。然而,可以在不具有这些细节中的一些或者全部的情况下实施各实施方式。其他的实施方式可包括上面所讨论的细节的修改和变形。旨在所附权利要求涵盖这些修改和变形。
Claims (15)
1.一种方法,包括:通过混合流管理系统来:
接收混合流,所述混合流包括被定向于至少两个执行环境的多个子流,所述混合流与多个服务类别中的第一服务类别相关联;
基于标准来生成调度,用以在所述至少两个执行环境中运行所述混合流的子流,所述标准包括与所述第一服务类别相关联的目标以及所述至少两个执行环境的资源可用性;
基于所述调度,将所述多个子流中的子流分派到所述执行环境中的一个以进行执行;
对所分派的子流的执行进行监测以生成统计数据;以及
如果所述统计数据与所述目标相差一阈值,则根据与所述第一服务类别相关联的策略来采取动作。
2.根据权利要求1所述的方法,进一步包括:
在将所述子流分派到所述执行环境中的一个之前,
验证所述子流的执行所需的全部资源为可用;以及
如果所述子流的执行所需的全部资源为不可用,则根据与所述第一服务类别相关联的策略来采取动作。
3.根据权利要求1所述的方法,进一步包括:
对所述至少两个执行环境的资源可用性进行监测;以及
对所述至少两个执行环境针对所述多个服务类别的资源分配进行管理。
4.根据权利要求1所述的方法,其中,
根据与所述第一服务类别相关联的服务策略来采取动作包括:从至少两个执行环境中的一个或多个中请求额外的资源,或者请求额外的执行环境。
5.根据权利要求1所述的方法,其中,
根据与所述第一服务类别相关联的服务策略来采取动作包括:将所述子流分解成多个部分。
6.根据权利要求1所述的方法,其中,
根据与所述第一服务类别相关联的服务策略来采取动作包括:选择不同的调度来运行所述混合流的子流,或者生成不同的调度来运行所述混合流的子流。
7.根据权利要求1所述的方法,其中,
根据与所述第一服务类别相关联的服务策略来采取动作包括:将所述子流发送到不同的执行环境中以进行执行。
8.根据权利要求1所述的方法,包括:
接收第二混合流,所述第二混合流包括被定向到所述至少两个执行环境的第二多个子流,所述第二混合流与所述多个服务类别中的第二服务类别相关联;
基于标准来生成第二调度,用以在所述至少两个执行环境中运行所述第二混合流的子流,所述标准包括与所述第二服务类别相关联的第二目标以及所述至少两个执行环境的资源可用性;
其中由于所述至少两个执行环境针对所述第一服务类别和所述第二服务类别的资源分配不同,因此所述第一服务类别的所述资源可用性不同于所述第二服务类别的所述资源可用性。
9.一种系统,包括:
资源管理器,用以对多个执行环境针对多个服务类别的资源分配进行管理,所述多个服务类别包括第一服务类别;
调度器,用以基于与所述第一服务类别相关联的服务等级目标以及针对所述第一服务类别的资源分配来生成调度,所述调度用于与所述第一服务类别相关联的混合流的执行;以及
服务类别工作负载管理器,与所述第一服务类别相关联,包括:
监测模块,用以对所述多个执行环境中的所述混合流的执行进行监测;以及
动作模块,用以如果所述混合流的执行未满足与所述第一服务类别相关联的所述服务等级目标中的一个或多个,则根据与所述第一服务类别相关联的策略来采取动作。
10.根据权利要求9所述的系统,包括:
分派器,用以根据所述调度,将所述混合流的子流分派到所述多个执行环境中以进行执行。
11.根据权利要求10所述的系统,包括:
验证器,用以通过验证所述子流的执行所需的资源为可用且所述目标预计被满足,从而在子流被所述分派器分派之前进行验证。
12.根据权利要求9所述的系统,其中,
所述策略使所述动作模块从所述资源管理器中请求额外的资源。
13.根据权利要求9所述的系统,其中,
所述策略使所述动作模块请求将所述混合流的子流发送到另一个执行环境中以进行执行。
14.根据权利要求9所述的系统,包括:
第二服务类别工作负载管理器,与所述多个服务类别中的第二服务类别相关联,所述第二服务类别工作负载管理器包括:
第二监测模块,用以对与所述第二服务类别相关联的混合流在所述多个执行环境中的执行进行监测;以及
第二动作模块,用以如果与所述第二服务类别相关联的所述混合流中的一个的执行未满足与所述第二服务类别相关联的一个或多个服务等级目标,则根据与所述第二服务类别相关联的策略来采取动作。
15.一种存储由计算机执行的指令的非暂时性计算机可读存储介质,当所述指令被执行时,使所述计算机:
确定与多个混合流中的每一个相关联的服务类别;
基于与每个混合流相关联的参数和约束条件、与相应的服务类别相关联的目标和资源分配、以及资源可用性,来为每个服务类别中的所述混合流生成单独的执行调度;
对每个混合流的执行进行监测以生成统计数据;以及
如果对于给定的混合流的所述统计数据和与所述给定的混合流的服务类别相关联的目标相差一阈值,则采取补救动作,所述补救动作取决于与所述给定的混合流的服务类别相关联的策略。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2013/062201 WO2015047302A1 (en) | 2013-09-27 | 2013-09-27 | Processing a hybrid flow associated with a service class |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105580001A true CN105580001A (zh) | 2016-05-11 |
Family
ID=52744205
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380079890.3A Pending CN105580001A (zh) | 2013-09-27 | 2013-09-27 | 对与服务类别相关联的混合流进行处理 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20160203026A1 (zh) |
EP (1) | EP3049959A1 (zh) |
CN (1) | CN105580001A (zh) |
WO (1) | WO2015047302A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11314808B2 (en) * | 2013-12-19 | 2022-04-26 | Micro Focus Llc | Hybrid flows containing a continous flow |
US10375161B1 (en) * | 2014-04-09 | 2019-08-06 | VCE IP Holding Company LLC | Distributed computing task management system and method |
US10623481B2 (en) * | 2015-04-27 | 2020-04-14 | Microsoft Technology Licensing, Llc | Balancing resources in distributed computing environments |
US10715526B2 (en) | 2016-12-14 | 2020-07-14 | Microsoft Technology Licensing, Llc | Multiple cores with hierarchy of trust |
US10416991B2 (en) * | 2016-12-14 | 2019-09-17 | Microsoft Technology Licensing, Llc | Secure IoT device update |
US10402273B2 (en) | 2016-12-14 | 2019-09-03 | Microsoft Technology Licensing, Llc | IoT device update failure recovery |
CN109445931A (zh) * | 2018-08-31 | 2019-03-08 | 安徽四创电子股份有限公司 | 一种大数据资源调度系统及方法 |
CN114268800B (zh) * | 2020-09-14 | 2023-06-16 | 腾讯科技(深圳)有限公司 | 一种直播资源调度方法、装置、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060288346A1 (en) * | 2005-06-16 | 2006-12-21 | Santos Cipriano A | Job scheduling system and method |
US20090109230A1 (en) * | 2007-10-24 | 2009-04-30 | Howard Miller | Methods and apparatuses for load balancing between multiple processing units |
US20090241117A1 (en) * | 2008-03-20 | 2009-09-24 | International Business Machines Corporation | Method for integrating flow orchestration and scheduling for a batch of workflows |
US20110093852A1 (en) * | 2009-10-21 | 2011-04-21 | Sap Ag | Calibration of resource allocation during parallel processing |
US20120317579A1 (en) * | 2011-06-13 | 2012-12-13 | Huan Liu | System and method for performing distributed parallel processing tasks in a spot market |
CN103197952A (zh) * | 2012-01-09 | 2013-07-10 | 华为技术有限公司 | 基于云基础设施的针对应用系统维护部署的管理系统和方法 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7596618B2 (en) * | 2004-12-07 | 2009-09-29 | Hewlett-Packard Development Company, L.P. | Splitting a workload of a node |
US7689582B2 (en) * | 2006-03-10 | 2010-03-30 | International Business Machines Corporation | Data flow system and method for heterogeneous data integration environments |
US8131302B2 (en) * | 2007-07-20 | 2012-03-06 | Broadcom Corporation | Method and system for dynamically splitting jobs across multiple agnostic processors in wireless system |
US20140298349A1 (en) * | 2008-04-21 | 2014-10-02 | Adaptive Computing Enterprises, Inc. | System and Method for Managing Energy Consumption in a Compute Environment |
US8990812B2 (en) * | 2008-07-07 | 2015-03-24 | Infosys Limited | Task decomposition with throttled message processing in a heterogeneous environment |
US8606762B2 (en) * | 2008-09-16 | 2013-12-10 | Sap Ag | Data quality administration framework |
US8266477B2 (en) * | 2009-01-09 | 2012-09-11 | Ca, Inc. | System and method for modifying execution of scripts for a job scheduler using deontic logic |
US8453156B2 (en) * | 2009-03-30 | 2013-05-28 | Intel Corporation | Method and system to perform load balancing of a task-based multi-threaded application |
US8479216B2 (en) * | 2009-08-18 | 2013-07-02 | International Business Machines Corporation | Method for decentralized load distribution in an event-driven system using localized migration between physically connected nodes and load exchange protocol preventing simultaneous migration of plurality of tasks to or from a same node |
US8854381B2 (en) * | 2009-09-03 | 2014-10-07 | Advanced Micro Devices, Inc. | Processing unit that enables asynchronous task dispatch |
US8307198B2 (en) * | 2009-11-24 | 2012-11-06 | Advanced Micro Devices, Inc. | Distributed multi-core memory initialization |
US9239996B2 (en) * | 2010-08-24 | 2016-01-19 | Solano Labs, Inc. | Method and apparatus for clearing cloud compute demand |
US8510284B2 (en) * | 2010-12-20 | 2013-08-13 | Microsoft Corporation | Large-scale event evaluation using realtime processors |
US9223631B2 (en) * | 2011-03-17 | 2015-12-29 | Apple Inc. | Performing an operation using multiple services |
US9201690B2 (en) * | 2011-10-21 | 2015-12-01 | International Business Machines Corporation | Resource aware scheduling in a distributed computing environment |
US9477708B2 (en) * | 2012-11-19 | 2016-10-25 | Nec Corporation | System for multi-store analytics execution environments with storage constraints |
US9031531B2 (en) * | 2012-11-20 | 2015-05-12 | At&T Intellectual Property I, L.P. | Distributed computing task costing with a mobile device |
US9262492B2 (en) * | 2012-11-30 | 2016-02-16 | Hewlett Packard Enterprise Development Lp | Dividing and combining operations |
US10489416B2 (en) * | 2013-02-28 | 2019-11-26 | Micro Focus Llc | Optimizing and managing execution of hybrid flows |
US10102039B2 (en) * | 2013-05-17 | 2018-10-16 | Entit Software Llc | Converting a hybrid flow |
US9602423B2 (en) * | 2013-06-28 | 2017-03-21 | Pepperdata, Inc. | Systems, methods, and devices for dynamic resource monitoring and allocation in a cluster system |
JP6451149B2 (ja) * | 2014-09-01 | 2019-01-16 | 富士通株式会社 | 管理装置、マイグレーション制御プログラム、情報処理システム |
-
2013
- 2013-09-27 EP EP13894923.5A patent/EP3049959A1/en not_active Withdrawn
- 2013-09-27 CN CN201380079890.3A patent/CN105580001A/zh active Pending
- 2013-09-27 WO PCT/US2013/062201 patent/WO2015047302A1/en active Application Filing
- 2013-09-27 US US14/917,059 patent/US20160203026A1/en not_active Abandoned
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060288346A1 (en) * | 2005-06-16 | 2006-12-21 | Santos Cipriano A | Job scheduling system and method |
US20090109230A1 (en) * | 2007-10-24 | 2009-04-30 | Howard Miller | Methods and apparatuses for load balancing between multiple processing units |
US20090241117A1 (en) * | 2008-03-20 | 2009-09-24 | International Business Machines Corporation | Method for integrating flow orchestration and scheduling for a batch of workflows |
US20110093852A1 (en) * | 2009-10-21 | 2011-04-21 | Sap Ag | Calibration of resource allocation during parallel processing |
CN102043673A (zh) * | 2009-10-21 | 2011-05-04 | Sap股份公司 | 并行处理期间资源分配的校准 |
US20120317579A1 (en) * | 2011-06-13 | 2012-12-13 | Huan Liu | System and method for performing distributed parallel processing tasks in a spot market |
CN103197952A (zh) * | 2012-01-09 | 2013-07-10 | 华为技术有限公司 | 基于云基础设施的针对应用系统维护部署的管理系统和方法 |
Non-Patent Citations (1)
Title |
---|
ALKIS SIMITSIS 等: "HFMS: Managing the Lifecycle and Complexity of Hybrid Analytic Data Flows", 《ICDE CONFERENCE 2013》 * |
Also Published As
Publication number | Publication date |
---|---|
WO2015047302A1 (en) | 2015-04-02 |
EP3049959A1 (en) | 2016-08-03 |
US20160203026A1 (en) | 2016-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105580001A (zh) | 对与服务类别相关联的混合流进行处理 | |
CN108595157B (zh) | 区块链数据的处理方法、装置、设备和存储介质 | |
Ramezani et al. | Task scheduling optimization in cloud computing applying multi-objective particle swarm optimization | |
US20190079981A1 (en) | Distributed balanced optimization for an extract, transform, and load (etl) job | |
Aydın et al. | Multi-objective temporal bin packing problem: An application in cloud computing | |
US10331485B2 (en) | Method and system for meeting multiple SLAS with partial QoS control | |
CN108351805A (zh) | 计算图的基于流的加速器处理 | |
CN110249310A (zh) | 云计算系统中的用于虚拟机的资源管理 | |
CN104123189A (zh) | 一种基于IaaS层应用感知的Web多层应用动态资源调整方法 | |
US20200082316A1 (en) | Cognitive handling of workload requests | |
Kolisch et al. | An efficient metaheuristic for integrated scheduling and staffing IT projects based on a generalized minimum cost flow network | |
KR101471749B1 (ko) | 클라우드 서비스의 가상자원 할당을 위한 퍼지 로직 기반의 자원평가 장치 및 방법 | |
Alarifi et al. | A fault-tolerant aware scheduling method for fog-cloud environments | |
CN103780686A (zh) | 一种云组织内自定义申请审批流程的方法及系统 | |
Di Mauro et al. | Availability modeling and evaluation of a network service deployed via NFV | |
Xu et al. | Near‐optimal dynamic priority scheduling strategy for instance‐intensive business workflows in cloud computing | |
Liu et al. | Optimizing workload category for adaptive workload prediction in service clouds | |
CN113378498B (zh) | 一种任务分配方法及装置 | |
US10635492B2 (en) | Leveraging shared work to enhance job performance across analytics platforms | |
CN108874520A (zh) | 计算方法及装置 | |
Kucharska et al. | Extended learning method for designation of co-operation | |
CN117234733A (zh) | 一种分布式系统任务分配方法、系统、存储介质及设备 | |
Sood | Function points‐based resource prediction in cloud computing | |
Heger | Optimized resource allocation & task scheduling challenges in cloud computing environments | |
US20170132549A1 (en) | Automated information technology resource system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160511 |