Kantarcı, Aylin2022-11-012022-11-012019https://hdl.handle.net/11454/75517Teknolojinin önlenemez hızdaki ilerleyişi yazılım uygulamalarında da etkisini göstermektedir ki, uygulamaların gereksinimleri her geçen gün değişmekte ve bu uygulamaları kullananların sayısı da artmaktadır. Dolayısıyla uygulamaların artan kullanıcı sayısı, istek yükü ve yeni gereksinimlere karşı ihtiyaç duyduğu bilgisayar kaynağı miktarı da değişmektedir. Bu durumda sabit donanıma sahip tek bir sunucu bilgisayar üzerinde çalışan bir uygulama, bu değişken yüke ve gereksinimlere ayak uyduramamakta, sunduğu servislerde ve dolayısıyla da hizmetinde gecikmeler, aksaklıklar ve kalite düşüklüğü oluşmaya başlamaktadır. Bu soruna bir çözüm ise; devops (development and operations) yani geliştirim ve işletim pratiklerinin uygulanarak, bilgisayar-uygulama etkileşimlerinin en-iyileştirilmesini sağlamaktır. Bu projede öncelikle uygulamaların değişken ve artma eğilimindeki kaynak ihtiyacına bir çözüm olarak bir bilgisayar kümesi ortamı oluşturmak amaçlanmıştır. Buna göre; artan istek ve kaynak ihtiyacında yük dengeleme, yeni bir bilgisayarın kümeye (konfigürasyon olarak) kolayca eklenerek kaynak kapasitesinin yatay olarak artırılması, uygulamanın küme üzerinde çalışacak ve genişleyecek şekilde dağıtılması (deploy) vb. işlemler kolayca yapılabilmektedir. Bilgisayar kümesi, artık sanallaştırmanın yerine kullanılmaya başlanan “konteyner” teknolojisi ve orkestrasyonu kullanılarak kurulmuştur. Bu sayede fiziksel bilgisayarların kaynaklarını mantıksal parçalara bölerek sanal bilgisayarlar yaratmak mümkün olmakta ve bu da etkin bir kaynak yönetimine olanak sunmaktadır. Küme bilgisayar ortamına çizge veritabanı servisi kurularak, ilişkisel veri odaklı ve genişleyebilir/ölçeklenebilir bir saklama altyapısı oluşturulmuştur. Sağlık alanında seçilen küçük ölçekli bir veri kümesi ile çizge veritabanı servisi ilişkisel veritabanı ile kıyaslanarak değerlendirilmiştir. Elde edilen sonuçlarda kümenin sağlamış olduğu esnek altyapı ve NoSQL özellikteki çizge deposunun sağlamış olduğu ölçeklenebilirlik ile işletim sistemi ve servis seviyelerinde genişleyebilirlik ortaya konmuştur.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.trinfo:eu-repo/semantics/openAccessAnahtar kelime mevcut olmadığı için bu alan boş bırakılmıştır.Küme bilgisayar ortamlarında genişleyebilir uygulama geliştirilmesiProject