4,016 research outputs found
A Game-Theoretic Approach for Runtime Capacity Allocation in MapReduce
Nowadays many companies have available large amounts of raw, unstructured
data. Among Big Data enabling technologies, a central place is held by the
MapReduce framework and, in particular, by its open source implementation,
Apache Hadoop. For cost effectiveness considerations, a common approach entails
sharing server clusters among multiple users. The underlying infrastructure
should provide every user with a fair share of computational resources,
ensuring that Service Level Agreements (SLAs) are met and avoiding wastes. In
this paper we consider two mathematical programming problems that model the
optimal allocation of computational resources in a Hadoop 2.x cluster with the
aim to develop new capacity allocation techniques that guarantee better
performance in shared data centers. Our goal is to get a substantial reduction
of power consumption while respecting the deadlines stated in the SLAs and
avoiding penalties associated with job rejections. The core of this approach is
a distributed algorithm for runtime capacity allocation, based on Game Theory
models and techniques, that mimics the MapReduce dynamics by means of
interacting players, namely the central Resource Manager and Class Managers
Modeling cloud resources using machine learning
Cloud computing is a new Internet infrastructure paradigm where management optimization has become a challenge to be solved, as all current management systems are human-driven or ad-hoc automatic systems that must be tuned manually by experts. Management of cloud resources require accurate information about all the elements involved (host machines, resources, offered services, and clients), and some of this information can only be obtained a posteriori. Here we present the cloud and part of its architecture as a new scenario where data mining and machine learning can be applied to discover information and improve its management thanks to modeling and prediction. As a novel case of study we show in this work the modeling of basic cloud resources using machine learning, predicting resource requirements from context information like amount of load and clients, and also predicting the quality of service from resource planning, in order to feed cloud schedulers. Further, this work is an important part of our ongoing research program, where accurate models and predictors are essential to optimize cloud management autonomic systems.Postprint (published version
DYVERSE: DYnamic VERtical Scaling in Multi-tenant Edge Environments
Multi-tenancy in resource-constrained environments is a key challenge in Edge
computing. In this paper, we develop 'DYVERSE: DYnamic VERtical Scaling in
Edge' environments, which is the first light-weight and dynamic vertical
scaling mechanism for managing resources allocated to applications for
facilitating multi-tenancy in Edge environments. To enable dynamic vertical
scaling, one static and three dynamic priority management approaches that are
workload-aware, community-aware and system-aware, respectively are proposed.
This research advocates that dynamic vertical scaling and priority management
approaches reduce Service Level Objective (SLO) violation rates. An online-game
and a face detection workload in a Cloud-Edge test-bed are used to validate the
research. The merits of DYVERSE is that there is only a sub-second overhead per
Edge server when 32 Edge servers are deployed on a single Edge node. When
compared to executing applications on the Edge servers without dynamic vertical
scaling, static priorities and dynamic priorities reduce SLO violation rates of
requests by up to 4% and 12% for the online game, respectively, and in both
cases 6% for the face detection workload. Moreover, for both workloads, the
system-aware dynamic vertical scaling method effectively reduces the latency of
non-violated requests, when compared to other methods
Permissive Controller Synthesis for Probabilistic Systems
We propose novel controller synthesis techniques for probabilistic systems
modelled using stochastic two-player games: one player acts as a controller,
the second represents its environment, and probability is used to capture
uncertainty arising due to, for example, unreliable sensors or faulty system
components. Our aim is to generate robust controllers that are resilient to
unexpected system changes at runtime, and flexible enough to be adapted if
additional constraints need to be imposed. We develop a permissive controller
synthesis framework, which generates multi-strategies for the controller,
offering a choice of control actions to take at each time step. We formalise
the notion of permissivity using penalties, which are incurred each time a
possible control action is disallowed by a multi-strategy. Permissive
controller synthesis aims to generate a multi-strategy that minimises these
penalties, whilst guaranteeing the satisfaction of a specified system property.
We establish several key results about the optimality of multi-strategies and
the complexity of synthesising them. Then, we develop methods to perform
permissive controller synthesis using mixed integer linear programming and
illustrate their effectiveness on a selection of case studies
A Game-Theoretic Approach for Runtime Capacity Allocation in MapReduce
open4noNowadays many companies have available large amounts of raw, unstructured data. Among Big Data enabling technologies, a central place is held by the MapReduce framework and, in particular, by its open source implementation, Apache Hadoop. For cost effectiveness considerations, a common approach entails sharing server clusters among multiple users. The underlying infrastructure should provide every user with a fair share of computational resources, ensuring that service level agreements (SLAs) are met and avoiding wastes. In this paper we consider mathematical models for the optimal allocation of computational resources in a Hadoop 2.x cluster with the aim to develop new capacity allocation techniques that guarantee better performance in shared data centers. Our goal is to get a substantial reduction of power consumption while respecting the deadlines stated in the SLAs and avoiding penalties associated with job rejections. The core of this approach is a distributed algorithm for runtime capacity allocation, based on Game Theory models and techniques, that mimics the MapReduce dynamics by means of interacting players, namely the central Resource Manager and Class Managers.Gianniti, Eugenio; Ardagna, Danilo; Ciavotta, Michele; Passacantando, MauroGianniti, Eugenio; Ardagna, Danilo; Ciavotta, Michele; Passacantando, Maur
Formulating and managing viable SLAs in cloud computing from a small to medium service provider's viewpoint: A state-of-the-art review
© 2017 Elsevier Ltd In today's competitive world, service providers need to be customer-focused and proactive in their marketing strategies to create consumer awareness of their services. Cloud computing provides an open and ubiquitous computing feature in which a large random number of consumers can interact with providers and request services. In such an environment, there is a need for intelligent and efficient methods that increase confidence in the successful achievement of business requirements. One such method is the Service Level Agreement (SLA), which is comprised of service objectives, business terms, service relations, obligations and the possible action to be taken in the case of SLA violation. Most of the emphasis in the literature has, until now, been on the formation of meaningful SLAs by service consumers, through which their requirements will be met. However, in an increasingly competitive market based on the cloud environment, service providers too need a framework that will form a viable SLA, predict possible SLA violations before they occur, and generate early warning alarms that flag a potential lack of resources. This is because when a provider and a consumer commit to an SLA, the service provider is bound to reserve the agreed amount of resources for the entire period of that agreement – whether the consumer uses them or not. It is therefore very important for cloud providers to accurately predict the likely resource usage for a particular consumer and to formulate an appropriate SLA before finalizing an agreement. This problem is more important for a small to medium cloud service provider which has limited resources that must be utilized in the best possible way to generate maximum revenue. A viable SLA in cloud computing is one that intelligently helps the service provider to determine the amount of resources to offer to a requesting consumer, and there are number of studies on SLA management in the literature. The aim of this paper is two-fold. First, it presents a comprehensive overview of existing state-of-the-art SLA management approaches in cloud computing, and their features and shortcomings in creating viable SLAs from the service provider's viewpoint. From a thorough analysis, we observe that the lack of a viable SLA management framework renders a service provider unable to make wise decisions in forming an SLA, which could lead to service violations and violation penalties. To fill this gap, our second contribution is the proposal of the Optimized Personalized Viable SLA (OPV-SLA) framework which assists a service provider to form a viable SLA and start managing SLA violation before an SLA is formed and executed. The framework also assists a service provider to make an optimal decision in service formation and allocate the appropriate amount of marginal resources. We demonstrate the applicability of our framework in forming viable SLAs through experiments. From the evaluative results, we observe that our framework helps a service provider to form viable SLAs and later to manage them to effectively minimize possible service violation and penalties
- …