BI.Qube MetaVault
Компонент MetaVault, входит в состав системы аналитического корпоративного хранилища BI.Qube и предназначен для преобразования данных, представленных в реляционной форме в модель Data Vault.
Компонент может использоваться как отдельное независимое программное обеспечение, управляемое на уровне БД и скриптов для выполнения определенных задач, так и в связке с компонентом MetaStaiging (входит в состав системы BI.Qube). Управление компонентом возможно как в ручном режиме, так и с использованием специализированного оркестратора MetaOrchestrator (входит в состав системы BI.Qube).
Кроме этого, компонент может управляться с использованием специализированного визуального интерфейса, однако в таком режиме компонент работает с ограниченной функциональностью и не представляет реального интереса.
Основные функции
- Построение модели Data Vault по метаданным с использованием 3 типов сущностей: Hub, Link, Satellite.
- Создание бизнес-представления для справочника, соединяющего все его элементы.
- Проведение материализации бизнес-представления с сохранением всех индексов для существенного уменьшения времени выборки данных.
- Легкое расширение модели и добавление новых атрибутов в уже существующие справочники.
- Сохранение истории изменения записей в методологии SCD 2.
- Разделение атрибутов одного справочника по разным Satellite для уменьшения избыточности хранения данных (разделение по группам изменения)
- Повсеместное использование суррогатных автоинкрементых ключей, которое позволяет абстрагироваться от бизнес-ключей, ускорить операции соединения таблиц.
- Возможность назначить объект последовательности для автоинкрементных ключей разных справочников, что упрощает работу в аналитических системах при объединении одинаковых справочников из разных систем-источников
- Автоматизированность процесса сборки модели: таблицы, процедуры заполнения их данными, а также создания представления генерируется автоматически, многократно упрощая работу с методологией.
- Логическое разделение сущностей по профилям загрузки
- Независимость справочников друг от друга, возможность запускать процесс сборки различных профилей параллельно
Типовые кейсы использования
Компонент может использоваться как отдельное независимое программное обеспечение, управляемое на уровне БД и скриптов для выполнения определенных задач, так и в связке с компонентом MetaStaiging (входит в состав системы BI.Qube). Как правило, при построении хранилищ данных, данные из систем-источников загружаются в промежуточный слой хранения – стейджинговый слой (загрузка данных может быть осуществлена с использованием компонента MetaStaging, входящего в состав автоматизированной системы построения хранилищ данных Bi.Qube). Далее заполняются настроечные таблицы компонента MetaVault после чего строится модель Data Vault (каждая сущность раскладывается на множество таблиц: хаб, сателлиты, линки, технические сателлиты). После этого этапа формируются витрины данных, использующие созданную модель. Данный процесс описан на рис. 2.
Рисунок 2. Главные этапы работы с данными
Процесс работы компонента MetaVault можно разложить две составляющие:
- Формирование модели. С помощью хранимых процедур сохраняются метаданные промежуточного слоя, далее пользователь настраивает справочник (название, бизнес-ключи, распределение полей по сателлитам). По всей полученной информации формируются хабы, линки, сателлиты, хранимые процедуры по перегрузке данных в них.
- Обновление модели. В рамках ETL-процесса после загрузки данных из систем-источников инициируется сборка профиля загрузки («контейнера» справочников). Вызываются хранимые процедуры по перегрузке данных в хабах, сателлитах, линках. При необходимости, выполняется материализация.
В модели Data Vault используется три основных типа сущностей – Hub, Link и Satellite, что позволяет сохранить дизайн хранилища данных простым и изящным. Каждый тип таблицы предназначен для обеспечения максимальной гибкости и масштабируемости хранилища, сохраняя при этом большинство традиционных приемов моделирования данных.
Основные типы сущностей модели Data Vault и связи между ними представлены на рис. 3.
Рисунок 3. Типы сущностей модели Data Vault
Состав компонентов
1. Сущность Hub
Таблицы этой сущности содержат определенный набор бизнес-ключей. Сущность представляется в базе данных двумя таблицами: основная таблица Hub и Technical Satellite.
В основной таблице Hub хранятся следующие атрибуты:
- Все бизнес-ключи, определяющие запись.
- Суррогатный ключ
- Время загрузки
В таблице Hub Technical Satellite хранятся следующие атрибуты:
- Идентификатор записи — суррогатный ключ из таблицы Hub.
- Метка существования записи
- Метка признака последней записи
- Дата начала действия
- Дата конца действия
2. Сущность Satellite
Эти таблицы содержат описательную информацию ключа сущности Hub. Данная информация подвергается изменениям с течением времени, и поэтому структура Satellite должна быть приспособлена для решения хранения как новой или измененной, так и исторической информации.
Таблица сущности Satellite содержит атрибуты:
- Одно или несколько полей, описывающих ключ.
- Идентификатор записи — суррогатный ключ из таблицы Hub.
- Метка признака последней записи.
- Дата начала действия
- Дата конца действия
Таблица Satellite хранит изменения на детальном уровне, а ее функция заключается в описании контекста экземпляров Hub и Link. Проектирование таблиц Satellite должно основываться на математических принципах сокращения избыточности данных и на скорости изменения данных.
Таким образом, Satellite-таблицам отводится роль описания бизнес-ключа на наиболее доступном детальном уровне. Это обеспечивает основу для развития контекста, описывающего бизнес.
3. Сущность Link
Этот тип таблиц отражает отношение или транзакции между двумя и более компонентами бизнеса (двумя и более бизнес-ключами) по типу связей “многие ко многим”, как в модели 3NF.
Сущность представляется в базе данных двумя таблицами: основная таблица Link и Technical Link.
Сущность Link содержит следующие атрибуты:
- Идентификатор сущности родителя
- Идентификатор сущности наследника
- Время загрузки
В таблице Technical Link хранятся следующие атрибуты:
- Идентификатор записи – суррогатный ключ из таблицы Link.
- Метка существования записи.
- Метка признака последней записи.
- Дата начала действия
- Дата конца действия
Установка и запуск
Компонент MetaVault работает под управлением СУБД: PostgreSQL (9.0 и позднее), Postgres Pro (10.22 и позднее), Arenadata Postgres (ADPG) (14.2.1).
В связи с высокой сложностью развертывания компонента в среде целевой СУБД установку компонента осуществляет вендор.
Документация
Функциональные характеристики ПО MetaVault
Руководство пользователя MetaVault
Описание технической архитектуры MetaVault