Запит DAX у LuckyTemplates – логічні та фізичні плани запитів

У цьому підручнику буде розглянуто два плани запитів DAX у LuckyTemplates.

Плани запитів впливають на продуктивність DAX у створенні цінних даних. Вони також допомагають в оптимізації, що робить ваш звіт більш переконливим.

Ось два плани запитів, створені механізмом формул:

  • Логічний план запиту
  • Фізичний план запиту

Кожен запит DAX запускає ці дві події.

Зміст

Логічний план запиту в LuckyTemplates

Це потік запитів DAX. У цій частині зосередьтеся на третьому кроці, який є деревом плану спрощення логічного запиту .

Запит DAX у LuckyTemplates – логічні та фізичні плани запитів

Цей запит схожий на ваш запит DAX. Коли ви виконуєте запит DAX, він здебільшого збігається з тим, що робить план логічного запиту.

Для ілюстрації ось приклад запиту.

Запит DAX у LuckyTemplates – логічні та фізичні плани запитів

Якщо ви запустите це, ви отримаєте результат 29 138.

Запит DAX у LuckyTemplates – логічні та фізичні плани запитів

Якщо ви запустите запит у DAX Studio та ввімкнете вкладку «Події плану запиту», ви побачите плани запиту. Серед двох типів логічний план запиту відображається першим.

Запит DAX у LuckyTemplates – логічні та фізичні плани запитів

Кожен рядок із відступом є підзавданням, побудованим одне на одному. Перший рядок – це кінцевий результат вашого DAX. Інші рядки підсумовують і сканують стовпець кількості FactSales.

Перше слово перед двокрапкою називається the.

Запит DAX у LuckyTemplates – логічні та фізичні плани запитів

Слова після двокрапки називаються типами операторів .

Запит DAX у LuckyTemplates – логічні та фізичні плани запитів

Існує два типи типів операторів:

  • RelLogOp
  • ScaLogOp

RelLogOp – це вихід таблиці. DAX використовує VertiPaq для сканування стовпця для створення таблиці. З іншого боку, ScaLogOp є скалярним виходом; це означає, що це сукупне число. Якщо ви подивіться на другий і останній рядок плану запиту, ви побачите, що він підсумовує та отримує кількість FactSales' Quantity.

Логічні плани запитів створюють однорядкову таблицю під назвою Total Quantity, яка містить суму кількості з таблиці FactSales.

План запиту легше декодувати, оскільки він використовує простий запит DAX. Що складніший ваш DAX, то важче його декодувати.

Варто прагнути бачити якомога більше операторів «_VertiPaq». Це означає, що він самостійно виконує всю роботу, щоб оптимізувати ваші коди DAX.

Фізичний план запиту в LuckyTemplates

Фізичний план запиту є другим серед двох типів. Це четвертий крок у потоці запиту DAX. Він має таку саму структуру дерева, що й план логічного запиту.

Коли план логічного запиту створено, він надсилається до плану фізичного запиту для виконання. Якщо ви запустите той самий приклад запиту, ви отримаєте ту саму відповідь.

Запит DAX у LuckyTemplates – логічні та фізичні плани запитів

Зокрема, четвертим кроком у потоці запиту DAX є створення дерева плану фізичного запиту .

Запит DAX у LuckyTemplates – логічні та фізичні плани запитів

Він може виглядати схожим на план логічного запиту, але він відрізняється. Зазвичай фізичний план запиту важко співставити із запитом DAX, але оскільки це простий зразковий запит, ви можете стежити за процесом.

Це три типи операторів у Плані фізичного запиту:

  • LookupPhyOp
  • InterPhyOp
  • SpoolPhyOp

LookupPhyOp надає скалярні значення в заданому контексті рядка. InterPhyOp повторює дані в таблиці рядок за рядком. SpoolPhyOp отримує результати запиту VertiPaq, матеріалізує їх і зберігає в пам’яті.

У четвертому рядку плану запиту ви можете побачити оператор ProjectionSpool, який означає, що запит надсилається механізму зберігання. Він повторює результати запиту з кількістю записів.

Кількість записів, показаних у плані запиту, має бути найменшою кількістю записів, необхідних для завершення відповіді. Результат цього простого запиту містить лише 1 рядок, тому він повернув 1 запис у плані запиту.

Стовпець Records , який відповідає SpoolPhyOp ProjectionSpool, показує, скільки даних надсилається з механізму зберігання до механізму формул. Отже, чим більше у вас записів, тим повільнішим буде ваш запит.

Якщо продуктивність DAX низька, стовпець «Записи» є гарним місцем для початку пошуку.




Висновок

Коли ви запускаєте запит DAX, він проходить ряд кроків, перш ніж дасть вам відповідь. Два з цих кроків – це логічний і фізичний плани запиту. Вони відповідають за покроковий процес і виконання формул, які використовуються в розрахунках.

Якщо ви хочете дізнатися та зрозуміти більше про ці плани запитів, ознайомтеся з цим підручником, а потім спробуйте скористатися, щоб побачити їх безпосередньо.


Змінні та вирази в редакторі Power Query

Змінні та вирази в редакторі Power Query

У цьому посібнику обговорюватимуться змінні та вирази в редакторі Power Query. Ви навчитеся правильно їх писати та будувати.

Як створити теплову карту LuckyTemplates

Як створити теплову карту LuckyTemplates

Теплова карта LuckyTemplates — це тип візуалізації, який використовується для відображення щільності даних на карті. У цьому підручнику я розповім, як ми можемо створити один – не пропустіть!

Створення діаграми Парето в LuckyTemplates – Advanced DAX

Створення діаграми Парето в LuckyTemplates – Advanced DAX

Я збираюся навчити вас справді цікавому прикладу принципу Парето та тому, як створити діаграму Парето за допомогою важливих формул DAX.

Власна гістограма в LuckyTemplates: різновиди та модифікація

Власна гістограма в LuckyTemplates: різновиди та модифікація

Дізнайтеся, як користувацьку гістограму на ринку можна використовувати для порівняння даних і як ви можете створити їх за допомогою прикладів у LuckyTemplates.

Статичні результати Power Automate: огляд

Статичні результати Power Automate: огляд

Дізнайтеся, як працює функція Power Automate Static Results і чому її корисно додати до найкращих методів створення блок-схем.

Підручник LuckyTemplates Python: як перекладати тексти

Підручник LuckyTemplates Python: як перекладати тексти

eDNA демонструє, як виконувати переклад мови або тексту за допомогою Python і передавати це в LuckyTemplates. Підручник LuckyTemplates Python.

Створіть діаграму Ганта в конструкторі звітів LuckyTemplates

Створіть діаграму Ганта в конструкторі звітів LuckyTemplates

У цьому підручнику ви дізнаєтеся, як використовувати Gauge Bullet Graph для створення діаграми Ганта в LuckyTemplates Report Builder.

Створіть тривимірну точкову діаграму за допомогою Python у LuckyTemplates

Створіть тривимірну точкову діаграму за допомогою Python у LuckyTemplates

У цьому підручнику ви дізнаєтесь, як створити тривимірну (3D) точкову діаграму за допомогою Python у LuckyTemplates.

Ефективне звітування LuckyTemplates – огляд сеансу та завантаження ресурсу

Ефективне звітування LuckyTemplates – огляд сеансу та завантаження ресурсу

Ефективне звітування LuckyTemplates – огляд сеансу та завантаження ресурсу

Аналіз нових клієнтів за допомогою LuckyTemplates – наступна подія лише для учасників

Аналіз нових клієнтів за допомогою LuckyTemplates – наступна подія лише для учасників

Аналіз нових клієнтів за допомогою LuckyTemplates – наступна подія лише для учасників