Due to the benefits introduced by the Cloud computing paradigm and the increase of available Cloud services (VM- and non VM-oriented), in the last years the number of application developers strongly supporting a partial or complete migration of application component to Cloud environments has significantly increased. For example, it is possible to host the application’s database off-premise (e.g. in a DBaaS solution) while keeping the remaining components (presentation or business logic components) on-premise. However, the previous application deployment is only one possible distribution alternative, and the existence of further alternatives allows the generation of a wide variety of distribution combinations. In addition, the challenges for application developers to efficiently select optimal strategy of application’s deployment by considering evolving application performance with fluctuating workload has increased rapidly. How to select, configure and deploy an application optimally to satisfy functional and non-functional requirements of business and operation has been a research area in both academic and industry domains. In this Master thesis, basing on the approaches proposed in previous work, we first conduct a research on existing approaches and technologies about how to persist, retrieve and build typed graph-based Cloud application topologies leveraging the benefits introduced and developed in graph databases and graph database technologies, respectively. Consequently, we develop the core algorithms for persisting and discovering application topologies focusing on their similar characteristics. Such conceptual models relate to the required structural aspects representing the relationship between the application topologies, their performance aspects, and their evolving workload. As a result of this thesis, a prototypical implementation of a RESTful-based framework to support discovering and building reusable viable topologies of Cloud application w.r.t. evolving functional and non-functional aspects is provided, e.g. taking into account its performance, its corresponding profile and its corresponding evolving workload.