PolarDBMS: Towards a Cost-Effective and Policy-Based Data Management in the Cloud Ilir Fetai, Filip-M. Brinkmann and Heiko Schuldt Department of Informatics and Mathematics University of Basel Switzerland {ilir.fetai|filip.brinkmann|heiko.schuldt}@unibas.ch Abstract—The proliferation of Cloud computing has attracted a large variety of applications which are completely deployed on resources of Cloud providers. As data management is an essential part of these applications, Cloud providers have to deal with many different requirements for data management, depending on the characteristics and guarantees these applications are supposed to have. The objective of a Cloud provider is to support these diverse requirements with a basic set of customizable modules and protocols that can be (dynamically) combined. With the pay-as-you-go cost model of the Cloud, literally each user action and resource usage has a price tag attached to it. Thus, for the application providers, it is essential that the needs of their applications are provided in a cost-optimized manner. In this paper, we present the work in progress PolarDBMS, a flexible and dynamically adaptable system for managing data in the Cloud. PolarDBMS derives policies from application and service objectives. Based on these policies, it will automatically deploy the most efficient and cost-optimized set of modules and protocols and monitor their compliance. If necessary, the modules and/or their customization is changed dynamically at run-time. Several modules and protocols that have already been developed are presented. Additionally, we discuss the challenges that have to be met to fully implement PolarDBMS. I. I NTRODUCTION Clouds are very attractive environments for deploying different types of applications. They feature great advantages compared to traditional environments, mainly due to their highly available, scalable and elastic infrastructures based on a pay-as-you-go cost model. Data management is an essential part of applications de- ployed in the Cloud. Applications have different requirements towards data management properties such as data availability, data consistency, or data preservation, to name just a few. These properties, in turn, might be realized with different guarantees like, for instance, different availability degrees or different consistency models. Such a guarantee can again have different implementations – e.g., [1], [2] for One-Copy- Serializability (1SR). Existing database management systems (DBMS) [3]–[6] usually provide only specific and especially fixed data management solutions for each of these properties, thus they are not able to dynamically change them at run-time. Some existing DBMS (e.g., [3], [4]) provide weak con- sistency in order to increase scalability and availability (as a consequence of the CAP theorem [7]), whereas most tradi- tional DBMSs provide strong data consistency and thus take SLOs Policies Normalized and conflict-free policies Optimal configuration SLGs Policies normalization & conflict resolution Selection and evaluation of the configuration Guarantee extraction Modification of SLOs based on SLGs Transformation to policies Requirements specification in form of SLOs Fig. 1: Communication Cycle limited scalability and availability into account [8]. This leads to overcustomized and earmarked DBMSs which focus on a very specific scenario without being able to adapt to diverging requirements of different scenarios. The client has no means of influencing the system’s behaviour and is thus forced to either adapt his applications or build his own DBMS. In the Cloud, each action has a price tag associated with it. In general, the stronger the requirements a client demands, the higher are the costs that incur. By costs we mean both the overhead and the monetary costs generated for providing the guarantees. On one hand, cost can be reduced by selecting the best suited implementation which delivers the desired guarantees. On the other hand, the client should be able to reduce his cost by having the possibility to exactly specify what he wants (e.g., by requiring less than provided) – and also getting it. From the above we can conclude that there are three main aspects which lead to unnecessary costs. First, the inability of the client to specify exactly what it needs may lead to a situation, in which the client gets too much or too less – both generating unnecessary costs. In the first case, the client has to pay for the over-provisioning. In the second case, costs