Записки охотника

Нюансы использования встроенной иерархии дат

Тематические статьи
Рвав-рвав, смотрите, что нарыл!

Я собака обязательный, исполнительный, да и вообще, самый лучший :-Р
В связи с этим, несмотря на то, что "...обещанного 3 года ждут", подготовил материал о плюсах и минусах использования встроенной иерархии дат, о которых обещал рассказать в своей статье Создание календаря при помощи DAX.
В общем, идея написания материала возникла после общения с "матерыми волкодавами", коммуникабельность и любопытство – страшная сила!

За встроенную иерархию дат в Power BI отвечает опция, расположенная здесь:

Файл → Параметры и настройки → Параметры → Загрузка данных → Автоматические дата и время для новых файлов
По умолчанию данная настройка активна, но ее, конечно, можно принудительно отключить, сняв соответствующий флаг и нажав кнопку "ОК".

Положительные моменты использования встроенной иерархии дат:

  • Просто, быстро и удобно.
  • Минимальные знания синтаксиса DAX при построении итоговой конструкции типа:

Год =
'Календарь'[Дата].[Год]

  • Отсутствие дополнительных телодвижений при построении визуальных элементов в случае, если в их конструкции используются временные отрезки.

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

Отрицательные моменты использования встроенной иерархии дат:

  • При использовании встроенной иерархии дат неявным образом в системе создаются скрытые дополнительные таблицы, которых не видно невооруженным глазом. То есть увидеть их через Power BI Desktop вы не сможете. Указанные таблицы будут содержать данные, начиная с 1 января по 31 декабря для самого раннего и самого позднего года, присутствующего в наборе значений.

Рвав-рвав, лично мне, в данном конкретном случае, повезло, поскольку нюх у меня отличный, собакен я коммуникабельный, сам неплох, да и знакомые "матерые волкодавы" имеются!

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

Проиллюстрировать отрицательные моменты нам поможет программа "DAX Studio":

Запуск программы можно осуществить как отдельно (подробнее смотрите  статью Выгрузка большого объема данных), так и непосредственно из Power BI, воспользовавшись соответствующей кнопкой на закладке "Внешние инструменты":

DAX Studio
Дополнительные таблицы

Помимо таблицы созданной таблицы "Календарь", мы можем увидеть еще 2 таблицы со своими наборами столбцов:​
  • Таблица шаблона "DateTableTemplate".
  • Таблица данных "LocalDateTable".

Вывод:

По итогам, при больших объемах данных использование встроенной иерархии дат может отрицательно сказаться на производительности системы в целом, но если ваши потребности относительно невелики, то на это можно не обращать внимания.

Рвав-рвав, на этом, собственно, все.
Пойду на прогулку, на улице дождь, но правильной собаке это не помеха!
Ваш Смайл