Архитектура хранения данных: слои и метаданные
Статья посвящена архитектуре хранения данных в системе Юниверс DG. В ней рассматриваются три ключевых слоя: концептуальный/логический (данные, созданные или импортированные в систему) и физический (метаданные из внешних источников). Основное внимание уделяется особенностям управления объектами в каждом слое, ограничениям физического слоя (например, запрет на редактирование метаданных) и роли краулеров в сборе информации. Для проектирования связей между активами см. статью "Проектирование активов: наследование и иерархия".
Три слоя хранения данных
Структура хранения данных в системе Юниверс DG разделена на три слоя:
Концептуальный/логический слой - содержит данные, которые были первоначально созданы в системе Юниверс или загружены в нее посредством импорта моделей, шаблон которых поддерживает система;
Физический слой - содержит данные, которые относятся к физическому слою и были получены из различных внешних систем-источников.
Объекты концептуального/логического слоя полностью управляются (редактируются/удаляются) внутри системы Юниверс (их первоначальной системы-источника), в то время как объекты физического слоя не могут быть удалены внутри системы Юниверс DG - они удаляются только при удалении соответствующей информационной системы, с помощью которой они ранее были получены.
Создание/получение данных
Логический/Концептуальный слой:
Данные этих слоев создаются внутри системы Юниверс DG в виде типов активов, внутри которых впоследствии создаются записи активов в разделе "Поиск по данным".
Также данные загружаются в систему через импорт объектов.
Примечание
Типы активов, созданные в рамках этих слоев, могут иметь дочерние типы активов и наследственные отношения между родительским и дочерним активами - наследник обогащается атрибутами родителя.
Физический слой:
Данные физического слоя загружаются в систему Юниверс из различных внешних источников с помощью информационных систем, которые осуществляют сбор метаинформации посредством системных краулеров.
Далее просмотр и поиск таких данных осуществляется в разделе "Каталог ИС".
Юниверс DG хранит актуальное состояние метаданных, полученных из различных внешних источников с помощью информационных систем, которые осуществляют сбор метаинформации посредством системных краулеров (например, краулера БД PostgreSQL).
Редактирование таких метаданных в системе Юниверс DG, не затрагивая первоначальные информационные системы, является некорректным, поэтому система Юниверс служит главным образом для отображения таких данных без возможности их изменения.
Основные действия, доступные пользователю с полученными метаданными - их поиск и анализ.
Такие метаданные, загруженные в систему из внешних источников с помощью краулеров, считаются объектами физического слоя.
Примечание
Объекты физического слоя не могут быть удалены внутри системы Юниверс DG - они удаляются только при удалении соответствующей информационной системы, с помощью которой они ранее были получены.
Теги объектов физического слоя
Такие объекты в процессе работы краулеров автоматически получают тег layer:physical
.
Тег также может быть проставлен вручную.
Теги проставляются для типов активов, записей активов, атрибутов, связей и их типов, а также вложенных объектов, принадлежащих к физическому слою.
Объекты могут загружаться в систему вручную из библиотек в разделе "Управление активами" или автоматически при запуске сканеров.
Визуально теги физического слоя отображаются в интерфейсе пользователя в виде индикатора (кружочка) или лейбла зеленого цвета в зависимости от открытого раздела/вкладки (Рисунок 1, 2).

Рисунок 1 – Пример отображения атрибутов, принадлежащих к физическому слою

Рисунок 2 – Пример отображения связей, принадлежащих к физическому слою
Ограничения физического слоя
Физический слой представляет собой таблицы базы данных, которые описывают физическую структуру данных, корректное редактирование которой должно происходить на стороне изначальной внешней системы-источника данных.
Поэтому физический слой объектов в Юниверс DG имеет ряд ограничений:
Запрещено создавать/удалять активы и связи, которые принадлежат к физическому слою.
Запрещено создавать дочерние типы активов бизнес-слоя для типов активов физического слоя.
Запрещено редактировать атрибуты активов, которые принадлежат к физическому слою.
Разрешено добавлять новые атрибуты в активы, которые принадлежат к физическому слою. Атрибуты будут доступны для удаления и редактирования.
Запрещено удаление типов активов и связей из модели, принадлежащих к физическому слою.
Моделирование структуры типов активов
Отношения между типами активов могут быть построены по 2 принципам:
Наследственные отношения (наследственные по модели) применяются в разделе "Поиск по активам", где есть:
Родительский тип актива - стоящий выше по иерархии;
Наследственный тип актива - стоящий ниже под родительским.
Наследование предназначено для моделирования типов активов, которые представляют собой одну и ту же сущность (например, таблицу) и моделирование происходит от общего к частному. При наследовании некоторые атрибуты родительских типов активов появляются и у дочерних (базовые - всегда, остальные - при указании пользователем).
Иерархические отношения (дочерние по связям) применяются в разделе "Каталог ИС", где есть:
Тип актива выше по иерархии (относительно других сравниваемых);
Тип актива ниже по иерархии (относительно других сравниваемых).
Иерархия строится по связям между типами активов со свойством "Вложенная связь". Иерархия предназначена для типов активов, относящихся к разным сущностям, например таблица и колонка (внутри этой таблицы).