Функція UNION DAX проти Power Query

У цьому посібнику ви навчитеся використовувати функцію UNION. У цьому підручнику буде порівняно продуктивність функції UNION з іншими методами об’єднання таблиць.

Theфункція об’єднує дві таблиці в одну, об’єднуючи їхні рядки та видаляючи всі повторювані рядки.

Прикладом у цьому підручнику є таблиця продажів, яка розділена на три таблиці для кожного року (2007, 2008, 2009).

Зміст

Функція UNION у DAX

Відкрийте та запустіть план часу та запитів сервера.

Функція UNION DAX проти Power Query

Наведений нижче код DAX використовується як приклад:

Функція UNION DAX проти Power Query

Після запуску коду перейдіть на вкладку «Час сервера» . Ви бачите, що для виконання коду потрібно 5,4 секунди. Більшість часу виконання було проведено в . Кожен із цих трьох запитів містить ту саму операцію, але роки різні.

Функція UNION DAX проти Power Query

Після повернення цих трьох запитів системою зберігання даних виконується ОБ’ЄДНАННЯ, яке можна побачити в плані логічного запиту. План запитів також виконує обчислення загального обсягу продажів.

Функція UNION DAX проти Power Query

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

Функція UNION DAX проти Power Query

Порівняння продуктивності DAX

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

Функція UNION DAX проти Power Query

Якщо ви запустите цей код і перейдете на вкладку Server Timings , ви побачите, що це значно ефективніше, ніж функція UNION.

Функція UNION споживає 97,9 кілобайт, тоді як нова міра споживає лише 1 Кбайт.

Функція UNION DAX проти Power Query

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

Отже, якщо ви маєте справу з моделлю даних, яка містить понад мільйон рядків, не рекомендується використовувати функцію UNION

Альтернативи функції UNION DAX

Замість використання UNION у цьому прикладі можна використовувати три функції SUMX . Тобто одна функція SUMX на кожен рік.

Функція UNION DAX проти Power Query

Коли ви запустите цей код і перейдете на вкладку «Таймінг сервера», ви побачите, що час виконання значно менший. Він збільшився з 5400 мс до 33 мс, незважаючи на виконання трьох різних запитів.

Функція UNION DAX проти Power Query

Інший спосіб — додати таблицю моделі даних у Power Query або в самому джерелі даних.

Але найкращим варіантом є створення, яке виконуватиме об’єднання цих трьох таблиць. Але цей варіант має свої плюси і мінуси.

Використання обчисленої таблиці дозволяє заощадити загальний час обробки на відміну від виконання додавання в Power Query. Однак це призведе до збільшення розміру бази даних у VertiPaq.

Коли ви використовуєте обчислювану таблицю, ви створюєте нову таблицю, яка об’єднує три таблиці. Але ці три розділені таблиці залишаться в базі даних.

Функція UNION DAX проти Power Query

У цьому прикладі три таблиці споживають загалом 25 МБ. Якщо ви створите обчислену таблицю, вона займе ще 25 Мб у вашій оперативній пам’яті.

Для чутливих випадків, таких як ці, вам потрібно прийняти обґрунтоване рішення щодо найкращого способу дій.

Висновок

Функція UNION у DAX поєднує дві таблиці в одну, що полегшує аналіз даних. Він працює, приймаючи дві таблиці як вхідні дані та повертаючи нову таблицю, яка містить усі рядки з обох вхідних таблиць. Однак ця функція має свої обмеження.

Функція UNION може працювати повільніше, ніж інші методи об’єднання даних, особливо якщо вхідні таблиці великі. Він також може займати більше місця в сховищі на відміну від інших альтернатив.

Щоразу, коли ситуація вимагає об’єднання таблиць, важливо спочатку зважити всі «за» і «проти», перш ніж приймати рішення про використання функції UNION. Ваші альтернативи включають функцію SUMX, таблицю моделі даних або обчислену таблицю.

Все найкраще,

Leave a Comment

Змініть формати дати за допомогою редактора Power Query

Змініть формати дати за допомогою редактора Power Query

У цьому посібнику ви дізнаєтеся, як перетворити текст у формат дати за допомогою редактора Power Query в LuckyTemplates.

Power Query: об’єднайте файли з кількох папок

Power Query: об’єднайте файли з кількох папок

Дізнайтеся, як об’єднати файли з кількох папок у мережі, робочому столі, OneDrive або SharePoint за допомогою Power Query.

Обчисліть місячне ковзне середнє з початку року (з початку року) у LuckyTemplates

Обчисліть місячне ковзне середнє з початку року (з початку року) у LuckyTemplates

Цей підручник пояснює, як обчислити місячне ковзне середнє на базі даних з початку року за допомогою функцій AVERAGEX, TOTALYTD та FILTER у LuckyTemplates.

Створення таблиці дат у LuckyTemplates

Створення таблиці дат у LuckyTemplates

Дізнайтеся, чому важлива спеціальна таблиця дат у LuckyTemplates, і вивчіть найшвидший і найефективніший спосіб це зробити.

Мобільні звіти LuckyTemplates. Поради та методи

Мобільні звіти LuckyTemplates. Поради та методи

У цьому короткому посібнику розповідається про функцію мобільних звітів LuckyTemplates. Я збираюся показати вам, як ви можете ефективно створювати звіти для мобільних пристроїв.

Звіти про професійну аналітику послуг у LuckyTemplates

Звіти про професійну аналітику послуг у LuckyTemplates

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

Оновлення Microsoft Power Platform | Microsoft Ignite 2021

Оновлення Microsoft Power Platform | Microsoft Ignite 2021

Ознайомтеся з основними оновленнями для Power Apps і Power Automate, а також їх перевагами та наслідками для Microsoft Power Platform.

Загальні функції SQL: огляд

Загальні функції SQL: огляд

Відкрийте для себе деякі поширені функції SQL, які ми можемо використовувати, наприклад String, Date і деякі розширені функції для обробки та маніпулювання даними.

Створення шаблону LuckyTemplates: керівництво та поради

Створення шаблону LuckyTemplates: керівництво та поради

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

Параметри полів і малі кратні в LuckyTemplates

Параметри полів і малі кратні в LuckyTemplates

У цьому блозі ми продемонструємо, як шарувати параметри поля з малими кратними, щоб створити неймовірно корисну інформацію та візуальні ефекти.