Details

Title Разработка веб-сервиса обработки больших данных на основе декларативного описания трансформаций: выпускная квалификационная работа магистра: направление 09.04.04 «Программная инженерия» ; образовательная программа 09.04.04_02 «Основы анализа и разработки приложений с большими объемами распределенных данных» = Development of a web service for big data processing based on declarative description of transformations
Creators Коновалов Артём Сергеевич
Scientific adviser Леонтьева Татьяна Владимировна
Organization Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности
Imprint Санкт-Петербург, 2026
Collection Выпускные квалификационные работы ; Общая коллекция
Subjects подготовка данных ; data wrangling ; веб-сервис ; декларативное описание трансформаций ; Shadow Sampling ; фоновые задания экспорта ; адаптивный выбор движка ; FastAPI ; React ; Apache Spark ; большие данные ; data preparation ; web service ; declarative transformation contract ; background export jobs ; adaptive engine selection ; big data
Document type Master graduation qualification work
Language Russian
Level of education Master
Speciality code (FGOS) 09.04.04
Speciality group (FGOS) 090000 - Информатика и вычислительная техника
DOI 10.18720/SPBPU/3/2026/vr/vr26-4909
Rights Доступ по паролю из сети Интернет (чтение, печать, копирование)
Additionally New arrival
Record key ru\spstu\vkr\45082
Record create date 9/4/2026

Allowed Actions

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

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

Group Anonymous
Network Internet

Объектом исследования являются методы и инструменты интерактивной подготовки табличных данных. Предметом исследования - архитектурные подходы к построению веб-сервисов, сочетающих визуальный интерфейс для аналитика с возможностью обработки больших файлов. Цель работы - разработать веб-сервис, в котором аналитик без навыков программирования интерактивно формирует декларативный контракт трансформаций и применяет его к большим табличным файлам с автоматическим выбором вычислительного движка. В рамках локального стенда целевая проверочная планка установлена на уровне до 100 гигабайт; дальнейшее увеличение объёма определяется доступными вычислительными ресурсами, хранилищем и конфигурацией развёртывания. В работе выполнен систематический анализ существующих инструментов обработки табличных данных (Microsoft Excel, Google Sheets, Pandas, Polars, DuckDB, Apache Spark) и платформ интерактивной подготовки данных (Trifacta, OpenRefine, Alteryx, Talend). Выявлен разрыв между доступностью и масштабируемостью существующих решений, что обосновывает актуальность разработки. Разработаны три научно значимых компонента архитектуры и один обязательный инженерный механизм: метод Shadow Sampling, обеспечивающий раннюю готовность предпросмотра до завершения полной загрузки; декларативный контракт трансформаций с виртуальной валидацией, обнаруживающей ошибки до выполнения; механизм адаптивного выбора вычислительного движка; фоновые задания экспорта с состояниями queued/running/succeeded/failed и опросом результата из frontend. Программный продукт реализован с использованием стека технологий FastAPI, SQLAlchemy 2.0 с асинхронным драйвером asyncpg, React 18 с TypeScript, Tailwind CSS, PostgreSQL, MinIO (S3-совместимое объектное хранилище), PySpark. Публичный путь экспорта реализован как асинхронное задание: клиент создаёт job, опрашивает его статус, показывает прогресс, ошибку, повторную попытку и ссылку скачивания после завершения. Экспериментальное исследование и финальная проверка подтверждают работоспособность ключевых сценариев. Бенчмарк зафиксировал готовность предпросмотра на файле 4,32 ГБ за 2,76 секунды и пиковое потребление ChunkedPandasExecutor 234,6 МБ на файле 2 ГБ. Таблица предпросмотра стала видимой пользователю через 3655 мс при 7 % прогресса загрузки.

The object of research is methods and tools for interactive tabular data preparation. The subject of research is architectural approaches to building web services that combine a visual interface for business analysts with the ability to process big size files. The goal of the work is to design and implement a web service in which an analyst without programming skills interactively constructs a declarative contract of data transformations and applies it to large tabular files through a browser interface, with automatic selection of a computational engine and asynchronous export. Four key architectural components are implemented: (1) the Shadow Sampling method, ensuring early preview readiness before full upload completion; (2) a declarative transformation contract with virtual schema validation that surfaces errors before execution; (3) an adaptive engine selection mechanism that dispatches execution between PandasExecutor, ChunkedPandasExecutor, and SparkExecutor; (4) a persistent background export job model with queued/running/succeeded/failed states and frontend polling. The software product is implemented with FastAPI, SQLAlchemy 2.0 async, React 18 + TypeScript, Tailwind CSS, PostgreSQL, MinIO, and PySpark, and is accompanied by unit, integration, and end-to-end tests. Experimental validation confirmed preview readiness, peak memory use, visible preview latency, and export scenarios against the acceptance gates.

Network User group Action
ILC SPbPU Local Network All
Read Print Download
Internet Authorized users SPbPU
Read Print Download
Internet Anonymous
...