SCALABLE APPLICATION DEVELOPMENT ON CLUSTER COMPUTER ENVIRONMENTS

Project no. 765 · Status: Kapanmış · 2016

Summary

Advances in technology with an unstoppable speed show their effects in applications, such that requirements of these applications are changing and number of users of these applications is continuously increasing. Thus; increasing amount of user, request load and the amount of computer resources for the new application requirements may change over time. Therefore an application which runs on a single machine with a fixed amount of resources cannot keep up with this changing load and requirements, resulting some latencies, faults and quality reduction in service. Applying devops (development and operations) practices and optimizing application-computer interaction can be a solution for this problem. In this project we aimed to create a computer cluster environment in order to find a solution for variable and increasing resource requirement of applications. Thus, it is easy to make some operations such as load balancing in heavy request workload and resource requirement, increasing resource capacity by easily adding a new computer to the cluster, deploying and distributing an application with the ability to scale up on the cluster etc. Our computer cluster has been built by “container” technology and orchestration which is started to be used in place of virtual machines. By this way it is possible to split resources of physical computers into logical units, and this allows the efficient management of resources. We set up a graph database service on the cluster, so a scalable and relation based storage layer has been built. We evaluate the graph store we have built against a relational database service using a small dataset in medical healthcare area. According to the results, we observed both operating system and service level scalability by means of elastic infrastructure of the container based computer cluster and distributed & scalable features of NoSQL graph database.

View details