Towards Understanding Uncertainty in Cloud Computing Resource Provisioning

Andrei Tchernykh, Uwe Schwiegelsohn, Vassil Alexandrov, El-ghazali Talbi
2015 Procedia Computer Science  
In spite of extensive research of uncertainty issues in different fields ranging from computational biology to decision making in economics, a study of uncertainty for cloud computing systems is limited. Most of works examine uncertainty phenomena in users' perceptions of the qualities, intentions and actions of cloud providers, privacy, security and availability. But the role of uncertainty in the resource and service provisioning, programming models, etc. have not yet been adequately
more » ... in the scientific literature. There are numerous types of uncertainties associated with cloud computing, and one should to account for aspects of uncertainty in assessing the efficient service provisioning. In this paper, we tackle the research question: what is the role of uncertainty in cloud computing service and resource provisioning? We review main sources of uncertainty, fundamental approaches for scheduling under uncertainty such as reactive, stochastic, fuzzy, robust, etc. We also discuss potentials of these approaches for scheduling cloud computing activities under uncertainty, and address methods for mitigating job execution time uncertainty in the resource provisioning. advantages cloud computing still has many drawbacks, especially in the areas of security, reliability, performance of both computing and communication, to list just a few. They are strengthened by the uncertainty, which accompanies all of these shortcoming. The vast majority of the research efforts in scheduling assumes complete information about the scheduling problem and a static deterministic execution environment. However, in the cloud computing, services and resources are subject to considerable uncertainty during provisioning. We argue that the uncertainty is the main hassle of cloud computing bringing additional challenges to end-users, resource providers, and brokering. They require waiving habitual computing paradigms, adapting current computing models to this evolution, and designing novel resource management strategies to handle uncertainty in an effective way. There is a research on cloud computing examining the uncertainty phenomena in users' perceptions of the qualities, intentions and actions of cloud providers, privacy, security, availability, etc. among other aspects of cloud computing . But still, the role of uncertainty in the resource and service provisioning, provider investment and operational cost, programming models, etc. have not yet been adequately addressed in the scientific literature. There is a variety of types and sources of uncertainty. Table 1 describes some of them and briefly explain their impact on service provisioning: dynamic elasticity, dynamic performance changing, virtualization with loosely coupling applications to the infrastructure, resource provisioning time variation, inaccuracy of application runtimes estimation, variation of processing times and data transmission, workload uncertainty, processing time constraints (deadline, due date), effective bandwidth variation, and other phenomena. Workload in such an environment can be changed dramatically. It is difficult to estimate runtime of jobs accurately, improve prediction by historical data, prediction correction, prediction fallback, etc. (Ramírez et al., 2011) . The performance can be changed due to sharing of common resources with other VM. It is impossible to get exact knowledge about the system. Parameters like an effective processor speed, number of available processors, or actual bandwidth are changing in time. Elasticity has a higher repercussion on the quality of service, but adds a new factor of uncertainty. Uncertainty may be presented in different components of the computational and communication process. Important questions are: how particular dynamic computation and communication characteristics affect the efficiency; how these characteristics can be used to mitigate uncertainty meeting desired QoS constraints; how corresponding optimization problem can be solved in efficient way; how to deliver scalable and robust cloud behavior under uncertainties and specific constraints, such as budgets, QoS, SLA, energy costs; etc. It is important to study different stochastic, adaptive, reactive, knowledge-free, etc. resource provisioning algorithms considering effective alternatives to known deterministic optimization technologies while keeping QoS. In most existing solutions, it is assumed that behavior of VMs and services is predictable and stable in performance. On actual cloud infrastructures, these assumptions do not hold. While most providers guarantee a certain processor speed, memory capacity, and local storage for each provisioned VM, the actual performance is subject to the underlying physical hardware as well as the usage of shared resources by other VMs assigned to the same host machine. It is also true for communication infrastructure, where actual bandwidth is very dynamic and difficult to guarantee. A pool of virtualized, dynamically scalable computing resources, storages, software, and services of cloud computing add a new dimension to the service delivering problem. The manner in which the service provisioning can be done depends not only on the service property and resources it requires, but also users who share resources at the same time. The management of cloud infrastructure is a challenging task. Reliability, security, quality of service, and cost-efficiency are important issues in these systems. Available cloud models do not adequately capture uncertainty, inhomogeneity and dynamic performance changes inherent to non-uniform and shared infrastructures. To gain better understanding of the consequences of a cloud computing uncertainty, we study resource and service provisioning problems related with existing cloud infrastructures such as hybrid federation of public, private and community.
doi:10.1016/j.procs.2015.05.387 fatcat:slgh4s5c75efrgkprepjpkcqdq