Поделиться через


Измерения базы данных — создание измерения типа даты

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

В Microsoft SQL Server SQL Server Analysis Services измерение времени — это тип измерения, атрибуты которого представляют периоды времени, такие как годы, семестры, кварталы, месяцы и дни. Периоды в измерении времени обеспечивают временные уровни гранулярности для анализа и создания отчетов. Атрибуты организуются в иерархии, при этом гранулярность измерения времени преимущественно определяется требованиями, предъявляемыми коммерческой деятельностью и отчетностью к данным с предысторией. Например, в приложениях бизнес-аналитики большая часть финансовых данных и данных о продажах использует помесячную или поквартальную гранулярность.

Как правило, кубы в SQL Server Analysis Services включать измерение времени в той или иной форме. Куб может включать в себя более одного измерения времени или несколько иерархий из одного и того же измерения времени в зависимости от гранулярности данных и требований со стороны отчетности. Однако не во всех кубах требуется измерение времени. В некоторых OLAP-приложениях, например учете затрат по видам деятельности, измерение времени не требуется, потому что в измерении по видам деятельности учет затрат основывается на виде деятельности, а не на времени.

Структура измерения

Структура для измерения времени зависит от способа, используемого базовым источником данных для хранения данных о периоде времени. Различие в способе хранения данных приводит к возникновению двух базовых типов измерений времени:

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

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

Серверное измерение времени
Если у вас нет таблицы измерений, к которой можно привязать атрибуты, связанные со временем, можно SQL Server Analysis Services определить измерение времени сервера на основе периодов времени. Чтобы определить иерархии, уровни и элементы, представленные в серверном измерении времени, при создании измерения выбираются стандартные периоды времени.

Атрибуты в серверном измерении времени имеют особую привязку атрибута времени. SQL Server Analysis Services использует типы атрибутов, связанные с датами, такие как Год, Месяц или День, для определения элементов атрибутов в измерении времени.

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

Календари

В измерении времени или серверном измерении времени атрибуты периода времени группируются в иерархии. Такие иерархии обычно называются календарями.

В приложениях бизнес-аналитики часто требуется использовать несколько определений календаря. Например, отдел кадров может отслеживать сотрудников с помощью стандартного календаря — двенадцатимесячного григорианского календаря, начиная с 1 января и заканчивая 31 декабря. Однако тот же отдел кадров может отслеживать расходы с помощью финансового календаря — двенадцатимесячного календаря, определяющего финансовый год, используемый организацией.

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

Календарь Описание
Стандартный календарь Двенадцатимесячный григорианский календарь, начинающийся 1 января и заканчивающийся 31 декабря.

Вне зависимости от того, используется ли мастер измерений для создания измерения времени или серверного измерения времени, мастер создаст иерархию для стандартного календаря после определения атрибутов, представляющих периоды времени для измерения. При использовании мастера измерений для создания серверного измерения времени можно настроить дату начала стандартного календаря таким образом, чтобы год начинался не 1 января, а в другой день.
Финансовый календарь Двенадцатимесячный финансовый календарь. При выборе данного календаря необходимо указать день и месяц начала финансового года, принятые в организации.

Примечание. Данный календарь доступен только при использовании мастера измерений для создания серверного измерения времени.
Календарь отчетности (или календарь маркетинга) Двенадцатимесячный календарь отчетности, включающий в себя два месяца по четыре недели и один месяц, состоящий из пяти недель, в соответствии с повторяющимся трехмесячным (квартальным) шаблоном. При выборе этого календаря укажите начальный день и месяц и трехмесячный шаблон 4-4-5, 4-5-4 или 5-4-4 недель, где каждая цифра представляет количество недель в месяце.

Примечание. Данный календарь доступен только при использовании мастера измерений для создания серверного измерения времени.
Производственный календарь Календарь, в котором используется 13 периодов по четыре недели каждый, разделен на три квартала, состоящих из трех периодов, и один квартал, который содержит четыре периода. При выборе данного календаря необходимо указать неделю (от 1 до 4) и месяц начала производственного года, принятые в организации, а также определить квартал, состоящий из четырех периодов.

Примечание. Данный календарь доступен только при использовании мастера измерений для создания серверного измерения времени.
Календарь ISO 8601 Календарь (8601) с форматом дат и времени стандарта Международной организации по стандартизации (ISO). Этот календарь содержит целое число семидневных недель. Новый год может начинаться за несколько дней до или после начала нового года, основанного на григорианском календаре. Первая неделя данного календаря определяется первой неделей григорианского календаря, в которой есть четверг. Следовательно, первый день такой недели, воскресенье, может оказаться в предыдущем году.

Примечание. Данный календарь доступен только при использовании мастера измерений для создания серверного измерения времени.

При создании серверного измерения времени и указании периодов времени и календарей, которые необходимо использовать в таком измерении, мастер измерений добавляет для периодов времени атрибуты, соответствующие каждому из указанных календарей. Например, при создании серверного измерения времени, использующего в качестве периода времени годы и включающего в себя как финансовый календарь, так и календарь отчетности, мастер затем добавит в измерение атрибуты FiscalYear и ReportingYears, а также стандартный атрибут Years. Серверное измерение времени также будет иметь атрибуты для комбинаций выбранных периодов времени, таких как атрибут DayOfWeek для измерения, содержащего дни и недели. Мастер измерений создает иерархию календаря путем объединения атрибутов, принадлежащих одному типу календаря. Например, иерархия финансового календаря может содержать следующие уровни: финансовый год, финансовое полугодие, финансовый квартал, финансовый месяц и финансовый день.

Добавление логики операций со временем при помощи мастера бизнес-аналитики

После определения измерения времени и его добавления в куб можно воспользоваться мастером бизнес-аналитики и добавить такие функции логики операций со временем, как меры «период к дате», «период к периоду» и скользящее среднее. Дополнительные сведения см. в разделе Определение вычислений логики операций со временем с использованием мастера бизнес-аналитики.

Примечание

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

См. также:

Создание измерения времени посредством формирования таблицы времени
Справка F1 мастера бизнес-аналитики
Типы измерений