Real-Time visualization of a Cloud-based data infrastructure (Bachelor Thesis, Finished)
Author
Jan Ebbe
Description
Clouds are very attractive environments for deploying different type of applications, such as online shops, auction applications, etc. 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. The cloud cost model allows clients (application providers) to pay only for the resources they use and avoid unnecessary costs.
Additionally, the clients can rely on the Cloud provider to take care about the availability and scalability. Data is an important part of applications deployed in the Cloud. High availability and scalability at data level can be achieved by means of replication, i.e. Cloud providers replicate data on different machines across different data centres. The higher the availability and scalability requirements of a client the higher the costs generated due to the necessity of using more resources.
Currently, clients have limited means of a real-time access to the system state. Concretely, the clients may be interested to visualize the underlying infrastructure, the resources (number of replica sites) used to provide the desired availability and scalability, the costs, etc. In the best case, the clients get periodic reports. However, periodic reports may delay optimization actions from client point of view (e.g., already too much costs generated).
The goal of this bachelor project is to build a graphical user interface (GUI) for a real-time visualization of a Cloud-based replicated data system and provide a cockpit-view for the system metadata, such as the load of replica sites, cost per replica site, overall costs, failure probability of replica sites, overall system availability, etc.
Additionally, different system operations should be implemented based on GUI interaction. For example, it should be possible to create new replica sites or shutdown existing ones. Additionally, the progress of each of the different possible operations should be visualized.