Детальная информация
| Название | Колоночная база данных для хранения и обработки информации в распределенной микросервисной системе: выпускная квалификационная работа магистра: направление 09.04.04 «Программная инженерия» ; образовательная программа 09.04.04_01 «Технология разработки и сопровождения качественного программного продукта» = A column-oriented database for storing and processing information in a distributed microservice system |
|---|---|
| Авторы | Устинов Игорь Владиславович |
| Научный руководитель | Никифоров Игорь Валерьевич |
| Организация | Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности |
| Выходные сведения | Санкт-Петербург, 2026 |
| Коллекция | Выпускные квалификационные работы ; Общая коллекция |
| Тематика | телеметрические данные ; MySQL ; ClickHouse ; колоночная СУБД ; миграция данных ; аналитическое хранилище ; параллельная запись ; контроль целостности ; telemetry data ; column-oriented DBMS ; data migration ; analytical storage ; parallel write ; data consistency control |
| Тип документа | Выпускная квалификационная работа магистра |
| Язык | Русский |
| Уровень высшего образования | Магистратура |
| Код специальности ФГОС | 09.04.04 |
| Группа специальностей ФГОС | 090000 - Информатика и вычислительная техника |
| DOI | 10.18720/SPBPU/3/2026/vr/vr26-4891 |
| Права доступа | Доступ по паролю из сети Интернет (чтение) |
| Дополнительно | Новинка |
| Ключ записи | ru\spstu\vkr\45064 |
| Дата создания записи | 04.09.2026 |
Разрешенные действия
–
Действие 'Прочитать' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети
| Группа | Анонимные пользователи |
|---|---|
| Сеть | Интернет |
Выпускная квалификационная работа посвящена повышению эффективности хранения и аналитической обработки телеметрических данных в распределённой микросервисной системе. Исследовалась проблема роста исторического массива событий, координат и статусов устройств, при котором строковая реляционная СУБД MySQL перестаёт обеспечивать интерактивное выполнение аналитических запросов: в рассматриваемой системе отдельные запросы выполнялись от десятков секунд до нескольких часов. Для устранения выявленных ограничений предложен метод поэтапной миграции исторического и аналитического контура из MySQL в ClickHouse без остановки основного сервиса. Метод включает загрузку исторических данных, параллельную запись, дозагрузку промежуточного диапазона, контроль целостности и управляемое переключение чтения. Программная реализация выполнена на TypeScript. Для работы с MySQL использовался Sequelize, а для ClickHouse был разработан собственный слой доступа, включающий репозитории и механизмы преобразования данных. Экспериментальная оценка выполнена на боевой выборке таблицы событий объёмом 2 856 495 843 строки. Объём хранения сократился с 244,9 GB в MySQL до 41,5 GB в ClickHouse. Фактическое окно вставки данных составило 1 час 10 минут 56 секунд. Выборка по устройству в разреженном диапазоне ускорилась с 54,17 с до 0,08 с, а сложный аналитический запрос – с 27598,71 с до 0,72 с. Полученные результаты подтверждают эффективность предложенного метода миграции без остановки боевого-сервиса.
The graduate qualification work is devoted to improving the efficiency of storage and analytical processing of telemetry data in a distributed microservice system. The study addresses the problem of growing historical datasets of events, coordinates and device statuses, where the row-oriented relational DBMS MySQL no longer provides interactive execution of analytical queries: in the considered system, some queries took from tens of seconds to several hours. To eliminate the identified limitations, a phased method for migrating the historical and analytical layer from MySQL to ClickHouse without stopping the main service is proposed. The method includes loading historical data, parallel writes, loading the intermediate data range, data consistency control and controlled switching of read operations. The software implementation was developed in TypeScript. Sequelize was used to work with MySQL, while a custom access layer was developed for ClickHouse, including repositories and data transformation mechanisms. The experimental evaluation was performed on a production dataset of the events table containing 2,856,495,843 rows. The storage size was reduced from 244.9 GB in MySQL to 41.5 GB in ClickHouse. The actual data insertion window was 1 hour 10 minutes 56 seconds. A sparse-range device query was accelerated from 54.17 seconds to 0.08 seconds, while a complex analytical query was reduced from 27,598.71 seconds to 0.72 seconds. The obtained results confirm the effectiveness of the proposed migration method without stopping the production service.
| Место доступа | Группа пользователей | Действие |
|---|---|---|
| Локальная сеть ИБК СПбПУ | Все |
|
| Интернет | Авторизованные пользователи СПбПУ |
|
| Интернет | Анонимные пользователи |
|