Что делает DIMENSION TYPE в SSAS?
У меня больше опыта работы с SSAS Tabular, но в своей работе я должен поддерживать многомерные кубы SSAS. Ранее сегодня я попытался добавить вычисление времени (Parallel Period) к соединению SSASMD в сводной таблице Excel. Но ошибка оценки исключена независимо от используемого синтаксиса.
После борьбы с ошибкой я натолкнулся на эту статью в SQL Server Central ( Лестница к MDX - Уровень 13: Функции ряда времени / даты MDX: Функции LastPeriods() и ParallelPeriod()).
Мой вопрос: должно ли измерение DATE иметь тип "ВРЕМЯ", чтобы функции даты работали? Вот синтаксис для моего расчета YOY.
Lbs Sold YOY Actuals-v1
(
[DATES].[INVOICE_DATE].[INVOICE_DATE].CurrentMember.PrevMember
,[Measures].[Lbs Sold]
)
Lbs Sold YOY Actuals-v2
(ParallelPeriod(
[INVOICE_DATE].[DATES].CurrentMember.Level,
1,
[INVOICE_DATE].[DATES].CurrentMember
),
[Measures].[Lbs Sold])
У меня больше опыта с DAX, чем с MDX, поэтому любые идеи будут оценены. Мои источники расчета MDX...
- Как создать период за период Измерение в MDX?
- https://xzwang.wordpress.com/2013/08/13/a-better-way-to-write-mdx-period-over-period-calculations/
- http://pragmaticworks.com/ResourcesDup/Cheat-Sheets/MDX-Expression-Cheat-Sheet
Типы размеров
Тоже мне любопытно, каковы все остальные Dimension Types
используется для? Приносит ли изменение этого значения с "Обычного" на любое из других дополнительных функций куб? Я нашел некоторые описания онлайн (вставлено ниже), но мне интересно, что это на самом деле делает?
Из документов Microsoft...
Параметр свойства Type предоставляет информацию о содержимом измерения для серверных и клиентских приложений. В некоторых случаях параметр "Тип" предоставляет только рекомендации для клиентских приложений и является необязательным. В других случаях, таких как измерения "Счета" или "Время", параметры свойства "Тип" для измерения и его атрибутов определяют конкретные поведения на основе сервера и могут потребоваться для реализации определенных вариантов поведения в кубе. Например, для свойства Тип измерения может быть установлено значение Учетные записи, чтобы указать клиентским приложениям, что стандартное измерение содержит атрибуты учетной записи.
+-----------------+---------------------------------------------------------------------------+
| Type | Description |
+-----------------+---------------------------------------------------------------------------+
| Regular | Default for dimensions that are not set to a specified type |
+-----------------+---------------------------------------------------------------------------+
| Time | Used for dimensions whose attributes represent time periods |
+-----------------+---------------------------------------------------------------------------+
| Geography | Used for dimensions whose attributes represent geographical inform-ation |
+-----------------+---------------------------------------------------------------------------+
| Organization | Used for dimensions whose attributes represent organizational information |
+-----------------+---------------------------------------------------------------------------+
| BillOfMaterials | Used for dimensions whose attributes represent inventory and |
| | man-ufacturing information |
+-----------------+---------------------------------------------------------------------------+
| Accounts | Used for dimensions whose attributes represent information used for |
| | financial reporting |
+-----------------+---------------------------------------------------------------------------+
| Customers | Used for dimensions whose attributes represent information about |
| | customers |
+-----------------+---------------------------------------------------------------------------+
| Products | Used for dimensions whose attributes represent information about products |
+-----------------+---------------------------------------------------------------------------+
| Scenario | Used for dimensions whose attributes represent information about plans |
| | and strategies |
+-----------------+---------------------------------------------------------------------------+
| Quantitative | Used for dimensions whose attributes represent quantitative inform-ation |
+-----------------+---------------------------------------------------------------------------+
| Utility | Used for dimensions whose attributes represent utility information |
+-----------------+---------------------------------------------------------------------------+
| Currency | Used for dimensions whose attributes represent currency inform-ation |
+-----------------+---------------------------------------------------------------------------+
| Rates | Used for dimensions whose attributes represent currency rate inform-ation |
+-----------------+---------------------------------------------------------------------------+
| Channel | Used for dimensions whose attributes represent channel information |
+-----------------+---------------------------------------------------------------------------+
| Promotion | Used for dimensions whose attributes represent marketing pro-motion |
| | information |
+-----------------+---------------------------------------------------------------------------+
1 ответ
Вы можете попробовать и экспериментировать самостоятельно. Давайте выберем функцию ParallelPeriod:
select
ParallelPeriod(
[Customer].[Customer Geography].[Country],
3,
[Customer].[Customer Geography].[State-Province].[Hamburg]
) on 0
from [Adventure Works]
Возвращается Южная Австралия. Это не имеет смысла, но это работает. Итак, ответ на ваш вопрос "Должно ли измерение DATE иметь тип" ВРЕМЯ ", чтобы функции даты работали?" нет.
По моему опыту, единственная причина для изменения типа измерения заключается в том, что при использовании полуаддитивных функций агрегирования (например, LastNonEmpty) требуется измерение времени в кубе, чтобы определить набор значений для всех интервалов периода.
Помимо этого, это просто информация на стороне клиента. Клиенты могут подходить, используя различные значки для разных типов и так далее.