4 модуля по 1-2 недели:
DAX (Data Analysis Expressions) — язык формул Power BI. На собесе обязательно спросят:
| Функция | Что делает | Use case |
|---|---|---|
| CALCULATE | Изменяет filter context | % от total, prior period comparison |
| FILTER | Фильтрация таблицы | CALCULATE(SUM(Sales), FILTER(Date, Year=2025)) |
| SUMX | Row-context sum | Sum(Quantity × Price) — нужен row context |
| RANKX | Ранкинг по measure | Топ-10 customers по revenue |
| ALL | Удаляет фильтры | % от тотала через CALCULATE(SUM, ALL(Region)) |
| DATESYTD | Year-to-date | YTD revenue |
| SAMEPERIODLASTYEAR | Prior year | YoY growth |
Классическая задача: посчитать % выручки топ-5 клиентов от общего.
// 1. Сначала ранкуем клиентов по выручке
Customer Rank =
RANKX(
ALL(Customers[CustomerID]),
[Total Revenue],
, DESC
)
// 2. % топ-5 от всего
% Top 5 Revenue =
DIVIDE(
CALCULATE([Total Revenue], FILTER(Customers, [Customer Rank] <= 5)),
CALCULATE([Total Revenue], ALL(Customers))
)
// 3. YoY growth
YoY Growth =
VAR Curr = [Total Revenue]
VAR Prev = CALCULATE([Total Revenue], SAMEPERIODLASTYEAR('Date'[Date]))
RETURN DIVIDE(Curr - Prev, Prev)
Power Query — отдельный movement от DAX. Использует M-язык для очистки и трансформации данных перед загрузкой в модель. Аналог dbt staging.
Когда выбирать Power BI:
Условно работает через корпоративную подписку Office 365 E3/E5. Розничная покупка для физлиц затруднена. Microsoft официально не ушёл из РФ как Tableau, но возможны trouble в будущем.
SQL обязателен. DAX — для тех кто работает с Power BI. На собесе аналитика — SQL спросят 100% случаев, DAX — только если на позицию BI-аналитика.
Free — для одного пользователя на своём компе (.pbix файлы). Pro ($10/мес) — для sharing dashboards. Premium ($20/мес) — для больших workspace. Купить Pro/Premium из РФ затруднительно.
M (Power Query) первым — это ETL. DAX вторым — это measures. Аналитик 80% времени пишет DAX, 20% M. Junior — DAX обязателен, M полезен.
Microsoft Learn — бесплатные курсы с лабами. SQLBI.com — лучший ресурс по DAX. YouTube «Guy in a Cube» — практические уроки. Pet-проекты на public данных.