Data Warehose (DWH) платформы не ориентировано на решение какой-либо определенной функциональной аналитической задачи. Его цель - обеспечить целостность и поддерживать хронологию всевозможных данных, и с этой точки зрения оно нейтрально по отношению к аналитическим приложениям. DWH реализовано в виде реляционной СУБД с нормализованной или со слабо денормализованной схемой.
В качестве источника данных выступает оперативная БД отдельного экземпляра платформы. Из этой БД извлекается следующая информация:
В настоящее время оперативная БД содержит значения только параметров устройств, установленных на конкретном объекте. Вследствие этого набор параметров каждого объекта становится уникальным. Для выполнения анализа совокупности объектов такая ситуация является недопустимой.
Поэтому, для целей анализа, необходимо сформировать показатели, являющиеся общими для всех или части объектов и такие показатели в платформе называются Бизнес параметрами (БП) и Бизнес событиями (БС).
При формировании бизнес параметров должны соблюдаться следующие ограничения:
DWH строится на основе многомерной модели данных, подразумевающей выделение отдельных измерений (время, объект, бизнес параметр) и фактов (объем израсходованного ресурса, количество нештатных ситуаций) с их анализом по выбранным измерениям.
Рис. 1
Факт - это набор связанных элементов данных, содержащих показатели и описательные данные. Каждый факт обычно представляет элемент данных, численно описывающий деятельность организации, бизнес-операцию или событие, которое может быть использовано для анализа деятельности организации или бизнес-процессов.
Показатель - это числовая характеристика факта, который определяет эффективность деятельности организации с точки зрения измерения. Как правило, показатель содержит заранее не известное значение характеристики факта. Показатель определяется с помощью комбинации элементов измерения и, таким образом, представляет факт.
Атрибут - это описание характеристики реального объекта предметной области. Как правило, атрибут содержит заранее известное значение, характеризующее факт. Обычно атрибуты представляются текстовыми полями с дискретными значениями.
Измерение - это интерпретация факта с некоторой точки зрения в реальном мире. Измерения, подобно атрибутам, содержат текстовые значения, которые сильно связаны по смыслу между собой. Обычно измерения представляются как оси многомерного пространства, точками которого являются связанные с ними факты. В многомерной модели каждый факт связан с одной или несколькими осями.
Измерения задаются перечислением своих элементов (атрибутов). Элементы измерения могут находиться в отношении «часть-целое» или «родитель-потомок», что позволяет формировать на измерении одну или несколько иерархий. Каждая из таких иерархий может иметь несколько уровней. Например, поостренная на измерении «Время» иерархия может включать следующие элементы: год, месяц и день
Ниже представлено описание фактов и измерений в DWH.
Ниже приведена схема для хранения агрегированных значений измеряемых и вычисляемых параметров. Синие таблицы-таблицы измерений, зеленая таблица - таблица фактов, серые таблицы - дополнительные атрибуты для измерения Объект.
Рис. 2
Таблица фактов Fact_ParamValues
Даны пояснения к значимым полям таблицы
Название поля | Комментарий |
---|---|
avgAV | среднее значение БП на 30 минутном отрезке |
minAV | минимальное значение БП на 30 минутном отрезке |
maxAV | максимальное значение БП на 30 минутном отрезке |
firstAV | первое значение БП на 30 минутном отрезке |
lastAV | последнее значение БП на 30 минутном отрезке |
sumAV | для накапливаемых параметров суммарное значение на 30 минутном отрезке |
Факты связаны со следующими измерениями:
Объект содержит дополнительные таблицы-атрибуты, которые содержат связь объекта с тремя уровнями рубрик и дополнительными атрибутами.
Аналогичная схема для хранения сигнальных значений
Рис. 3
Таблица фактов Fact_Signal
Даны пояснения к значимым полям таблицы
Название поля | Комментарий |
---|---|
onSwitches | кол-во переключений сигнала в состояние 1 (включено) на 30 мин. интервале |
offSwitches | кол-во переключений сигнала в состояние 0 (выключено) на 30 мин. интервале |
onDuration | кол-во секунд, когда сигнал находился в состоянии 1 (включено) на 30 мин. интервале |
offDuration | кол-во секунд, когда сигнал находился в состоянии 0 (выключено) на 30 мин. интервале |
Связь с фактами точно такая же, как и для БП агрегированных значений.
Рис. 4
Таблица Stat_Event
Название поля | Комментарий |
---|---|
timeidOpen | id таблицы-измерения Времени, когда событие было создано |
timeidClose | id таблицы-измерения Времени, когда событие было закрыто |
duration | продолжительность события в секундах |
eventId | id таблицы-измерения справочника событий |
Факты связаны со следующими измерениями:
Мы не приводим описание каждого Измерения, поскольку их поля по смыслу понятны. В тоже время есть специальные поля, которые следует учитывать при построении отчетов, аналитики:
В DWH хранится информация о доступности контроллеров. Схема представлена ниже:
Рис. 4
Таблица Stat_ControllerLoss
Название поля | Комментарий |
---|---|
timeidLoss | id таблицы-измерения Времени, когда возникла недоступность контроллера |
timeidRecovery | id таблицы-измерения Времени, когда связь с контроллером восстановилась |
duration | общее время недоступности контроллера |