Змінні та вирази в редакторі Power Query
У цьому посібнику обговорюватимуться змінні та вирази в редакторі Power Query. Ви навчитеся правильно їх писати та будувати.
У цьому посібнику ви дізнаєтеся, що таке кеш даних і чому він важливий. Кеш даних зберігає біти даних, які можуть стати цінними для майбутнього використання.
Якщо вам потрібні ті самі фрагменти інформації в майбутньому заході чи дії, кеш даних надасть потрібну інформацію. Це усуває необхідність повторного отримання системою тих самих наборів даних.
У цьому підручнику ви ознайомитеся з вісьмома важливими речами, про які слід пам’ятати під час роботи з кешами даних у LuckyTemplates:
Зміст
Визначення та призначення кешу даних
Кеш даних — це тимчасова таблиця, створена в пам’яті за допомогою . Ця тимчасова таблиця надсилається механізму формул, який потім перебирає цю інформацію та виконує різні операції після запиту.
Весь зв’язок між системою зберігання даних і системою зберігання даних завжди відбувається у формі кешу даних. Механізм формул готує плани запитів, а потім надсилає інструкції механізму зберігання. Потім механізм зберігання надсилає його назад механізму формул, який повертає результат назад користувачеві.
Оскільки механізм формул не має прямого доступу до даних, що зберігаються в DirectQuery та VertiPaq, він покладається на механізм зберігання для кешів даних.
Кеш даних, надісланий системою зберігання даних, має нестиснений формат. Це означає, що розмір даних, які зберігаються в інструменті Vertipaq, можна зменшити.
Але коли приходить час повернути кеш даних назад до механізму формул, його не можна стиснути, оскільки механізм формул не працює зі стиснутими наборами даних.
Який вплив кешу даних на оперативну пам’ять
Якщо механізм зберігання надсилає величезні фрагменти кешу даних, це займе багато місця в оперативній пам’яті програмного забезпечення. Також знадобиться багато часу, щоб система формул виконувала ітерації та виробляла результат.
Отже, коли ви пишете свій код DAX, ви повинні розуміти, що він має бути написаний таким чином, щоб мінімізувати кількість рядків у кеші даних.
Найкращим сценарієм було б зіставити кількість рядків, показаних у візуальному зображенні, з кількістю рядків, повернутих у кеші даних.
У більшості випадків буває важко повернути однакову кількість рядків. Якщо це станеться, вам потрібно буде переглянути свій код DAX і розбити його таким чином, щоб оптимізувати кеш даних, створений механізмом зберігання.
Як кеш даних оптимізує запити
Неоптимізовані функції
Деякі функції на мові DAX не оптимізовані для механізму зберігання. Щоб краще це зрозуміти, розглянемо приклад.
Наприклад, у вашому коді замість використання SUMMARIZE можна використовувати функцію. Функції SUMMARIZE і GROUPBY виконують однакову операцію. Однак існують помітні відмінності залежно від сценарію.
Функція GROUPBY не оптимізована для системи зберігання даних. Якщо ви використовуєте функцію GROUPBY для таблиці фактів із 12 мільйонами рядків, вона створить кеш даних із такою ж кількістю рядків. Це може бути від 600 Мб до 1 Гб.
Такий розмір може сильно навантажувати оперативну пам’ять. Тому замість використання GROUPBY використовуйте . Функція SUMMARIZE призводить до меншого розміру кешу даних. Ви можете поєднати його з GROUPBY як функцію верхнього рівня.
Зменшені повтори
Коли ви пишете заходи або запити DAX, вам потрібно переконатися, що створений за лаштунками код підходить для механізму зберігання.
Вам потрібно написати свій код DAX таким чином, щоб створити кеш даних, який також можна використовувати в наступних запитах. Перевага цього полягає в тому, що замість виконання окремого сканування за допомогою , система зберігання перевірить, чи вже було отримано подібний запит.
Якщо це правда, це означає, що його кеш даних доступний у пам’яті. Тож замість повторного сканування запиту VertiPaq просто поверне його з кеш-пам’яті до механізму формул.
Якщо ви бачите у своєму запиті системи зберігання, це означає, що ці запити не можна кешувати. Якщо подібний запит буде надіслано системі зберігання, вона виконає повторення.
Таким чином, VertiPaq повинен буде викликати механізм формул, щоб вирішити запит. Це збільшує загальний час виконання, оскільки в цьому випадку кеш-пам'ять не може використовуватися.
Висновок
Кеш даних — ваш найкращий друг у мові DAX. Не забувайте писати код DAX таким чином, щоб максимізувати простір для зберігання та зменшити кількість ітерацій інструмента VertiPaq. Ви можете повторно використовувати кеш даних, створений Storage Engine, щоб скоротити час виконання запиту.
У цьому посібнику обговорюватимуться змінні та вирази в редакторі Power Query. Ви навчитеся правильно їх писати та будувати.
Теплова карта LuckyTemplates — це тип візуалізації, який використовується для відображення щільності даних на карті. У цьому підручнику я розповім, як ми можемо створити один – не пропустіть!
Я збираюся навчити вас справді цікавому прикладу принципу Парето та тому, як створити діаграму Парето за допомогою важливих формул DAX.
Дізнайтеся, як користувацьку гістограму на ринку можна використовувати для порівняння даних і як ви можете створити їх за допомогою прикладів у LuckyTemplates.
Дізнайтеся, як працює функція Power Automate Static Results і чому її корисно додати до найкращих методів створення блок-схем.
eDNA демонструє, як виконувати переклад мови або тексту за допомогою Python і передавати це в LuckyTemplates. Підручник LuckyTemplates Python.
У цьому підручнику ви дізнаєтеся, як використовувати Gauge Bullet Graph для створення діаграми Ганта в LuckyTemplates Report Builder.
У цьому підручнику ви дізнаєтесь, як створити тривимірну (3D) точкову діаграму за допомогою Python у LuckyTemplates.
Ефективне звітування LuckyTemplates – огляд сеансу та завантаження ресурсу
Аналіз нових клієнтів за допомогою LuckyTemplates – наступна подія лише для учасників