Popis: |
Modern cloud infrastructures based on virtual hardware provide new opportunities and challenges for developers and system administrators alike. Most notable is the promise of resource elasticity, whereby the infrastructure can increase or decrease in size based on demand. Utilizing elastic resources, applications can provide better quality of service and reduce cost by only paying for the required amount of resources. In this work, we extensively study the performance of some popular NoSQL databases over an elastic cloud infrastructure. NoSQL databases focus on analytical processing of large scale datasets, offering increased scalability over commodity hardware. We then proceed to describe TIRAMOLA, a cloud-enabled framework for automatic provisioning of elastic resources on any NoSQL platform. Our system administers cluster resources (VMs) according to user-or application-specified constraints through an expandable monitoring and command-issuing module. Users can easily modify resizing policies, based on application-specific metrics and thus fully utilize the elasticity of the underlying infrastructure. As a realistic use-case, we apply this framework on top of a fully distributed RDF store backed by an elastic NoSQL database. Letting TIRAMOLA manage the number of committed resources results in automated cluster resize actions and throughput maximization, while application experts need only provide simple elasticity rules. |