DAX формулы в Power BI: практический гайд
DAX отвечает за расчёты внутри модели...
Читать далее DAX формулы в Power BI: практический гайд
Барри Девлин и Пол Мерфи, два инженера IBM Europe, в 1986 году пытались решить проблему, которая не давала покоя крупным корпорациям того времени: операционные данные есть, но получить из них управленческую аналитику было практически невозможно. Транзакционные системы хранили текущее состояние бизнеса, но не умели отвечать на вопросы почему и что будет дальше. Девлин и Мерфи построили внутреннюю архитектуру для IBM EMEA, а в 1988 году опубликовали статью, которая впервые описала концепцию «business data warehouse».
Термин, которого раньше не существовало, за несколько лет становится стандартом индустрии.
Почти сорок лет спустя проблема до сих пор не исчезла, да ещё и изменила масштаб. Вместо изолированных мейнфреймов у компаний теперь CRM, ERP, маркетинговые платформы, производственные системы и десятки Excel-файлов, которые «временно» стали основным инструментом аналитики. Данные есть везде, но ответ на простой аналитический вопрос иногда требует трёх дней работы финансового отдела.
Далее разбираем, как устроен современный data warehouse в Украине: когда он становится необходимостью для бизнеса и как выглядит этот путь на практике.
У каждой компании где-то лежат данные, но основной вопрос в том, зачем они вообще нужны. Те же CRM или ERP заточены под очень простую задачу: быстро что-то записать и так же быстро это найти. Например, менеджер открыл клиента и за секунду получил информацию. Сделка прошла и система её зафиксировала.
И всё будто идеально… ровно до момента, пока не возникает вопрос другого уровня:
«А что происходит с маржей по категориям за последние два года, если разложить это по регионам и каналам продаж?»
Операционная база на такой вопрос не рассчитана. Она либо долго думает, либо блокирует работу других пользователей, либо выдаёт данные, которые всё равно надо сводить вручную.
Data warehouse – это отдельная аналитическая среда в рамках архитектуры данных, куда данные из разных систем поступают, очищаются и приводятся к единой структуре для дальнейшего анализа.
Три понятия, которые часто путают:
| OLTP | Data Warehouse | Data Lake | |
| Назначение | Операционные транзакции |
Аналитические запросы | Хранение сырых данных любого формата |
| Структура данных | Нормализованная | Денормализованная, оптимизированная для чтения | Любая (структурированная, полуструктурированная, не структурированная) |
| Типичные пользователи | Менеджеры, операторы | Аналитики, руководство | Data Scientists, инженеры данных |
| Горизонт данных | Текущее состояние | Годы истории | Не ограничено |
| Примеры систем | SAP, Salesforce | BigQuery, Snowflake, Redshift | AWS S3, Azure Data Lake |
Если коротко: OLTP отвечает на вопрос «что происходит сейчас», DWH – «почему так происходит и что будет дальше», а в Data Lake хранят большие объёмы сырых данных в разных форматах с расчётом на дальнейшую обработку. Data Lake и аналитическое хранилище не конкурируют: в зрелых архитектурах они сосуществуют. Lake как слой сырых данных, DWH как структурированная аналитика поверх него.
Нет универсального порога оборота или количества систем, после которого нужен DWH. Но есть конкретные симптомы:
Современное аналитическое хранилище строится послойно, и каждый слой имеет чёткую роль и границы ответственности.
Data Mart (Gold layer) – предметно-ориентированные витрины, оптимизированные под конкретные аналитические задачи: финансовая витрина для CFO, маркетинговая для CMO, операционная для производства. Запросы здесь выполняются быстро, потому что данные уже агрегированы под конкретные вопросы.
Трёхуровневая архитектура даёт две вещи одновременно: стабильность – изменения в источниковых системах не разрушают аналитику, и гибкость – новые витрины добавляются без перестройки фундамента.
ETL (Extract → Transform → Load): классический подход, где данные сначала извлекаются из источников, трансформируются на отдельном сервере и только потом загружаются в хранилище. Хорошо работал в эпоху дорогих облачных вычислений и небольших объёмов.
ELT (Extract → Load → Transform): современный подход, где данные сначала загружаются в хранилище в сыром виде, а трансформации происходят уже внутри него. Это стало возможным благодаря облачным платформам, которые имеют достаточную вычислительную мощность для трансформации непосредственно на уровне хранилища.
| ETL | ELT | |
| Где трансформация | Внешний сервер | Внутри DWH |
| Подходит для | Legacy-систем, строгих требований к безопасности данных | Облачных платформ, больших объёмов |
| Скорость разработки | Медленнее | Быстрее |
| Стоимость | Отдельный ETL-сервер | Зависит от объёма вычислений в облаке |
Для большинства новых проектов сегодня выбирают ELT. Облачные платформы часто делают его более простым в реализации и масштабировании, но стоимость зависит от эффективности запросов и объёма обработки. Классические etl процессы остаются актуальными там, где есть legacy-инфраструктура или жёсткие требования к тому, какие данные покидают периметр корпоративной сети.
Выбор платформы является одним из ключевых решений, которое потом сложно переиграть. На рынке облачных DWH уже сформировался очевидный пул лидеров: BigQuery и Snowflake в Украине чаще всего рассматривают как базовые варианты, наряду с Redshift и Azure Synapse.
BigQuery – serverless-платформа от Google, где не нужно управлять кластерами или планировать масштабирование: ресурсы выделяются автоматически под конкретный запрос. Построена на собственном движке Dremel, который выполняет параллельные колоночные запросы через тысячи узлов одновременно.
Преимущества: минимальный операционный overhead, нативная интеграция с экосистемой Google (Looker Studio, Vertex AI, Google Analytics), модель оплаты за фактически обработанные данные. Удобно для неравномерной нагрузки.
Ограничения: on-demand модель может давать непредсказуемые счета при неоптимизированных запросах. Требует дисциплины в написании SQL. Привязка к Google Cloud.
Подходит для: компаний с неравномерной нагрузкой, проектов в Google Cloud, команд без выделенного инфраструктурного администратора.
Snowflake построен на идее полного разделения хранения и вычислений, их можно масштабировать независимо друг от друга. Платформа развёртывается поверх AWS, Azure или Google Cloud, что делает её мультиоблачным решением без привязки к конкретному провайдеру.
Преимущества: мультиоблачность, удобный обмен данными между организациями через Snowflake Marketplace, управляемая модель расходов через virtual warehouses с гибким масштабированием.
Ограничения: более высокая базовая стоимость по сравнению с BigQuery для малых объёмов. Требует планирования размера virtual warehouses под нагрузку.
Подходит для: крупных корпораций, мультиоблачных сред, компаний с потребностью обмена данными между бизнес-юнитами.
Redshift является решением от AWS, глубоко интегрированным с экосистемой Amazon: S3, Glue, SageMaker, QuickSight. Существует в двух вариантах: классический provisioned и более новый Serverless с автоматическим масштабированием.
Преимущества: зрелый инструментарий для etl процессов через AWS Glue, широкое сообщество, большое количество интеграций внутри AWS-экосистемы.
Ограничения: классический вариант требует планирования кластеров и ручного управления при изменении нагрузки. Serverless закрывает часть этих ограничений.
Подходит для: компаний, инфраструктура которых уже на AWS, проектов со стабильной и предсказуемой нагрузкой.
Azure Synapse объединяет в одной платформе DWH, интеграцию данных и аналитику больших данных. Для компаний в Microsoft-среде это означает нативную работу с Power BI, Azure Active Directory и Microsoft Fabric без дополнительных интеграционных прослоек.
Преимущества: единая среда для SQL-запросов и Spark-вычислений, глубокая интеграция с Power BI, знакомый интерфейс для команд в Azure-экосистеме.
Ограничения: более широкий функционал одновременно означает большую сложность настройки. Для небольших проектов может быть избыточным решением.
Подходит для: предприятий в корпоративной Microsoft-среде, проектов где Power BI – основной инструмент визуализации.
British American Tobacco – транснациональная компания с присутствием в более чем 180 странах и штатом более 50 000 работников. Масштаб бизнеса означает масштаб данных: десятки источников, тысячи показателей, несколько аналитических команд с разными потребностями.
На первом этапе команда провела аудит существующих отчётов Power BI и выявила проблемы в расчётах и использовании инструментов платформы. До начала сотрудничества с IWIS аналитическая отчётность BAT работала нестабильно: отчёты время от времени были недоступны, показатели пересчитывались с задержками, а быстродействие системы вызывало нарекания. Диагностика выявила системную проблему: данные транспортировались и трансформировались без промежуточного сохранения. Фактически, каждый запрос к Power BI запускал полный цикл извлечения и трансформации данных из источников в реальном времени. Любой сбой на любом шаге – и отчёт просто не открывался.
Отдельной проблемой было отсутствие слоя диспетчеризации etl процессов: никто не контролировал ни соединение с источниками, ни факт выполнения загрузки, ни качество данных на выходе. Система работала как чёрный ящик.
Команда IWIS разработала несколько вариантов архитектуры, каждый из которых предполагал построение хранилища данных бизнес-уровня, но на разных инструментах. Клиент выбрал оптимальную платформу с учётом корпоративной инфраструктуры.
Реализация включала два уровня:
Bronze layer (raw data) – к каждому источнику настроены механизмы экстракции с автоматическим сохранением сырых данных. Данные больше не трансформируются на лету, они сначала приземляются в неизменном виде.
Silver layer (cleaned data) – отдельный процесс трансформации очищает и структурирует данные с Bronze-уровня. Power BI больше не тянет данные напрямую из источников, он работает с уже подготовленным слоем.
Отдельно была построена инфологическая модель данных: описание всех ключевых сущностей, их связей и потоков между системами. Это упростило дальнейшую поддержку и стало основой для масштабирования.
Важнейший компонент архитектуры – механизм диспетчеризации. Система контролирует выполнение каждого ETL-задания по расписанию, сравнивает инкременты данных между Bronze-уровнем и источником параллельным способом (независимо от самого процесса экстракции), и в случае выявления расхождений или сбоев автоматически отправляет уведомления на почту и в Telegram.
Команда IWIS и BAT прошла путь от нестабильной отчётности до полноценной двухуровневой архитектуры хранилища за 12 месяцев. Конкретные результаты:
Gold-уровень (Data Mart) на момент завершения проекта не строился, потому что существующие потребности закрывал Silver-уровень. Но архитектура спроектирована так, что добавление Gold-уровня не требует перестройки предыдущих слоёв.
Когда речь заходит о разработке data warehouse, вопрос стоимости звучит одним из первых. И ответ всегда один: зависит. Но есть ориентиры, которые помогают составить реалистичный бюджет.
Стоимость разработки состоит из нескольких компонентов:
Анализ и проектирование архитектуры: Discovery-этап, где команда изучает источники данных, их качество, структуру и взаимосвязи, строит инфологическую модель и формирует техническое решение. Пропустить этот этап и сразу писать код является самой распространённой ошибкой, которая стоит дорого при переработке.
Разработка и настройка: построение слоёв хранилища, настройка ETL/ELT-процессов, диспетчеризация, контроль качества данных. Наибольшая часть бюджета.
Лицензии на платформу зависят от выбранного решения. Облачные платформы (BigQuery, Snowflake, Redshift, Azure Synapse) работают по модели pay-as-you-go, поэтому начальные расходы небольшие, но они растут вместе с объёмом данных и количеством запросов.
Поддержка и развитие: после запуска система требует мониторинга, обновлений и добавления новых источников или витрин.
Оценки базируются на практике украинского рынка и глобальных бенчмарках, поскольку большинство DWH-проектов реализуются с использованием международных облачных платформ. Вот примерные ориентиры по стоимости:
| Сценарий | Что входит | Ориентир бюджета |
| Базовый запуск | 2-5 источников, базовая модель данных, ELT, простая отчётность | 15000-30000$ |
| Средний | 5-15 источников, очистка данных, несколько витрин, стабильные ETL-процессы | 30000-80000$ |
| Крупный | 15+ источников, сложная логика, data governance, интеграции, масштабирование | 80000-200000$+ |
Эти цифры являются отправной точкой. Реальная стоимость определяется после Discovery-этапа, когда понятны качество и структура источниковых данных. Именно это может как уменьшить бюджет, так и увеличить его в несколько раз. Здесь чаще всего возникают неожиданности: legacy ERP-система с документацией десятилетней давности или данные в форматах, о которых никто не предупреждал.
Большинство проблем в DWH-проектах организационные или архитектурные. Вот самые распространённые:
Пропущенный Discovery-этап. Команда начинает разработку без полного понимания источников данных, их качества и бизнес-логики. Результат – переработка на поздних стадиях, которая стоит в разы дороже первоначального анализа.
Отсутствие хозяина данных. DWH – это инфраструктура, которая требует постоянного внимания. Если в компании нет человека, ответственного за качество и актуальность данных, система постепенно деградирует.
Попытка построить всё сразу. Желание сделать «идеальное хранилище» с первой попытки приводит к долгим проектам без промежуточных результатов. Правильный подход итеративный: запустить базовую архитектуру, получить ценность, потом развивать.
Игнорирование качества входных данных. «Мусор на входе – мусор на выходе» – это буквальное описание того, что происходит, когда источниковые данные не проходят валидацию. Аналитика на грязных данных вредна, потому что создаёт ложную уверенность в цифрах.
Выбор платформы до понимания потребностей. Платформа должна определяться архитектурой и потребностями, а не наоборот.
Если на большинство вопросов ответ «нет», начинать надо с аудита данных и формирования требований. Именно это и является первым шагом в правильно построенном DWH-проекте.
IWIS специализируется на построении аналитической инфраструктуры для бизнеса: от аудита источников данных до полноценного аналитического хранилища с ETL-процессами и BI-отчётностью. Среди наших клиентов много компаний разного масштаба, которые прошли путь от разрозненных данных до единого источника правды.
Если узнали в статье свою ситуацию, обращайтесь за бесплатной консультацией по архитектуре данных. Разберём вашу инфраструктуру и предложим конкретные следующие шаги.
DAX отвечает за расчёты внутри модели...
Читать далее DAX формулы в Power BI: практический гайд