Post-Image

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

Рвав-рвав, cмотрите, что нарыл!

Я собака обязательный, исполнительный, да и вообще, самый лучший :-Р

В связи с этим, несмотря на то, что “Обещанного 3 года ждут”, подготовил материал о плюсах и минусах использования встроенной иерархии дат, о которых обещал рассказать в своей статье Создание календаря при помощи DAX.

В общем, идея написания материала возникла после общения с “матерыми волкодавами”, коммуникабельность и любопытство – страшная сила!

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

File -> Options and settings -> Options -> Data Load -> Auto date/time

По умолчанию данная настройка активна, но ее, конечно, можно принудительно отключить, сняв соответствующий флаг и нажав кнопку “ОК”.

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

  • Просто, быстро и удобно;

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

    Year = ‘Calendar’[Date].[Year];

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

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

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

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

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

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

    Проиллюстрировать отрицательные моменты нам поможет “DAX Studio”, пошаговая инструкция:

  • Запустить DAX Studio:

    art_002_screen_1

  • Открыть необходимый файл Power BI Desktop (”*.pbix”) – в нашем случае файл называется “Test”;

  • Переместить переключатель в положении “PBI/SSDT Model”:

    art_002_screen_2

  • Нажать кнопку “Connect”;

  • В открывшемся окне “Dax Studio” (слева) посмотреть на получившийся результат – помимо таблицы “Тест встроенной иерархии” со столбцом “Дата”, созданном при загрузке данных в файл “Test” Power BI Desktop, мы можем увидеть еще 2 таблицы со своими наборами столбцов:

    ​ – таблица шаблона – “DateTableTemplate_c5f722e8-4eeb-4c50-b955-c0b41b18b70f”;

    ​ – таблица данных – “LocalDateTable_c0daab8b-7b8f-4c19-abda-de5d10a8c4c9”.

    art_002_screen_3

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

    Рвав-рвав, на этом, собственно, все.

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

    Ваш Смайл