Создание мер и групп мер в многомерных моделях

Применимо к: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Мера — это агрегат значений числовых данных, например сумма, количество, минимальное, максимальное, среднее или созданное вами многомерное выражение. Группа мер — это контейнер для одной или нескольких мер. Все меры находятся в группе мер даже в том случае, если имеется только одна мера. Куб должен иметь как минимум одну меру и группу мер.

Этот раздел включает следующие подразделы:

Подходы к созданию мер

Меры могут быть статическим элементом куба, созданного во время разработки, и всегда присутствуют при доступе к кубу. Кроме того, меру можно определить как вычисляемый элемент с помощью многомерных выражений, когда ее значение вычисляется на основе других мер в кубе. Вычисляемый элемент можно распространить на сеанс или пользователя.

Чтобы создать меру или группу мер, используйте один из следующих подходов:

Метод Описание
Мастер кубов Запустите мастер кубов в SQL Server Data Tools, чтобы создать куб.

В обозревателе решений щелкните правой кнопкой мыши узел Кубы и выберите команду Создать куб. Если вам нужна помощь с этими шагами, см. статью Многомерное моделирование (руководство по Adventure Works ).

При создании куба на основе таблиц из существующего хранилища данных определения мер и групп мер материализуются в качестве части процесса создания куба. В мастере выберите, какие факты и таблицы фактов нужно использовать в качестве основы для объектов меры и группы мер в кубе.
Диалоговое окно создания меры Если куб уже существует в SQL Server Data Tools, дважды щелкните имя куба в Обозреватель решений, чтобы открыть его в кубе Designer. В области "Меры" щелкните правой кнопкой мыши верхний узел, чтобы создать новую группу мер или новую меру с помощью указания исходной таблицы, столбца и типа агрегирования. Этот подход требует выбора метода агрегирования из фиксированного списка готовых функций. В разделе Use Aggregate Functions представлено описание наиболее часто используемых агрегатов.
вычисляемый элемент Вычисляемые элементы добавляют гибкость и возможности анализа в куб в SQL Server Analysis Services, так как вы можете контролировать, когда и как они создаются. Иногда мера требуется только временно — в течение сеанса пользователя или в среде Management Studio в рамках исследования.

В SQL Server Data Tools откройте вкладку Вычисления, чтобы создать вычисляемый элемент.

Выберите этот подход при создании меры на основе многомерного выражения. Дополнительные сведения см. в следующих разделах: Построение мер в многомерных выражениях, Вычисления, Вычисления в многомерных моделях и Основы скриптовмногомерных выражений (службы Analysis Services).
Многомерные выражения или XMLA В SQL Server Management Studio можно выполнять многомерные выражения или XMLA, чтобы изменить базу данных для включения новой вычисляемой меры. Этот подход полезен для нерегламентированной проверки данных после развертывания решения на сервере. См. раздел Document and Script an Analysis Services Database.

Компоненты меры

Мера представляет собой объект со свойствами. Кроме имени мера должна иметь тип агрегата и исходный столбец или выражение, используемое для наполнения меры данными. Можно изменить определение меры, задавая ее свойства.

attribute Описание
source Большинство мер являются производными от числовых столбцов таблиц фактов во внешнем хранилище данных, например столбца Sales Amount в таблицах Sales и Reseller Sales из хранилища данных AdventureWorks, однако можно создать новые меры, основываясь целиком на определяемых вычислениях.

Столбцы атрибутов из таблиц измерения можно использовать для определения мер, но такие меры обычно являются полуаддитивными или неаддитивными в отношении статистической обработки. Дополнительные сведения о режиме полуаддитивном см. в разделе Определение полуаддитивного режима.
Агрегации По умолчанию меры суммируются вдоль каждого измерения. Однако свойство AggregateFunction позволяет изменить это. См. список в разделе Use Aggregate Functions .
Свойства См. описания дополнительных свойств в разделе Configure Measure Properties .

Моделирование мер и групп мер по фактам и таблицам фактов

Перед запуском мастера важно знать принципы моделирования определения меры.

Меры и группы мер — многомерные объекты, представляющие факты и таблицы фактов во внешнем хранилище данных. В большинстве случаев меры и группы мер будет основываться на объектах в представлении источника данных, которые в свою очередь создаются из базового хранилища данных.

На следующей диаграмме показана таблица фактов FactSalesQuota и две связанные с ней таблицы измерений — DimTime и DimEmployee. В образце куба Adventure Works эти таблицы используются в качестве основы для группы мер Sales Quotas и измерений Time и Employee.

Таблица FactSalesQuota с двумя таблицами измерений

Таблица фактов содержит столбцы двух основных типов: столбцы атрибутов и столбцы мер.

  • Столбцы атрибутов используются для создания связей между внешними ключами и таблицами измерений, чтобы количественные данные в столбцах мер можно было организовать по данным, содержащимся в таблицах измерений. Столбцы атрибутов используются также для определения гранулярности таблицы фактов и ее группы мер.

  • Столбцы мер определяют меры, которые содержатся в группе мер.

При запуске мастера кубов внешние ключи отфильтровываются. В списке оставшихся столбцов на выбор вы увидите столбцы мер, а также столбцы атрибутов, которые не определены как внешний ключ. В примере FactSalesQuota мастер предложит CalendarYear и CalendarQuarter в дополнение к SalesAmountQuota. Только столбец меры SalesAmountQuota приведет к созданию поддающейся обработке меры для многомерной модели. Для определения суммы каждой квоты существуют другие столбцы на основе даты. Следует исключить из списка мер в мастере кубов другие столбцы — CalendarYear и CalendarQuarter(или позднее удалить их из группы мер в конструкторе).

Вывод из данного обсуждения: не все столбцы, предлагаемые мастером, полезны в качестве меры. Полагайтесь на собственное понимание данных и того, как они будут использоваться, при выборе столбцов для использования в качестве меры. Помните, что можно щелкнуть правой кнопкой мыши таблицу в представлении источника данных для нахождения данных, которые помогут определить, какие столбцы использовать в качестве мер. Дополнительные сведения см. в статье Просмотр данных в представлении источника данных (службы Analysis Services).

Примечание

Не все меры извлекаются непосредственно из значения, хранимого в столбце таблицы фактов. Например, мера Sales Person Count , определенная в группе мер Sales Quota примера куба Adventure Works, фактически основана на подсчете уникальных значений (или числа различных элементов) в столбце EmployeeKey таблицы фактов FactSalesQuota .

Гранулярность группы мер

Группы мер имеют гранулярность, которая описывает уровень детализации, поддерживаемой таблицей фактов. Гранулярность устанавливается через отношение внешнего ключа к измерению.

Например, таблица фактов FactSalesQuota имеет связь по внешнему ключу с таблицей DimEmployee , каждая запись в таблице FactSalesQuota относится к одному сотруднику, таким образом, гранулярность группы мер с точки зрения измерения Employee находится на уровне индивидуального сотрудника.

Гранулярность группы мер не может быть задана мельче самого нижнего уровня измерения, из которого просматривается эта группа мер, а крупнее ее можно сделать при помощи дополнительных атрибутов. Например, в таблице фактов FactSalesQuota столбцы TimeKey, CalendarYearи CalendarQuarterиспользуются для установки гранулярности связи с таблицей DimTime . В результате этого гранулярность группы мер, как видно из измерения «Время», соответствует календарному кварталу, а не дню, который является нижним уровнем измерения «Время».

Можно задать гранулярность группы мер по определенному измерению с помощью вкладки Использование измерений конструктора кубов. Дополнительные сведения о связях между измерениями см. в разделе Dimension Relationships.

См. также:

Кубы в многомерных моделях
Меры и их группы