Питання співбесіди Power BI
Автор: Aaron Cao · Оновлено

Співбесіди з Power BI зосереджені на evaluation context DAX, data modeling та архітектурі refresh. Очікуйте пояснити measure на противагу calculated column, описати filter context і row context, обґрунтувати star schema, обрати між Import і DirectQuery та налаштувати row-level security.
Які питання з DAX виникають на кожному раунді?
Ви можете створити робочий звіт і все одно застрягти на питаннях DAX, бо співбесіди перевіряють evaluation model, а не список функцій. Цей розділ описує питання DAX, які трапляються майже на кожній співбесіді з Power BI, і те, що містить сильна відповідь.
- У чому різниця між measure і calculated column? Calculated column обчислюється рядок за рядком під час refresh і зберігається в моделі, споживаючи пам'ять. Measure обчислюється під час запиту відносно поточного filter context і нічого не зберігає. Назвіть пам'ять і момент обчислення, а не просто "одне динамічне".
- Поясніть row context і filter context. Row context: поточний рядок під час ітерації. Filter context: набір фільтрів, застосованих слайсерами, візуалами та DAX. Більшість заплутаних результатів виникають через очікування одного, а отримання іншого.
- Що робить CALCULATE? Він обчислює вираз у зміненому filter context і перетворює row context на filter context. Саме цю другу частину слухають інтерв'юери.
- Коли потрібен ітератор на кшталт
SUMX? Коли обчислення має відбуватися по рядках до агрегації, наприклад ціна помножена на кількість, коли жодна збережена колонка не містить добуток. - Що робить
ALLі чому його поєднують із CALCULATE? Він знімає фільтри, і саме так будують measure відсотка-від-загального. - Поясніть
RELATEDпротиRELATEDTABLE. Напрямок має значення: одна переходить на бік one, інша повертає рядки з боку many.
Корисна звичка на весь раунд: коли відповідь із DAX починає блукати, поверніться до context. Майже кожне уточнювальне питання зводиться до того, який context активний і що його змінило.
Як відповідати на питання з data modeling?
Питання з modeling відділяють тих, хто просто будує звіти, від тих, хто справді може відповідати за dataset. Очікувана лексика тут dimensional.
- Star schema чи snowflake, і чому? Star, заради продуктивності запитів і простішого DAX, з денормалізованими dimension. Snowflake лише коли dimension справді великий або спільний. Одна пласка таблиця це відповідь, яка завершує раунд достроково.
- Що таке fact table і що таке dimension table? Fact містять вимірювані події на заданому grain, dimension містять атрибути, за якими ви ріжете дані.
- Чому важливі cardinality зв'язку і напрямок cross-filter? One-to-many з одним напрямком є типовим не просто так; двонапрямлена фільтрація вносить неоднозначність і може давати неправильні підсумки.
- Як обробити зв'язок many-to-many? Bridge table разом із поясненням, що означають підсумки після цього.
- Навіщо потрібна окрема date table? Функції time intelligence вимагають суцільної, позначеної date table; без неї measure year-to-date і за попередній рік поводяться неправильно.
- Power Query чи DAX для цього перетворення? Формуйте дані в Power Query, де це можливо, бо перетворення там відбуваються один раз під час refresh, а не при кожному запиті.
BI analyst, що проходив співбесіду для команди звітності в рітейлі, отримав питання, чому сума продажів виглядає правильною за продуктом, але неправильною за регіоном. Відповідь, якої хотіла панель, була відповіддю про modeling: двонапрямлений зв'язок, що створює неоднозначний шлях фільтра, а не переписування DAX. Діагностика спершу на рівні моделі це інстинкт, який перевіряють.
Інші банки питань за ролями зібрані в розділі питання співбесіди за роллю.
Про що питають щодо refresh, security і deployment?
Ці питання трапляються на раундах для BI developer і analytics engineer, і саме тут кандидатам, які будували лише в Power BI Desktop, бракує матеріалу.
- Import, DirectQuery чи Composite? Import найшвидший для запитів і обмежений пам'яттю та вікнами refresh. DirectQuery тримає дані актуальними і переносить навантаження на джерело, з обмеженнями DAX. Composite поєднує обидва. Наведіть компроміс і одну умову, яка його визначає.
- Для чого потрібен on-premises data gateway? З'єднує хмарні служби з джерелами за корпоративною мережею, для запланованого refresh і DirectQuery.
- Як працює incremental refresh? Розбиття на партиції за діапазоном дат, щоб перезавантажувались лише останні партиції, налаштоване параметрами діапазону, яких очікує ця функція.
- Як реалізувати row-level security? Ролі з виразами фільтра DAX на dimension table, з динамічним security, що використовує функцію залогованого користувача для пошуку в таблиці відповідностей.
- Workspace, app, dataset, report: як вони пов'язані? Базова обізнаність із сервісом і легке питання, на якому можна провалитися, якщо ви працювали лише в Desktop.
- Як покращити повільний звіт? Зменшіть кількість візуалів на сторінці, надавайте перевагу measure над calculated column, зменшіть cardinality на колонках зв'язків і перевірте через Performance Analyzer.
Якщо ваш досвід повністю в Desktop, скажіть про це прямо і опишіть, що вам треба вивчити. Інтерв'юери приймають чесно визнану прогалину; вони не приймають вигаданий досвід deployment, який розвалюється на наступному уточнювальному питанні.
Як тренуватися до співбесіди з Power BI?
Відповіді з Power BI провалюються вголос особливим чином: кандидат знає відмінність, але пояснює її, ходячи по колу, бо демонстрував її лише клацанням мишею. Читання банку питань дає впізнавання, а впізнавання руйнується, коли незнайомець питає і чекає.
Оберіть п'ять питань вище, які ви найменше хотіли б почути, і відповідайте на кожне вголос менш ніж за дев'яносто секунд, без екрана. Якщо ви не можете сказати, що робить CALCULATE, не малюючи, ви не готові сказати це на панелі. Виконання тих самих запитів проти AI interviewer, який ставить уточнювальні питання, ближче до реальної розмови, ніж повторне читання нотаток, і саме для цього створено режим mock interview.
Aaron Cao, засновник SubcueAI, розробив режим практики навколо повторення, а не подачі контенту, бо списків питань достатньо, а повторень усного мовлення ні. У живому раунді desktop-застосунок і Side Panel розширення браузера можуть показувати структуру, поки говорить інтерв'юер, що найбільше допомагає з матеріалом, який ви вже знаєте. Кроки налаштування є на сторінці tutorial.
Часті запитання
Чи включають співбесіди з Power BI практичний тест?
Скільки SQL мені потрібно для ролі Power BI?
Яке найпоширеніше питання співбесіди з Power BI?
Чи варто вивчити DAX Studio або Tabular Editor перед співбесідою?
Чи може AI-асистент допомогти під час живої співбесіди з Power BI?
Схожі запитання
- Які питання ставлять на відеоінтерв'ю HireVue?
- Які питання ставлять на співбесіді AWS?
- Які питання ставлять на співбесіді DSA?
- Які питання ставлять на співбесіді sales?
- Які питання ставлять на співбесіді у клієнтський сервіс?
- Які питання ставлять на співбесіді при прийомі на роботу в неприбуткову організацію?