Details
| Title | Разработка тайлового сервера с поддержкой Mapbox Style для генерации растровых и векторных тайлов: выпускная квалификационная работа магистра: направление 09.04.04 «Программная инженерия» ; образовательная программа 09.04.04_02 «Основы анализа и разработки приложений с большими объемами распределенных данных» = Development of a Tile Server with Mapbox Style Support for Raster and Vector Tile Generation |
|---|---|
| Creators | Плетнева Александра Дмитриевна |
| Scientific adviser | Селин Иван Андреевич |
| Organization | Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности |
| Imprint | Санкт-Петербург, 2026 |
| Collection | Выпускные квалификационные работы ; Общая коллекция |
| Subjects | тайловый сервер ; Mapbox Style ; геоинформационные системы ; OGC ; WMS ; WFS ; WCS ; mbtiles ; векторные тайлы ; растровые тайлы ; python ; FastAPI ; gdal ; maplibre native ; Эльбрус ; Astra Linux ; tyle server ; gis ; vector tiles ; raster tiles ; Elbrus |
| 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-4905 |
| Rights | Доступ по паролю из сети Интернет (чтение) |
| Record key | ru\spstu\vkr\45078 |
| Record create date | 9/4/2026 |
Allowed Actions
–
| Group | Anonymous |
|---|---|
| Network | Internet |
Данная работа посвящена разработке программного компонента - тайлового OWS-сервера (ws_server) - в составе портала инфраструктуры пространственных данных. Необходимость разработки обусловлена требованием замены действующего решения на базе Node.js (tileserver-gl) на технологический стек Python с целью обеспечения совместимости с отечественными процессорами «Эльбрус-8C» и операционной системой «Astra Linux». В ходе работы проведён сравнительный анализ девяти открытых тайловых серверов; исследованы стандарты OGC (WMS 1.3.0, WFS 1.1.0, WCS 1.0.0), форматы MBTiles и Mapbox Style. Сформулированы функциональные и нефункциональные требования к разрабатываемому компоненту. Спроектирована модульная компонентная архитектура OWS-сервера, включающая четыре роутера FastAPI (XYZ, WXYZ, Style, OWS), провайдеры данных (MbTiles, ExtendedMbTiles), двухуровневую систему рендеринга (pymgl / mbgl-render), подсистему кэширования в Redis и интеграцию с RabbitMQ. Реализован сервер на Python. Настроен CI/CD-конвейер из восьми стадий в GitLab со сборкой .deb-пакетов для архитектур x86_64 и e2k (Эльбрус). Проведена демонстрация результатов через веб-интерфейс портала ИПД и подключение внешних ГИС-клиентов (QGIS) по стандартам WMS, WCS, WFS. Разработанный компонент обеспечивает генерацию растровых тайлов из векторных данных в формате MBTiles с применением стилей Mapbox Style, поддерживает нестандартный протокол WXYZ для четырёхмерных MBTiles и совместим с отечественными аппаратно-программными платформами.
This work is devoted to the development of a software component - a tile OWS server (ws_server) - as part of a Spatial Data Infrastructure (SDI) portal. The development was motivated by the need to replace the existing Node.js-based solution (tileserver-gl) with a Python-based implementation in order to ensure compatibility with domestic hardware platforms based on the Elbrus-8C processor and the Astra Linux operating system. As part of this work, a comparative analysis of nine open-source tile servers was carried out. OGC standards (WMS 1.3.0, WFS 1.1.0, WCS 1.0.0), as well as the MBTiles and Mapbox Style specifications, were studied. Based on the analysis, functional and non-functional requirements for the developed component were defined. A modular architecture of the OWS server was designed, including four FastAPI routers (XYZ, WXYZ, Style, and OWS), data providers (MbTiles and ExtendedMbTiles), a two-level rendering subsystem (pymgl / mbgl-render), a Redis-based caching subsystem, and integration with RabbitMQ. The server was implemented in Python. An eight-stage GitLab CI/CD pipeline was configured, including the generation of .deb packages for both x86_64 and e2k (Elbrus) architectures. The results of the work were demonstrated through integration with the SDI web portal and by connecting external GIS clients (QGIS) using WMS, WCS, and WFS services. The developed component provides raster tile generation from vector data stored in MBTiles format using Mapbox Style specifications, supports the custom WXYZ protocol for four-dimensional MBTiles datasets, and is compatible with domestic hardware and software platforms.
| Network | User group | Action |
|---|---|---|
| ILC SPbPU Local Network | All |
|
| Internet | Authorized users SPbPU |
|
| Internet | Anonymous |
|