QoS-Aware Resource Allocation for Video Transcoding in Clouds
As the biggest big data, video data streaming in the network contributes the largest portion of global traffic nowadays and in the future. Due to heterogeneous mobile devices, networks, and user preferences, the demands of transcoding source videos into different versions have increased significantly. However, video transcoding is a time-consuming task, and how to guarantee quality-of-service (QoS) for large video data is very challenging, particularly for those real-time applications that hold strict delay requirement such as live TV. In this paper, we propose a cloud-based online video transcoding (COVT) system aiming to offer economical and QoS guaranteed solution for online large-volume video transcoding. COVT utilizes the performance profiling technique to obtain the different performances of transcoding tasks in different infrastructures. Based on the profiles, we model the cloud-based transcoding system as a queue and derive the QoS values of the system based on the queuing theory. With the analytically derived relationship between QoS values and the number of CPU cores required for transcoding workloads, COVT is able to solve the optimization problem and obtain the minimum resource reservation for specific QoS constraints. A task scheduling algorithm is further developed to dynamically adjust the resource reservation and schedule the tasks so as to guarantee the QoS in runtime. We implement a prototype system of COVT and experimentally study the performance on real-world workloads. Experimental results show that the COVT effectively provisions a minimum number of resources for predefined QoS. To validate the effectiveness of our proposed method under large-scale video data, we further perform simulation evaluation, which again shows that the COVT is capable of achieving economical and QoS-aware video transcoding in cloud environment.