Создание мер и групп мер
Мера — это совокупность значений числовых данных, таких как сумма, число, минимум, максимум, среднее значение или настраиваемое многомерное выражение, которое можно создать. Группа мер — это контейнер для одной или нескольких мер. Все меры находятся в группе мер даже в том случае, если имеется только одна мера. Куб должен иметь как минимум одну меру и группу мер.
Этот раздел включает следующие подразделы:
Подходы к созданию мер
Компоненты меры
Моделирование мер и группы мер на основе фактов и таблиц фактов
Гранулярность группы мер
Подходы к созданию мер
Меры могут быть статическим элементом куба, который создан во время разработки, и всегда присутствует при доступе к кубу. Кроме того, меру можно определить как вычисляемый элемент с помощью многомерных выражений, когда ее значение вычисляется на основе других мер в кубе. Вычисляемый элемент может применяться к сеансу или пользователю.
Чтобы создать меру или группу мер, используйте один из следующих подходов.
Мастер кубов |
Запустите мастер кубов в SQL Server Data Tools (SSDT) для создания куба. В обозревателе решений щелкните правой кнопкой мыши узел Кубы и выберите команду Создать куб. Для справки см. раздел Многомерное моделирование (учебник по Adventure Works). При создании куба на основе таблиц из существующего хранилища данных определения мер и групп мер материализуются в процессе создания куба. В этом мастере необходимо выбрать факты и таблицы фактов для использования в качестве основы для объектов меры и группы мер в кубе. |
Диалоговое окно «Создать меру» |
Если куб уже существует в SQL Server Data Tools (SSDT), дважды щелкните имя куба в обозревателе решений, чтобы открыть его в конструкторе кубов. В панели «Меры» щелкните правой кнопкой мыши верхний узел, чтобы создать новую группу мер или новые меры путем указания исходной таблицы, столбца и типа статистической обработки. Этот подход требует выбора метода статической обработки из фиксированного списка готовых функций. Описание наиболее часто используемых агрегатов см. в разделе Использование агрегатных функций. |
Вычисляемый элемент |
Вычисляемые элементы позволяют добиться гибкости и широких возможностей анализа кубов в Службы Analysis Services, поскольку можно управлять тем, как и когда они создаются. Иногда мера требуется только временно — во время сеанса пользователя или в среде Management Studio как часть исследования. В SQL Server Data Tools (SSDT) откройте вкладку «Вычисления», чтобы создать новый вычисляемый элемент. Этот подход рекомендуется в том случае, если мера основана на многомерном выражении. Подробнее см. в следующих разделах: Построение мер в многомерных выражениях, Вычисления, Вычисления в многомерных моделях и Основные принципы создания скриптов многомерных выражений (службы Analysis Services). |
Многомерные выражения или XMLA |
В SQL Server Management Studio можно выполнять многомерные выражения или XMLА для изменения базы данных, чтобы включить новую вычисляемую меру. Этот подход полезен для нерегламентированного тестирования данных после развертывания решения на сервере. См. раздел Документирование и работа со скриптами в базе данных служб Analysis Services. |
Компоненты меры
Мера представляет собой объект со свойствами. В дополнение к имени мера должна иметь тип статистической обработки и исходный столбец или выражение, используемое для загрузки меры с данными. Можно изменить определение меры, задавая ее свойства.
источник |
Большинство мер происходит из числовых столбцов в таблицах фактов внешнего хранилища данных, таких, например, как столбец Sales Amount в таблицах Internet Sales и Reseller Sales в хранилище данных AdventureWorks. Однако можно также создать полностью новые меры целиком на основе определенных вами вычислений. Для определения мер можно использовать столбцы атрибутов таблиц измерений, но такие меры в зависимости от режима статистической обработки являются, как правило, полуаддитивными или неаддитивными. Дополнительные сведения о режиме полуаддитивном см. в разделе Определение полуаддитивного режима. |
агрегат |
По умолчанию меры суммируются вдоль каждого измерения. Однако свойство AggregateFunction позволяет изменить это. См. список в разделе Использование агрегатных функций. |
Свойства |
Описания дополнительных свойств см. в разделе Настройка свойств мер. |
Моделирование мер и группы мер на основе фактов и таблиц фактов
Перед запуском мастера рекомендуется изучить принципы моделирования, на основе которых выполняется определение мер.
Меры и группы мер являются многомерными объектами, представляющими факты и таблицы фактов во внешнем хранилище данных. В большинстве случаев меры и группы мер будет основываться на объектах в представлении источника данных, которые, в свою очередь, создаются из базового хранилища данных.
На следующей диаграмме показана таблица фактов FactSalesQuota и две связанные с ней таблицы измерений — DimTime и DimEmployee. В примере куба Adventure Works эти таблицы используются в качестве основы для группы мер Sales Quota, а также измерений Time и Employee.
Таблица фактов содержит столбцы двух основных типов: столбцы атрибутов и столбцы мер.
Столбцы атрибутов используются для создания связей между внешними ключами и таблицами измерений, чтобы количественные данные в столбцах мер можно было организовать по данным, содержащимся в таблицах измерений. Столбцы атрибутов используются также для определения гранулярности таблицы фактов и ее группы мер.
Столбцы мер определяют меры, которые содержатся в группе мер.
При запуске мастера кубов внешние ключи отфильтровываются. В списке оставшихся столбцов для выбора можно увидеть столбцы мер, а также столбцы атрибутов, которые не определены как внешний ключ. В примере FactSalesQuote мастер предложит 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. В результате этого гранулярность группы мер, как видно из измерения «Время», соответствует календарному кварталу, а не дню, который является нижним уровнем измерения «Время».
Можно задать гранулярность группы мер по определенному измерению с помощью вкладки Использование измерений конструктора кубов. Дополнительные сведения о связях между измерениями см. в разделе Связи измерений.