Database Reference
In-Depth Information
powering these applications form a critical component in the software stack of these
applications. Service Level Agreements (SLA) represent the contract, which cap-
tures the agreed upon guarantees between a service provider and its customers. The
specifications of existing service level agreements (SLA) for cloud services are not
designed to flexibly handle even relatively straightforward performance and technical
requirements of consumer applications. In this chapter, we present an approach for
SLA-based management of cloud-hosted databases from the consumer perspective .
We present, cloudDB AutoAdmin, an end-to-end framework for consumer-centric
SLA management of cloud-hosted databases. The framework facilitates adaptive
and dynamic provisioning of the database tier of the software applications based on
application defined policies for satisfying their own SLA performance requirements,
avoiding the cost of any SLA violation and controlling the monetary cost of the
allocated computing resources. In this framework, the SLA of the consumer applica-
tions are declaratively defined in terms of goals that are subjected to a number of
constraints that are specific to the application requirements. The framework continu-
ously monitors the application-defined SLA and automatically triggers the execu-
tion of necessary corrective actions (scaling out/in the database tier) when required.
The framework is database platform-agnostic, uses virtualization-based database
replication mechanisms and requires zero source code changes of the cloud-hosted
software applications. The experimental results demonstrate the effectiveness of our
SLA-based framework in providing the consumer applications with the required
flexibility for achieving their SLA requirements.
11.1 INTRODUCTION
Cloud computing technology represents a new paradigm for the provisioning of
computing infrastructure. This paradigm shifts the location of this infrastructure
to the network to reduce the costs associated with the management of hardware and
software resources. Hence, businesses and users become able to access application
services from anywhere in the world on demand. Therefore, it represents the long-
held dream of envisioning computing as a utility [2] where the economy of scale
principles help to effectively drive down the cost of computing infrastructure. Cloud
computing simplifies the time-consuming processes of hardware provisioning, hard-
ware procurement, and software deployment. Therefore, it promises a number of
advantages for the deployment of data-intensive applications such as elasticity of
resources, pay-per-use cost model, low time to market, and the perception of (virtu-
ally) unlimited resources and infinite scalability. Hence, it becomes possible, at least
theoretically, to achieve unlimited throughput by continuously adding computing
resources (e.g., database servers) if the workload increases.
In practice, the advantages of the cloud computing paradigm opens up new avenues
for deploying novel applications that were not economically feasible in a traditional
enterprise infrastructure setting. Therefore, the cloud has become an increasingly
popular platform for hosting software applications in a variety of domains such as
e-retail, finance, news, and social networking. Thus, we are witnessing a prolifera-
tion in the number of applications with a tremendous increase in the scale of the data
generated as well as being consumed by such applications. Cloud-hosted database
Search WWH ::




Custom Search