Изменение мер, атрибутов и иерархий
В данной лабораторной работе будет произведено улучшение куба с точки зрения работы пользователя, развертывание изменений, связанных с обработкой куба и его измерений.
Теоретическое введение
Настройка свойств мер
Меры имеют свойства, позволяющие определять и управлять их работой и отображением для пользователей. Меры наследуют определенные свойства у группы мер, элементами которых они являются, если только эти свойства не переопределены на уровне мер. Свойства мер определяют статистическое вычисление, тип данных, отображаемые для пользователей имена, папку отображения, строку форматирования, выражения меры, базовые исходные столбцы и видимость для пользователей (Таблица 7).
Таблица 8. Свойства мер
Свойство | Определение |
AggregateFunction | Определяет, как выполняется статистическое вычисление мер. |
DataType | Указывает тип данных столбца базовой таблицы фактов, к которым привязана мера. |
Description | Содержит описание меры, которое может быть видно в клиентских приложениях. |
DisplayFolder | Указывает папку отображения, в которой будет представлена мера при подключении пользователя к кубу. Если куб содержит множество мер, папки отображения позволяют разбить их по категориям мер, упростив доступ к ним. |
FormatString | Определяет формат представления. |
ID | Отображает уникальный идентификатор (ID) меры. Это свойство доступно только для чтения. |
MeasureExpression | Многомерное выражение (MDX), определяющее меру. |
Name | Имя меры. |
Source | Столбец в представлении источника данных, к которому привязана мера. |
Visible | Определяет, отображается мера или скрыта. |
Статистические функции
Службы SSAS предоставляют функции для статистической обработки мер и измерений, содержащихся в группах мер. По умолчанию меры суммируются вдоль каждого измерения. Однако свойство AggregateFunction позволяет изменить это. Аддитивность агрегата определяет, как осуществляется статистическое вычисление меры по всем измерениям в кубе. Статистические функции подразделяются на три уровня аддитивности:
- аддитивная мера, также называемая полностью аддитивной мерой, может быть статистически вычислена вдоль всех измерений в кубе, которые включены в группу мер, содержащую меру, без ограничений.
- полуаддитивная мера может быть статистически вычислена вдоль некоторых, но не всех измерений, которые включены в группу мер, содержащую эту меру. Например, мера, представляющая количество, доступное для описи, может быть статистически вычислена вдоль измерения географии для получения суммарного количества, доступного на всех складах; но эта мера не может быть статистически вычислена вдоль измерения времени, поскольку она представляет собой периодический моментальный снимок доступных количеств. При статистическом вычислении подобной меры вдоль измерения времени получились бы неверные результаты.
- неаддитивная мера не может быть статистически вычислена вдоль какого-либо измерения в группе мер, содержащей эту меру. Вместо этого мера должна быть индивидуально вычислена для каждой ячейки в кубе, представляющей эту меру. Например, вычисляемую меру, возвращающую процентное значение, такое как маржа прибыли, нельзя вычислить на основе процентных значений дочерних элементов в каком-либо измерении.
В Таблица 8 приведен список статистических функций в службах SSAS и описание аддитивности, а также ожидаемого результата функции.
Таблица 9. Статистические функции SSAS
Статистическая функция | Аддитивность | Возвращаемое значение |
Sum | Аддитивная | Вычисляет сумму значений всех дочерних элементов. Это статистическое вычисление по умолчанию. |
Count | Аддитивная | Получает количество всех дочерних элементов. |
Min | Полуаддитивная | Получает самое низкое значение для всех дочерних элементов. |
Max | Полуаддитивная | Получает самое высокое значение для всех дочерних элементов. |
DistinctCount | Неаддитивная | Получает количество всех уникальных дочерних элементов. |
None | Неаддитивная | Статистическое вычисление не выполняется, и все значения для конечных и неконечных элементов в измерении получаются непосредственно из таблицы фактов для группы мер, содержащей эту меру. Если из таблицы фактов невозможно считать значение для элемента, то значение для этого элемента устанавливается равным NULL. |
ByAccount | Полуаддитивная | Вычисляет агрегат в соответствии со статистической функцией, присвоенной типу счета для элемента измерения счетов. Если в группе мер не существует измерения типа счета, то обрабатывается так же, как статистическая функция None. |
AverageOfChildren | Полуаддитивная | Вычисляет среднее значений всех непустых дочерних элементов. |
FirstChild | Полуаддитивная | Получает значение первого дочернего элемента. |
LastChild | Полуаддитивная | Получает значение последнего дочернего элемента. |
FirstNonEmpty | Полуаддитивная | Получает значение первого непустого дочернего элемента. |
LastNonEmpty | Полуаддитивная | Получает значение последнего непустого дочернего элемента. |
Форматы отображения
Можно выбрать формат, используемый для отображения значений меры пользователям, используя свойство FormatString меры.
Помимо имеющегося списка форматов отображения, можно указать множество дополнительных форматов, не содержащихся в этом списке. Можно указать любой именованный или определенный пользователем формат, допустимый в языке Microsoft Visual Basic.