I. Introduction
With the increasing popularity of Web 2.0 applications, massive amounts of different types of data are being generated at an unprecedented scale. Given this rate of continuous growth, coupled with advancement in broadband connectivity, virtualization, and other technologies, the cloud computing model, with its capability to dynamically provide for computation and storage, has emerged as an ideal choice for data-intensive and database-as-a-service computing infrastructures. The need to provide for capacity both in terms of storage and computation, and to support online transactional processing and online analytical processing in the cloud, has given rise to major challenges in architecting elastic and efficient data servers.