BI-системы: что это и зачем они нужны бизнесу

Вникаем в основы бизнес-аналитики
6 минут25664

Статья подготовлена экспертами факультета BI-разработки GeekBrains.

На международных рынках компании-гиганты работают с миллионами, десятками, а кто-то — и с сотнями миллионов клиентов. С помощью интернета обо всех этих клиентах можно собирать самые разные данные: возраст, пол, образование, вкусы, предпочтения и т. д. Анализ этих данных помогает менеджерам ориентироваться в пространстве и времени, планировать спрос, оценивать перспективы развития и прорабатывать стратегии.

Компаниям нужно много данных, и за их хранение, как правило, отвечают администраторы баз данных. На основании анализа данных строятся и проверяются гипотезы для развития бизнеса. Этим занимаются аналитики.

В последнее время эти две группы всё чаще дополняются отделами Business Intelligence — бизнес-аналитики. Эти специалисты приводят сырые, неудобные данные в состояние, пригодное для бизнес-анализа. Сырые данные необходимо очищать от различных выбросов, дублей и других помех. А учитывая их объём, частое обращение к этим данным будет отнимать слишком много ресурсов.

Для изучения бизнес-метрик не нужны вообще все данные. Например, чтобы получить ежедневную динамику новых пользователей приложения, не нужны их id, пол и местоположение. Достаточно сделать таблицу, в которую для каждого дня проставляется количество новых пользователей — оно будет суммироваться. Таблица будет обновляться в нерабочее время, а днём сотрудники смогут работать с нужной статистикой.

Специалисты по BI готовят таблицы агрегированных данных (витрины), строят отчёты на основе полученных витрин (дашборды) и настраивают автоматическое обновление данных в этой системе. От стандартных отчётов дашборд отличается гибкостью и интерактивностью — в нём предусмотрены разные наборы фильтров, параметров и визуализаций. Дашборд можно назвать интерактивной аналитической панелью, где заказчик может просматривать данные в любом интересующем его разрезе.

BI-разработчики не скажут, как повлияет на ваши продажи новый продукт конкурента, но построят систему, где вы сможете проверить это сами.

Основные задачи BI 

Сбор данных. BI-системы позволяют строить сложные виды отчётности, где можно объединить в одну таблицу данные из разнообразных источников — базы данных, файлы, онлайн-источники (Google Docs) и т. д.

Очистка и агрегация. Агрегация данных помогает не только избавиться от лишней информации, но и сэкономить память. При работе с большими объёмами данных имеет смысл разделять нагрузку при запросах: на первом этапе агрегируем данные и складываем в таблицу, на втором делаем запрос к этой таблице из дашборда.

Визуализация. BI-инструменты предоставляют множество вариантов визуализации данных: от обычных таблиц до различных Scatter Plots, которые можно применять для практически любого анализа. Нередко BI-инструменты дают возможность связывать различные визуализации друг с другом. Например, есть два графика с одинаковой цветовой легендой. Можно настроить так, чтобы при выделении одного из элементов легенды на первом графике этот же элемент подсвечивался/фильтровался на втором. Такие приёмы существенно ускоряют поиск нужной информации и упрощают анализ.

Быстрый доступ. Быстрый доступ к данным — огромная помощь в оперативном принятии решений. BI-разработчик может использовать единое пространство для дашбордов или другой инструмент — в любом случае доступ к информации значительно упрощается. Можно не ставить задачу аналитику, не писать собственноручно запрос к базе данных — достаточно открыть дашборд и отфильтровать там необходимую информацию. Особенно хорошо, если доступ к данным предоставляется в режиме реального времени.

Распределение доступа. BI-системы обычно располагают различными средствами распределения доступа, что помогает гибко настраивать процесс получения данных. Например, один и том же дашборд можно настроить так, чтобы разным пользователям были видны разные блоки данных.

Хорошо настроенная BI-система снимает с аналитиков и продуктовых команд часть нагрузки и освобождает время, которое они тратят на оперативную отчётность или постоянно повторяющиеся запросы к базе данных. Если формат отчётности зафиксирован, можно построить дашборд в соответствии с ним, и все необходимые данные будут отображаться автоматически. Один дашборд заменит множество еженедельных отчётов. Он будет хранить весь объём данных и заказчик сможет сам отфильтровать нужную ему информацию вместо того, чтобы ждать, пока эти данные ему пришлют.

Из чего состоят BI-системы?

BI-системы можно разделить на три основные составляющие: 

Хранилище данных — база с сырыми и агрегированными данными, которые будут источником для аналитики (как для запросов к базе, так и для дашбордов).

ETL-система (Extract, Transform, Load) отвечает за подготовку и сбор агрегированных данных в витрины. Обычно это набор скриптов на языке программирования, каждый из которых берёт сырые данные из одних таблиц хранилища, обрабатывает их и отправляет в другие. Также ETL-система может использоваться для административных задач, например для резервного копирования или регулярного обновления дашбордов. ETL-системы может не быть, если в дашборд надо загружать небольшой объём данных и если не требуется использовать сложные запросы к БД.

BI-сервер/BI-инструмент. Почему через слеш? Потому что есть два основных подхода — поднимать BI-сервер или использовать только BI-инструмент.

BI-сервер — это место для хранения дашбордов, средство визуализации, а также система распределения доступов и автоматического обновления. Сотрудники строят дашборды у себя на компьютере, загружают результат работы на сервер, настраивают расписание обновления и права на просмотр.

BI-инструмент — это программная платформа для построения дашбордов и визуализаций. В этом случае компании экономят: не используют сервер, а строят дашборды на локальных компьютерах, загружают их в общее пространство (например, Git), а обновление дашбордов и отправку информации целевым пользователям настраивают в ручном режиме или с помощью языков программирования.

Хранение отчётов и данных в единой BI-системе обеспечивает прозрачную инфраструктуру и облегчает поиск информации. 

О чём нужно подумать при внедрении BI

Проанализируйте источники данных, их объём и тип. Это позволит оценить необходимость разработки ETL-системы и правильно выбрать BI-инструмент.

Выберите BI-инструмент, подходящий вашим целям. Инструменты различаются возможностями визуализации, разнообразием источников данных, ценами и т. д. Самые известные инструменты рассмотрены в статье на Хабре. Также проанализируйте аудиторию будущих пользователей BI-системы, подумайте над распределением прав доступа и шаблонами дашбордов.

Определите необходимость разработки ETL-системы. Она зависит от того, насколько сложны запросы к данным и насколько большой их объём требуется анализировать. Если объём велик, для бесперебойной работы потребуется распределять нагрузку между BI-сервером и ETL-системой. Часто предобработку и агрегацию данных делают в ETL-системе, а в BI строят дашборды, опираясь на уже собранные таблицы. Это ускоряет работу и даёт возможность использовать агрегированные таблицы для нескольких отчётов одновременно.

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

Если вы хотите освоить BI-системы во всех подробностях, приглашаем на курс GeekBrains. Там подробно разбирается профессия BI-разработчика — от написания запросов к данным до построения всей инфраструктуры.

Заключение

Часто компании не решаются внедрять BI-системы из-за сложности развёртывания инфраструктуры с нуля. Это стандартная проблема смены парадигмы. Вроде и так всё работает, отчётность получаем вовремя — и хорошо. Однако развёртывание BI-систем — это серьёзная инвестиция в будущее компании, помогающая внедрить data-driven-подход — управление, основанное на данных. Его главный принцип: решения нужно принимать, опираясь на исторические и прогнозируемые данные, а не на интуицию и личный опыт. BI-системы внедряются небыстро, но если у всех сотрудников будет доступ к необходимым данным за любой период времени, это упростит принятие стратегически верных решений и многократно окупится. Не измеряешь — не управляешь.

bi-developerпрограммирование
Нашли ошибку в тексте? Напишите нам.
Спасибо,
что читаете наш блог!