Физическая схема данных¶
Important
Физическая схема данных представляет собой схему данных, используемую для организации размещения записей в хранилище данных
Для обеспечения возможности выборки актуального состояния объектов на дату и обеспечения высокой производительности в Системе используется подход к хранению данных, который предусматривает ведение истории изменения объектов с разделением на таблицу данных и таблицу истории.
Запись¶
Запись представляет собой строчку в физических таблицах, отражающую изменение объекта. Любые изменения объекта приводят к появлению новой записи:
- Актуальная [на определенный момент] запись – запись, для которой на определенный момент системного времени не существует новой версии. Отражает состояние объекта в определенный момент системного времени;
- Горячая запись – запись, относящаяся к загружаемой дельте. Отражает новое состояние объекта;
- Старая запись – запись, для которой существует новая версия. Отражает состояние объекта на дату.
Обогащенный запрос¶
Обогащенный запрос представляет собой SQL-выражение, адаптированное к целевой СУБД хранилища данных, позволяющее получить актуальные записи на произвольный момент системного времени (в том числе на текущий момент времени).
Системные поля¶
Системные поля бывают трех типов:
sys_from
(int) – целочисленное системное поле, хранящее значение номера дельты, в рамках которой запись появилась в БД;sys_op
(int) – системное поле записи, отражающее операцию, которая была выполнена над объектом: 0 – INSERT (создание или модификация объекта); 1 – DELETE (удаление объекта);sys_to
(int) – целочисленное системное поле, хранящее для старой записи максимальное значение номера дельты, в рамках которого запись оставалась актуальной. Для актуальных записей значениеsys_to
должно быть пусто (бесконечность).
Физическая таблица¶
Физическая таблица представляет собой таблицу, расположенную в хранилище данных, и может быть трех типов:
- Таблица staging – физическая таблица горячих записей;
- Таблица данных – физическая таблица актуальных записей. В момент загрузки дельты может дополнительно содержать старые записи и горячие записи. Включает в состав PK системное поле SysFrom;
- Таблица истории – физическая таблица старых записей. Включает в состав PK системное поле SysFrom. Включает поля: SysTo – последний номер дельты, в рамках которой запись была актуальна, SysOp – признак удаленного объекта.
Хранилище данных¶
Хранилище данных представляет собой совокупность кластеров СУБД, используемых для хранения информации об объектах:
- Кластер ADB;
- Кластер ADQM;
- Кластер ADG.