Архитектура и интеграции¶
Архитектура¶
GraphMechanic проектируется как модульное веб-приложение.
Ключевые компоненты:
- Web UI - визуализация графа, map view, logical graph view, инструменты редактирования;
- Graph Model Layer - нормализованное внутреннее представление узлов, рёбер, геометрии, атрибутов и слоёв;
- Connector Layer - адаптеры к внешним БД и источникам данных;
- Style Engine - настраиваемое соответствие между атрибутами объектов и визуальным отображением;
- Validation Engine - проверки топологии и доменно-специфичные правила консистентности;
- State Update Layer - динамические обновления для live / near-real-time состояния графа;
- Persistence Layer - хранение конфигураций, layout-настроек, пользовательских параметров и audit data.
Потоки интеграции¶
Потоки чтения и записи через коннекторы к данным¶
Слой коннекторов читает узлы, рёбра и геометрию рёбер из внешних источников, выполняет маппинг полей БД на атрибуты графа, применяет фильтры и записывает подтверждённые изменения обратно в источник.
Потенциальные источники данных включают PostgreSQL / PostGIS, реляционные БД с графоподобными таблицами и CSV / JSON-выгрузки.
Генерация геометрии через routing service¶
Визуальное редактирование развивает функциональность PolylineMechanic: генерация геометрии через routing service для создания и восстановления полилиний.
Управляемое сохранение и экспорт¶
Изменения проходят через управляемый workflow сохранения или экспорта, снижающий потребность в прямой правке данных в БД и дающий доменным пользователям более безопасный визуальный путь редактирования.