NoSQL databases focus on analytical processing of large scale data-sets, offering increased scalability over commodity hardware. Their open-source development is supported by companies that deal with vast amounts of web data such as Google, Yahoo, Facebook and Twitter. One of their strongest features is elasticity, which allows for fairly portioned premiums and high-quality performance. Yet, the process of adaptive expansion and contraction of resources usually involves a lot of manual effort during cluster configuration. To date, there exists no open-source system that can automatically adjust NoSQL resources according to user demands.
In this work, we present TIRAMOLA, an open-source framework written in Python for adaptive NoSQL resource provisioning by utilizing any Amazon compatible cloud infrastructure. We present a prototype implementation that enables automatic elastic operations of the most popular NoSQL engines based on administrator or application-specified constraints. We discuss about its architectural components, and we present some initial experiments that measure its adaptivity under various NoSQL systems in a private cloud infrastructure.