Web kazıma için mikroservis tabanlı bir sistem
Microservice-based system for web scraping
Yazar: BURAK SEVİNÇ
Danışman: PROF. DR. ERDİNÇ UZUN
Tekirdağ Namık Kemal Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı
Derece: Yüksek Lisans, 2024
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control
Dizin: Bilgi çıkarımı = Information extraction ; Mikro hizmetler mimarisi = Microservices architecture ; Web madenciliği = web mining ; Yazılım mimarisi = Software architecture

Özet:
İnternetin hızla yaygınlaşması, Web verilerinin hem hacminde hem de çeşitliliğinde önemli bir artışa yol açmış ve Web sayfalarından değerli bilgilerin çıkarılması için etkili tekniklerin geliştirilmesini gerektirmiştir. Geleneksel monolitik mimariler Web kazıma için  işlevsel olsa da özellikle büyük ölçekli veri çıkarma görevleri için genellikle ölçeklenebilirlik ve sürdürülebilirlik zorluklarıyla karşı karşıyadır. Bu tez, modülerlik, bağımsız ölçeklenebilirlik ve gelişmiş performans için mikro hizmetlerden yararlanarak bu doğal sınırlamaları ele alan Web kazıma için mikro hizmet tabanlı bir sistemin tasarımını ve uygulamasını araştırmaktadır. Önerilen sistem, her biri Web kazıma sürecindeki belirli görevlerden sorumlu olan tarayıcı, API katmanı, kuyruk yöneticisi ve veri depolama kapsayıcıları dahil olmak üzere birden fazla mikro hizmetten oluşmaktadır. Bu mimari, her bir bileşenin bağımsız olarak geliştirilmesini, test edilmesini ve ölçeklendirilmesini kolaylaştırarak genel sistem verimliliğini artırmaktadır. Performans değerlendirmeleri, mikro hizmet tabanlı sistemin yanıt süresi, verim ve kaynak kullanımı açısından geleneksel monolitik mimarilerden önemli ölçüde daha iyi performans gösterdiğini ortaya koymaktadır. Sonuçlar, mikro hizmet yaklaşımının toplam ve ortalama sayfa kazıma sürelerini azalttığını, işlem ve bellek verimliliğini artırdığını ve monolitik sistemlere göre avantajlarını doğruladığını göstermektedir. Bu tez çalışması, Web veri çıkarımının artan taleplerini gelişmiş performans ve kararlılıkla karşılayabilen ölçeklenebilir, sürdürülebilir ve verimli bir mikro hizmet tabanlı sistem sunarak Web veri çıkarımı alanına katkıda bulunmaktadır.

Abstract:
The rapid expansion of the Internet has led to a significant increase in both the volume and variety of Web data, necessitating the development of efficient techniques for extracting valuable information from Web pages. Traditional monolithic architectures for Web scraping, while functional, often face scalability and maintainability challenges, especially for large-scale data extraction tasks. This thesis explores the design and implementation of a microservice-based system for Web scraping that addresses these inherent limitations by leveraging microservices for modularity, independent scalability, and improved performance. The proposed system consists of multiple microservices, including the crawler, API layer, queue manager, and data storage containers, each responsible for specific tasks within the Web scraping process. This architecture facilitates independent development, testing, and scaling of each component, thereby improving overall system efficiency. Performance evaluations show that the microservice-based system significantly outperforms traditional monolithic architectures in terms of response time, throughput, and resource utilization. The results show that the microservice approach reduces total and average page scraping times and improves process and memory efficiency, confirming its advantages over monolithic systems. This research contributes to the field of Web data extraction by presenting a scalable, maintainable, and efficient microservice-based system capable of meeting the growing demands of Web data extraction with improved performance and stability.