论文部分内容阅读
云计算应用通常需要整合多个具有依赖关系的操作实现复杂的业务逻辑。具有依赖关系的任务集合可以用工作流建模。云工作流应用的负载随时间变化,云用户必须根据应用的需求实时申请和释放资源。工作流应用的不同任务特点、偏序关系、数据本地化、软件本地化和云计算的按区间计费模型等使得云工作流应用的资源动态供应更加复杂。为不同类型应用设计合适的资源动态扩展与释放方法以最小化资源租赁总成本是云计算的关键问题。论文的主要工作体现在:(1)基于非共享服务的工作流调度与优化。提出基于全关键路径优化的快速启发式方法。该方法将关键路径优化问题转化为多目标多段决策问题。提出基于动态规划的多目标多段决策问题求解方法。在满足截止期约束下,该方法从Pareto解集中挑选成本最低的解作为原关键路径优化问题的解。通过迭代优化多条全关键路径,最小化工作流应用的非共享服务租赁总成本。(2)基于共享服务的工作流资源供应方法。传统服务计算中服务按次收费,已经租赁的服务实例不能被工作流内部任务共享,导致资源浪费。结合云计算中服务按区间计费的特点,通过对已租赁时间片进行重用,提高资源利用率。提出考虑按区间计费、数据本地化和软件本地化的工作流资源动态供应方法。该方法主要包括基于CPLEX的截止期划分方法和基于多规则的时间槽匹配算法。(3)不可拆分批处理工作流资源供应方法。一个批处理任务通常需要租赁多个服务实例(例如,多个虚拟机)。提出的资源供应方法通过在不同的批处理任务之间共享虚拟机集群的方式提高资源利用率。在不考虑按区间计费的条件下,该方法首先将原问题转化为传统的非共享服务选择问题,然后利用非共享服务的求解方法进行截止期划分。最后提出考虑执行效率和时间片利用率的的时间槽选择方法。(4)可拆分批处理工作流的资源供应方法。为进一步提高批处理工作流的资源利用率,有些资源管理系统中(例如YARN)批处理任务可以被拆分调度。本文提出基于单元的截止期划分方式和可拆分式任务调度方法。该方法首先利用最小预期浪费成本优先的方法将工作流总截止期合理的分配到多个具有竞争关系的任务单元。然后基于任务截止期,将批处理工作流的任务分别调度到合适的时间槽。