Details

Title Оптимизация распределения нагрузки в распределенных базах данных с использованием нейросетевых технологий: выпускная квалификационная работа бакалавра: направление 09.03.02 «Информационные системы и технологии» ; образовательная программа 09.03.02_02 «Информационные системы и технологии»
Creators Ляхов Дмитрий Сергеевич
Scientific adviser Журавская Анжелика
Organization Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности
Imprint Санкт-Петербург, 2025
Collection Выпускные квалификационные работы; Общая коллекция
Subjects распределённые базы данных; нейросетевые технологии; балансировка нагрузки; производительность; масштабируемость; алгоритмы машинного обучения; distributed databases; neural network technologies; load balancing; performance; scalability; machine learning algorithms
Document type Bachelor graduation qualification work
File type PDF
Language Russian
Level of education Bachelor
Speciality code (FGOS) 09.03.02
Speciality group (FGOS) 090000 - Информатика и вычислительная техника
DOI 10.18720/SPBPU/3/2025/vr/vr25-95
Rights Доступ по паролю из сети Интернет (чтение, печать)
Additionally New arrival
Record key ru\spstu\vkr\34202
Record create date 2/26/2025

Allowed Actions

Action 'Read' will be available if you login or access site from another network

Group Anonymous
Network Internet

Данная работа посвящена сравнительному анализу решений по распределению нагрузки в распределённых база данных и разработке современного решения на основе нейросетевых технологий. Основной уклон работы сделан на повышение производительности и устойчивости системы за счёт самообучения и предсказания в условиях высокой нагрузки и масштабирования. Задачи, которые решались в ходе исследования: 1) Проведение анализа существующих методов распределения нагрузки в РБД. 2) Изучение роли и возможностей нейросетевых технологий для оптимизации распределения нагрузки. 3) Разработка алгоритма распределения нагрузки с использованием машинного обучения. 4) Реализация разработанного алгоритма и его тестирование на наборе данных, приближенном к реальным условиям. 5) Проведение сравнительного анализа предложенного подхода с классическими методами. Работа выполнена с использованием языка программирования Python, программной библиотеки TensorFlow и базы данных SQLite. Для моделирования распределённых систем использовались виртуальные среды, имитирующие работы серверных решений при высокой нагрузке. При разработке собирались и использовались статистические данные о производительности для анализа и обучения нейронной мети и инструменты визуализации нагрузки. В результате исследования произведен сравнительный анализ существующих решений на рынке и изучены основные подходы, основанные на использовании технологий машинного обучения. Произведена разработка и тестирования решения на основе нейронных сетей, который показал лучшие результаты по сравнению с существующими решениями. В итоге на основании произведенного исследования было разработано решение, которое применимо в системах электронной коммерции, банковской сфере, аналитической сфере и облачных технологиях. На практике предложенное решение позволит компаниям сократить расходы на закупку дополнительного оборудования и обеспечит высокую производительность и отказоустойчивость систем.

This work is devoted to a comparative analysis of solutions for load balancing in distributed databases and the development of a modern solution based on neural network technologies. The main focus of the work is on improving system performance and stability through self-learning and prediction under high load and scaling conditions. The objectives addressed in the research are: 1) To analyze the existing load balancing techniques in RDBs. 2) Studying the role and capabilities of neural network technologies for optimizing load distribution. 3) Developing a load balancing algorithm using machine learning. 4) Implementation of the developed algorithm and its testing on a data set close to real conditions. 5) Comparative analysis of the proposed approach with classical methods. The work was performed using Python programming language, TensorFlow program library and SQLite database. To model distributed systems, virtual environments were used to simulate the work of server solutions under high load. During development, performance statistics were collected and used to analyze and train neural meshes and load visualization tools. As a result of the research, a comparative analysis of existing solutions on the market was made and the main approaches based on the use of machine learning technologies were studied. A neural network-based solution was developed and tested, which showed better results compared to existing solutions. As a result, based on this research, a solution was developed that is applicable in e-commerce systems, banking, analytics and cloud technologies. In practice, the proposed solution will allow companies to reduce the cost of purchasing additional equipment and ensure high performance and fault tolerance of systems.

Network User group Action
ILC SPbPU Local Network All
Read Print
Internet Authorized users SPbPU
Read Print
Internet Anonymous
  • СОДЕРЖАНИЕ
  • ЦЕЛИ И ЗАДАЧИ
  • ВВЕДЕНИЕ
  • ГЛАВА 1 СРАВНЕНИЕ И АНАЛИЗ СУЩЕСТВУЮЩИХ РЕШЕНИЙ
    • 1.1 Теоретические основы распределения нагрузки в РБД
      • 1.1.1 Определение и задачи распределения нагрузки
      • 1.1.2 Методы распределения нагрузки
    • 1.2 Современные решения в распределении нагрузки
      • 1.2.1 Распределение нагрузки в облачных вычислениях и системах хранения данных
      • 1.2.2 Распределение нагрузки в кластерах данных
      • 1.2.3 Сравнительный анализ существующих решений
    • 1.3. Место нейросетевых решений в распределении нагрузки
      • 1.3.1 Типы нейронных сетей и их применение
      • 1.3.2 Сравнительный анализ нейронных сетей
      • 1.3.3 Выбор нейронных сетей для оптимизации распределения нагрузки
  • ГЛАВА 2 РАЗРАБОТКА РЕШЕНИЯ НА ОСНОВЕ НЕЙРОННЫХ СЕТЕЙ
    • 2.1 Информация и анализ используемого инструментария и технологий
      • 2.1.1 Нейросетевые платформы
      • 2.1.2 Инструменты для работы с большими объемами данных
    • 2.2 Математическая модель
      • 2.2.1 Математическая модель предлагаемого решения
      • 2.2.2 Сравнение с классическими решениями
  • ГЛАВА 3 РЕАЛИЗАЦИЯ И ТЕСТИРОВАНИЕ
    • 3.1 Создание программного решения
    • 3.2 Тестирование на массивах данных
  • СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
  • ПРИЛОЖЕНИЕ А КОД MATLAB ДЛЯ СРАВНЕНИЯ РАБОТЫ РАЗРАБАТЫВАЕМОГО РЕШЕНИЯ И КЛАССИЧЕСКИХ РЕШЕНИЙ
  • ПРИЛОЖЕНИЕ Б КОД PYTHON РАЗРАБАТЫВАЕМОГО РЕШЕНИЯ ДЛЯ БАЛАНСИРОВКИ РАСПРЕДЕЛЕННОЙ БАЗЫ ДАННЫХ
  • ПРИЛОЖЕНИЕ В КОД ВЕБ-ИНТЕРФЕЙСА РАЗРАБАТЫВАЕМОГО РЕШЕНИЯ
  • ПРИЛОЖЕНИЕ Г КОД КЛИЕНТСКОЙ ЧАСТИ ПРИЛОЖЕНИЯ
  • ПРИЛОЖЕНИЕ Д КОД ГЕНЕРАТОРА ЗАПРОСОВ ДЛЯ ТЕСТИРОВАНИЯ РАЗРАБАТЫВАЕМОГО РЕШЕНИЯ

Access count: 0 
Last 30 days: 0

Detailed usage statistics