Resource-aware hybrid scheduling algorithm in heterogeneous distributed computing - Vasile, Mihaela-Andreea; Pop, Florin; Tutueanu, Radu-Ioan; Cristea, Valentin; Kołodziej, Joanna (Future generation computer systems, 2015)
Today, almost everyone is connected to the Internet and uses different Cloud solutions to store, deliver and process data. Cloud computing assembles large networks of virtualized services such as hardware and software resources. The new era in which ICT penetrated almost all domains (healthcare, aged-care, social assistance, surveillance, education, etc.) creates the need of new multimedia content-driven applications. These applications generate huge amount of data, require gathering, processing and then aggregation in a fault-tolerant, reliable and secure heterogeneous distributed system created by a mixture of Cloud systems (public/private), mobile devices networks, desktop-based clusters, etc. In this context dynamic resource provisioning for Big Data application scheduling became a challenge in modern systems. We proposed a resource-aware hybrid scheduling algorithm for different types of application: batch jobs and workflows. The proposed algorithm considers hierarchical clustering of the available resources into groups in the allocation phase. Task execution is performed in two phases: in the first, tasks are assigned to groups of resources and in the second phase, a classical scheduling algorithm is used for each group of resources. The proposed algorithm is suitable for Heterogeneous Distributed Computing, especially for modern High-Performance Computing (HPC) systems in which applications are modeled with various requirements (both IO and computational intensive), with accent on data from multimedia applications. We evaluate their performance in a realistic setting of CloudSim tool with respect to load-balancing, cost savings, dependency assurance for workflows and computational efficiency, and investigate the computing methods of these performance metrics at runtime. •We proposed a hybrid approach for tasks scheduling in Heterogeneous Distributed Computing.•The proposed algorithm considers hierarchical clustering of the available resources into groups.•We considered different scheduling strategies for independent tasks and scheduling for DAG scheduling.•We analyze the performance of our proposed algorithm through simulation by using and extending CloudSim.