Архитектура Витрины данных =========================== Общая архитектурная схема ------------------------- Схематичное отображение общей архитектуры Витрины данных приведено на рисунке (см. :numref:`image1_gd`). .. _image1_gd: .. figure:: img/image1_gd.png :align: center :alt: Общая архитектура Витрины данных Общая архитектура Витрины данных Общая компонентная схема ------------------------ Схема компонентов Витрины данных представлена на рисунке ниже (см. :numref:`image2_gd`). .. _image2_gd: .. figure:: img/image2_gd.png :align: center :alt: Схема компонентов Схема компонентов Алгоритм работы Витрины данных ------------------------------- 1. После развертывания Витрины, необходимо создать в ней логическую модель данных (для хранения данных в качестве Поставщика данных). При работе с ПОДД структура таблиц настраивается в ЕИП НСУД и передаются в Витрину через ПОДД. При работе со СМЭВ3 логическую модель надо создавать самостоятельно через **REST-сервис**. 2. После того, как в Витрине была создана логическая модель данных, можно выполнять следующие действия: - загружать данные в Витрину (средствами сервиса загрузки данных (**ETL**) или самостоятельно через **REST-сервис**); - посылать запросы для получения данных из Витрины (через **ПОДД**, **СМЭВ3** или **REST-сервис**); - подписываться (в качестве Потребителя данных) на репликацию данных из другой Витрины (**ПОДД** пришлет метаданные для создания логических таблиц для хранения реплики и первоначальный снапшот текущих данных из Витрины Поставщика); - обрабатывать (в качестве Поставщика данных) подписки других Витрин на репликацию данных этой Витрины (передавать им метаданные для создания логической структуры для хранения реплики и снапшот текущих данных); - при загрузке данных в Витрину, если есть подписчики на репликацию данных, им отправляется дельта с обновленными данными; - если эта Витрина подписана на репликацию данных из другой Витрины, то при изменении данных в Витрине-Поставщике **ПОДД** доставит дельту с обновленными данными.