GroupBy в LuckyTemplates: подразумеваемая функция в VertiPaq

В этом руководстве мы обсудим механизм хранения и подразумеваемый GroupBy в LuckyTemplates. Вы узнаете, что стоит за производительностью, и увидите потенциальные узкие места. Это позволит вам создавать идеи и стратегии для смягчения этих проблем для повышения производительности DAX.

Запросы механизма хранения выражаются на языке под названием xmSQL. Это не настоящий язык программирования, а визуальное представление того, что делает механизм хранения. Это позволяет пользователям видеть, что вычисление делает в фоновом режиме при выполнении различных запросов.

Оглавление

Подразумеваемый GroupBy в LuckyTemplates

Первое, на что вам нужно обратить внимание, это подразумеваемый GroupBy, который можно найти в каждом xmSQL.

Это пример запроса с функциями EVALUATE и VALUES:

GroupBy в LuckyTemplates: подразумеваемая функция в VertiPaq

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

GroupBy в LuckyTemplates: подразумеваемая функция в VertiPaq

Процесс показан в операторе SQL, где запрос выбирает календарный год из DimCalendar, а затем группирует его по годам. Оператор подразумевал функцию GroupBy в расчете, потому что в запросе больше ничего нет. Подразумеваемый GroupBy более очевиден, когда вы используете агрегаты.

Агрегации внутри механизма хранения

Чтобы получить представление о том, что такое агрегация, перейдите в DAX Studio и включите параметры времени сервера и план запроса. Затем запустите этот пример меры:

GroupBy в LuckyTemplates: подразумеваемая функция в VertiPaq

Выполнив запрос, вы увидите, что в отличие от предыдущего примера запроса с одним сканированием, в этом показателе их два. Это связано с тем, что первый образец имеет только значения DimCalendar Year. В этом примере запроса есть календарный год и агрегация.

GroupBy в LuckyTemplates: подразумеваемая функция в VertiPaq

Первое сканирование является фактическим запросом.

GroupBy в LuckyTemplates: подразумеваемая функция в VertiPaq

Он выбирает год DimCalendar и суммирует объем продаж из таблицы данных о продажах, которая соответствует отношениям модели данных.

GroupBy в LuckyTemplates: подразумеваемая функция в VertiPaq

В модели данных таблица DimCalendar следует за столбцом «Дата покупки» таблицы фактов до столбца «Дата» таблицы «Календарь».

Второе сканирование гарантирует, что все отсутствующие значения учтены.

Вы можете видеть в результатах, что сумма продаж отображается только с 2015 по 2018 год. Однако она по-прежнему показывает годы с 2012 по 2014 год, даже если они пусты.

GroupBy в LuckyTemplates: подразумеваемая функция в VertiPaq

Заключение

Механизм хранения в DAX Studio показывает весь процесс расчета. Это позволяет вам отслеживать каждую функцию и видеть возможные попадания, которые могут снизить производительность вашего DAX. С помощью такой информации вы можете создавать решения для устранения потенциальных узких мест в выполнении вашего кода DAX.

Если ваш DAX работает медленно, посмотрите на механизм хранения и узнайте, что вы можете сделать, чтобы повысить производительность вашего отчета.


VertiPaq Storage Engine в многопоточной среде
VertiPaq Compression and Storage в LuckyTemplates
Что такое DAX Studio в LuckyTemplates Desktop








Leave a Comment

Расчет недельных продаж с помощью DAX в LuckyTemplates

Расчет недельных продаж с помощью DAX в LuckyTemplates

В этом руководстве показано, как в конечном итоге можно рассчитать разницу между еженедельными результатами продаж с помощью DAX в LuckyTemplates.

Что такое self в Python: примеры из реального мира

Что такое self в Python: примеры из реального мира

Что такое self в Python: примеры из реального мира

Как сохранить и загрузить файл RDS в R

Как сохранить и загрузить файл RDS в R

Вы узнаете, как сохранять и загружать объекты из файла .rds в R. В этом блоге также рассказывается, как импортировать объекты из R в LuckyTemplates.

Новый взгляд на первые N рабочих дней — решение для языка кодирования DAX

Новый взгляд на первые N рабочих дней — решение для языка кодирования DAX

В этом руководстве по языку программирования DAX вы узнаете, как использовать функцию GENERATE и как динамически изменять название меры.

Продемонстрируйте идеи с помощью метода многопоточных динамических визуализаций в LuckyTemplates

Продемонстрируйте идеи с помощью метода многопоточных динамических визуализаций в LuckyTemplates

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

Введение в фильтрацию контекста в LuckyTemplates

Введение в фильтрацию контекста в LuckyTemplates

В этой статье я пройдусь по контексту фильтра. Контекст фильтра — одна из основных тем, с которой должен ознакомиться любой пользователь LuckyTemplates.

Лучшие советы по использованию приложений в онлайн-службе LuckyTemplates

Лучшие советы по использованию приложений в онлайн-службе LuckyTemplates

Я хочу показать, как онлайн-служба LuckyTemplates Apps может помочь в управлении различными отчетами и аналитическими данными, созданными из различных источников.

Анализ изменений маржи прибыли с течением времени — аналитика с LuckyTemplates и DAX

Анализ изменений маржи прибыли с течением времени — аналитика с LuckyTemplates и DAX

Узнайте, как рассчитать изменения вашей прибыли, используя такие методы, как разветвление показателей и объединение формул DAX в LuckyTemplates.

Идеи материализации кэшей данных в DAX Studio

Идеи материализации кэшей данных в DAX Studio

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

Бизнес-отчетность с использованием LuckyTemplates

Бизнес-отчетность с использованием LuckyTemplates

Если вы все еще используете Excel до сих пор, то сейчас самое подходящее время, чтобы начать использовать LuckyTemplates для своих бизнес-отчетов.