В предыдущей статье я рассказал об опыте внедрения BI-аналитики в крупной дистрибьюторской компании: почему именно BI необходим Enterprise-компаниям, каковы его преимущества, как «приучить» заказчика к системе. Однако выбор системы — это лишь первый шаг в развитии аналитики, за которым следует еще немало подводных камней. Поэтому сейчас я бы хотел остановиться на нюансах последовательного развития BI, а также поговорить о распространенных проблемах: как развивать аналитику в условиях ограниченных ресурсов, как доказать эффективность проекта руководству и как подступиться к организации аналитического хранилища.
Предупрежу сразу: цель этой статьи — осветить сам подход к развитию проектов построения аналитики и путь к пониманию важности таких задач для достижения вполне конкретных коммерческих целей, а не показать техническую реализацию отдельных инструментов. Кроме того, я бы хотел показать, что всю необходимую работу для построения аналитической платформы можно разделить на несколько последовательных этапов и реализовывать их постепенно один за другим, что гораздо проще и дешевле. Рассказывать об аспектах построения аналитического хранилища в нашей компании я не буду — но, если у вас появятся конкретные вопросы, готов ответить на них в комментариях. Итак, начнем!
Как должно быть?
Слой аналитического хранилища обычно присутствует в классической схеме построения аналитики данных. Иногда он реализован сразу в корпоративном хранилище данных (КХД) — но не у каждой компании получается до этого дорасти. Чаще это отдельный сервер, предназначенный для консолидации данных из различных целевых информационных систем. Так или иначе в этом слое данные собираются в упорядоченную структуру, реализующую целостное представление о структуре данных и связях между ними, также устраняются противоречия дублирующих сущностей, возникших в разных системах. Данные в аналитическом хранилище структурируются, проверяются на полноту и наличие ошибок и затем предоставляются для аналитики (в широком понимании этого термина) в виде тематических витрин. А уже к этим витринам подключаются аналитические системы или отдельные аналитики для получения требуемых данных и использования их в дальнейшей работе.
Что касается единой версии правды — это очевидное преимущество знают все. Чем дальше мы погружались в нашу работу, тем сложнее было обрабатывать ошибки взаимосвязей данных. Конечно, есть определенные решения этой проблемы, реализуемые без выделенного хранилища. Например, можно построить виртуальную структуру данных, описав в ней все конфликты и способы реагирования на них, а потом эту структуру развивать. Но по трудоемкости подобный процесс будет ненамного проще.
Поставщики данных чаще всего и так сильно перегружают системы, и снижение нагрузки на них крайне важно.
Приведу пример структурирования данных для удобной и быстрой обработки — часть данных о складских запасах на каждый день у нас хранилась только в OLAP-кубе, и чтобы построить лишь один срез на дату по всей номенклатуре, требовалось около 10 минут времени работы сервера. Очевидно, что делать аналитику по периоду в таком варианте было бы просто нереально. Кроме того, в случае недоступности какой-либо системы (например, из-за высокой нагрузки) мы не теряем исторические данные в отчетах.
А что же на самом деле?
То, что я описал выше, — идеальная картина, как в учебнике. В жизни же чаще всего все красиво только в тех случаях, когда ИТ-инфраструктура полностью создается с нуля. Именно тогда ее можно спроектировать с учетом специфики бизнеса и построить сразу «по уму». На практике обычно встречаются две крайности:
С ИТ вообще все плохо: максимум, где-то живет 1С, все остальное в Excel, про управленческую отчетность задумываются раз в год и собирают руками, аналитика — это вообще слово из языка инопланетян.
ИТ очень даже развит, имеет множество специфических систем под различные задачи (логистика, HR, документооборот и пр.), неплохую ERP-систему, плюс 1С для бухучета и отчетности и много чего еще.
У нас в компании, как вы наверняка догадались, был второй вариант. И конечно же, эволюционное развитие до определенного момента не подразумевало комплексного подхода к построению системы аналитики. Такой ход истории порождал определенный набор сложностей: ИТ эволюционировало не один десяток лет и представляло собой отдельные системы, которые развиваются по своим законам и объединены лишь на уровне стратегического развития компании. И на определенном этапе компания задумалась о создании единого подхода к хранению и информации этих систем и обработке данных из них.
Для качественной аналитики нам надо было построить систему работы с данными, что само по себе очень затратно и вначале не совсем очевидно для руководства. И только потом на основе этой системы организовать аналитику. Но редко бывает так, что с первого дня получается строить аналитику правильно и в масштабах, соответствующих требованиям бизнеса. Мало кто соглашается выделить значительные человеческие и финансовые ресурсы под идею, подразумевающую, что через пару лет появится некая платформа управления данными, с помощью которой будет делаться аналитика.
Конечно, можно взять продукт на тестирование и, если понравится, купить — это идеальный вариант для любого коммерсанта, да и просто здравомыслящего человека. Но, как мы знаем из жизни, если что-то делать по компромиссному сценарию, то качество итогового продукта может так сильно отличаться от желаемого, что это никому будет не нужно.
Есть ли альтернатива?
В нашем случае оказалось, что да. Мы начали построение аналитики сразу, без аналитического хранилища, через прямое подключение к источникам данных в информационных системах или создание витрин локально в тех системах, откуда мы берем данные. Пока у нас был небольшой масштаб использования данных и мы в основном были сосредоточены на аналитике, поступающей из одной системы, такой способ вполне подходил — ведь риск получить противоречивые данные об одном и том же процессе невысок.
Главное — требования к ресурсам минимальные (только развернуть BI-платформу в самом скромном варианте), а результаты можно сразу показывать и использовать. Все равно мы можем консолидировать данные из разных таблиц в системе, реализовать визуализацию данных и делать все необходимые расчеты, создавать фильтры «на лету», а также обеспечить постоянную актуальность и наполнение данных в отчетах.
Бизнес уже получает живую аналитику в реальном времени, только по достаточно ограниченному пространству данных. В принципе, любая современная BI-платформа поддерживает консолидацию множества различных источников, и мы можем подключать к отчетам данные из других источников и так же свободно ими оперировать. И вот тут мы очень быстро уткнулись в определенную сложность. Но об этом позднее. А пока про позитивное — мы начали очень быстро реализовывать базовую аналитику. Поскольку большинство ключевых данных для управленческой отчетности в нашем случае было сведено в нескольких источниках по более-менее одному правилу, было несложно все это обработать без дополнительных усилий и показать результаты заказчикам.
Эффект был достигнут — топ-менеджмент, а за ними и менеджеры среднего звена стали активно пользоваться аналитикой, наслаждаясь возможностью видеть все и сразу в одном месте, причем всегда имея на руках актуальные цифры. Этого достаточно, чтобы заинтересовать пользователей и разбудить у них фантазию. Дальше запросы началии усложняться, требования расти, и мы все чаще стали упираться в проблемы качества данных и их связей.
До определенного момента мы все же находили возможность обрабатывать проблемы «на лету» либо ссылались в аналитике на ограничения, связанные с качеством данных. Но уже было очевидно, что проблемы надо решать, а интерес, вызванный первыми результатами, привел к тому, что главные заказчики уже были не против развивать это направление и поддержать инвестиции в работу с данными, в том числе и создание аналитического хранилища.
Сам проект построения аналитического хранилища мы реализовывали в течение года. Причем первые результаты, которые сразу же позволили решить ряд задач для заказчиков, получили практически в первый же квартал нашей работы. Построив хранилище, мы не только стали постепенно переносить в него все источники, используемые для аналитики и отчетности, но и приступили к описанию структуры данных.
Конкретно в нашем случае большим плюсом аналитического хранилища стала возможность по мере его наполнения естественным образом заняться документированием данных — ведь в компании была большая историческая, не описанная в едином формате документация. Если просто поставить такую задачу перед сотрудниками, то, как правило, на нее никогда нет времени, она постоянно отодвигается более важными задачами. А так этот процесс пошел естественным образом, просто как часть обязательной работы. И нам не приходилось фантазировать, что надо разобрать и описать в первую очередь, а что может подождать. По мере разработки отчетности и аналитики мы переносили источники, на которых делали отчеты, в хранилище, описывали их и формировали на их основе витрины данных.
Так мы получили каталог наиболее востребованных для бизнеса данных. И вот тут нам удалось реализовать, наверное, самое главное преимущество аналитического хранилища. Имея в нем описанную структуру данных в виде готовых витрин, аналитики получили возможность работать с отчетами сразу, без долгой подготовки и разбора источников. Кроме того, для нас теперь не является проблемой подключение к работе новых сотрудников, которые еще плохо погружены в бизнес-процессы компании. Есть каталог — читай, бери, что тебе надо, и работай. Скорость разработки отчетов сократилась с нескольких недель до нескольких часов. С учетом получения задачи и согласования с заказчиком итогового результата на отчет обычно уходит один-два дня. Да, иногда появляются новые задачи и новые источники, с которыми надо поработать, но такое встречается все реже. И у нас больше не стоит вопрос нехватки аналитиков на BI. Коллектива в четыре человека вполне достаточно для обеспечения потребностей всей компании.
Что в итоге?
Мы привлекаем ресурсы по мере созревания процессов, для которых они нужны, более вдумчиво выбираем план развития и заранее готовимся к каждому следующему шагу, что позволяет нам совершать меньше ошибок. И наверное, самое главное, любое большое и новое преобразование требует времени, чтобы его приняли потребители, и наш подход предоставляет такое время, предлагая все новое небольшими порциями, постепенно, никого не шокируя и позволяя тратить минимум усилий на продвижение. Ведь сначала мы работаем только с самыми любопытными, а они уже по сарафанному радио разносят среди коллег все преимущества новый идей.
Благодаря постепенной реализации аналитики мы:
Показали неплохие результаты без серьезных инвестиций (пара аналитиков и минимальные вложения в софт)
Получили положительную обратную связь от заказчиков и продемонстрировали им новый подход к работе с данными, которые дал им недоступные ранее возможности для анализа и оптимизации своей работы, что повысило качество, скорость и эффективность принимаемых решений
Сделали очевидной для ключевых руководителей необходимость расширения возможностей аналитики в компании, и вопрос инвестиций в направление работы с данными уже не стоял.
Заранее начали собирать информацию о структуре данных и проблемах с ними, что помогло выработать предварительные требования и подготовиться к построению архитектуры аналитического хранилища.
Если перед вами стоит задача, как начать и «продать» BI-аналитику, то наш опыт поможет вам сделать это просто и без лишних усилий и затрат. Но всегда надо помнить, что рано или поздно вы дорастете до необходимости развивать свое аналитическое хранилище. И когда этот момент наступит, важно не откладывать принятие решения и необходимые затраты и работу, а начинать как можно быстрее. Чем дольше вы будете откладывать решение о внедрении хранилища, тем больше ресурсов у вас будут съедать усилия по сведению всего вместе без него, а качество аналитики начнет стремительно деградировать, сводя на нет все ваши результаты, достигнутые ранее.
Ну а в следующей, заключительной статье этого цикла мы подробнее раскроем тему работы с данными и как развитие BI-аналитики может нам в этом помочь.