РОЗРОБКА АЛГОРИТМУ БАЛАНСУВАННЯ ВУЗЛІВ З ВИКОРИСТАННЯМ ТЕХНОЛОГІЙ МАШИННОГО НАВЧАННЯ ТА ДИНАМІЧНОГО ОБЧИСЛЕННЯ ВАГИ

Автор(и)

  • Д. С. ВОВЧЕНКО National Technical University of Ukraine “Igor Sikorsky Kyiv Polytechnic Institute” https://orcid.org/0009-0008-1806-5159
  • Л. М. ОЛЕЩЕНКО Національний технічний університет України «Київський політехнічний інститут імені Ігоря Сікорського» https://orcid.org/0000-0001-9908-7422

DOI:

https://doi.org/10.35546/kntu2078-4481.2025.3.2.12

Ключові слова:

програмне забезпечення, алгоритми балансування вузлів, системи з багатьма вузлами, Python, онлайн-модель машинного навчання

Анотація

У статті представлено метод та програмне забезпечення для балансування вузлів у багатовузлових системах з використанням технологій машинного навчання та динамічного обчислення ваги. Актуальність дослідження зумовлена проблемою виникнення «вузьких місць» при обробці великих даних, коли один із вузлів перевантажується, тоді як інші залишаються недовантаженими, що призводить до неефективного використання ресурсів. Метою дослідження є створення програмної системи, здатної в режимі реального часу здійснювати ефективний розподіл навантаження між вузлами та забезпечувати стабільну продуктивність при високих обсягах даних.Запропонований алгоритм поєднує онлайн-модель машинного навчання, яка оцінює складність запитів на основі їх характеристик (таких як довжина, кількість заголовків, тип операцій, наявність JOIN у SQL-запитах), та механізм динамічного обчислення ваги для контролю рівня завантаження вузлів. Важливою особливістю є здатність системи навчатись безпосередньо під час обробки запитів, що усуває потребу у попередній підготовці даних та скорочує час розгортання. У процесі дослідження було використано Python-бібліотеку River, яка надає необхідні інструменти для реалізації онлайн-моделей. Для перевірки роботи запропонованого алгоритму було проведено експериментальне моделювання системи з трьома вузлами та тестування на наборі із 10 тисяч запитів. Запропонований метод у середньому забезпечує покращення ефективності на 2–5 % завдяки більш збалансованому розподілу навантаження між вузлами порівняно з базовими алгоритмами. Отримані результати показали, що запропонований метод демонструє ефективність, співставну з класичними алгоритмами (Round Robin, Random, Join Shortest Queue), однак забезпечує кращий розподіл запитів між вузлами завдяки врахуванню їх складності. Порівняльний аналіз підтвердив, що навіть у контрольованих умовах алгоритм здатен досягати рівня ефективності базових підходів, а в реальних сценаріях, де характер запитів значно варіюється, його переваги можуть виявитися більш суттєвими. Подальші дослідження спрямовані на удосконалення тестового середовища, інтеграцію алгоритму в реальні розподілені системи та відокремлення логіки машинного навчання від загальної архітектури для підвищення гнучкості та масштабованості.

Посилання

Hunter S. W., Smith W. E. (1999). Availability Modeling and Analysis of a Two Node Cluster. 5th Intl. Conference on Information Systems, Analysis and Synthesis, Orlando, FL.

Yong Meng Teo, Ayani R. (2001). Comparison of Load Balancing Strategies on Cluster-based Web Servers. Simulation. 77 (5–6), pp. 185–195. https://doi.org/10.1177/00375497010770050

Belgaum M. R., Musa S., Alam M. M. and. Su’ud M. M. (2020). A Systematic Review of Load Balancing Techniques in Software-Defined Networking. IEEE Access, vol. 8, pp. 98612–98636. https://doi.org/10.1109/ACCESS.2020.2995849

Pan Z., Jiangxing Z. (2017). Load Balancing Algorithm for Web Server Based on Weighted Minimal Connections. Journal of Web Systems and Applications. Vol. 1. P. 1–8. DOI: https://dx.doi.org/10.23977/jwsa.2017.11001

Pei-rui J., Li-min M., Yu-zhou S., Yang-tian-xiu H. (2017). A client proximity based load balance algorithm in web sever cluster. 2nd International Conference on Wireless Communication and Network Engineering. P. 317–322.

Omori M., Nishi H. (2018). Request Distribution for Heterogeneous Database Server Clusters with Processing Time Estimation. International Conference on Industrial Informatics (INDIN), Porto. P. 278–283. DOI: 10.1109/INDIN.2018.8471931

Marcin Jamro. C# Data Structures and Algorithms. Second Edition. Published by Packt Publishing Ltd., in Birmingham, UK. 2024. – 349 p.

Okano H., Yamaguchi F., Takagiwa K., Nishi H. (2014). Traffic-based Flow Cache Port Separate Mechanism for Network processor. The Institute of Electoronics, Information and Communication Engineers Technical Report, vol. 114, no. 18, pp. 69–74.

##submission.downloads##

Опубліковано

2025-11-28