Many real-world scientific workflows can be represented by a Directed Acyclic Graph (DAG), where each node represents a task and a directed edge signifies a dependency between two tasks. Due to the increasing computational resource requirements of these workflows, they are deployed on multi-cloud systems for execution. In this paper, we propose a scheduling algorithm that allocates resources to the tasks present in the workflow using an efficient list-scheduling approach based on the parameters cost, processing time, and reliability. Next, for a given a task-resource mapping, we propose a cipher assignment algorithm that assigns security services to edges responsible for transferring data in time-optimal manner subject to a given security constraint. The proposed algorithms have been analyzed to understand their time and space requirements. We implement the proposed scheduling and cipher assignment algorithm and experimented with two real-world scientific workflows namely Epigenomics and Cybershake. We compare the performance of the proposed scheduling algorithm with the state-of-art evolutionary methods. We observe that our method outperforms the state-of-art methods always in terms of cost and reliability, and is inferior in terms of makespan in some cases.
翻译:许多现实世界的科学工作流可表示为有向无环图(DAG),其中每个节点代表一个任务,有向边表示两个任务间的依赖关系。由于这些工作流对计算资源的需求日益增长,它们被部署在多云系统上执行。本文提出一种调度算法,该算法基于成本、处理时间和可靠性等参数,采用高效的列表调度方法为工作流中的任务分配资源。接着,针对给定的任务-资源映射,我们提出一种密码分配算法,该算法在给定安全约束下,以时间最优的方式为负责数据传输的边分配安全服务。我们分析了所提算法的时间与空间需求。我们实现了所提出的调度与密码分配算法,并在两个真实科学工作流(Epigenomics 和 Cybershake)上进行了实验。将所提调度算法与最先进的进化方法进行性能比较。我们发现,我们的方法在成本和可靠性方面始终优于最先进的方法,但在某些情况下在完工时间方面表现较差。