Система корпоративной бизнес-аналитики

Заказчик
ГК ЛАМА
Руководитель проекта со стороны заказчика
ИТ-поставщик
ГК ЛАМА
Год завершения проекта
2018
Сроки выполнения проекта
Июль, 2017 — Июнь, 2018
Масштаб проекта
1500 человеко-часов
100 автоматизированных рабочих мест
Цели
1. Предоставление возможности анализа операционных данных компании.
2. Создание единого корпоративного хранилища данных, где информация из различных источников будет логически связана между собой.

Задачи:
   1. Реализация новой системы бизнес-аналитики взамен устаревшей, использовавшейся до этого.
   2. Обеспечение высокой скорости подготовки данных.
   3. Использование визуальных панелей.

Уникальность проекта

Была создана система способная обрабатывать большие объемы (одна из наших БД занимает более 5Тб) быстро, без ущерба для качества представленных в ней данных.

Так же важно то, что архитектура решения такая, что позволяет легко обогощать хранилище и OLAP-модель новыми типами информации.

Мы добились результата, когда мы можем предоставлять изменяющиеся данные в минимальной задержкой (10-15 минут), но не сделали этого, т.к. бизнесу это будет неудобно (специфика нашей розничной модели бизнес такова, что данные удобно получать утром и они не должны меняться до конца дня).

Кроме того следует отметить, что в данной системе активно используется факторный анализ, который позволяет не просто сообщить пользователю определенную информацию, а может объяснить - почему она именно такая (в случае отклонений) и, более того, предложить решения по исправлению ситуации.
Использованное ПО
Microsoft SQL Server Analysis Services - система бизнес-аналитики от Microsoft. Этот инструмент используется для подготовки кубов (OLAP-моделей).

Microsoft SQL Server Integration Services - пакет интеграционных сервисов, благодаря которым мы собираем данные из различных источников (базы данных, логи, xcl, excel и т.д.) и транслируем это в единое корпоративное хранилище данных (EDW).


Microsoft SQL Server Repoerion Services - решение, позволяющее формировать и наполнять отчетные формы данными из различных источников.

Microsoft SQL Server - система управления базами данных, в которой мы храним полученные нами данные.

Microsoft PowerBI - система визуального представления аналитических данных в удобном для пользователя виде, позволяющая проводить экспресс-анализ представленных данных.
Описание проекта
В ходе проекта требовалось создать систему бизнес-аналитики, которая бы удовлетворяла следующим критериям: * анализ на уровне знаний (система должна уметь преобразовывать исходные данные в информацию, а информацию - в знания, которые будут пригодны для непосредственного принятия управленческих решений). Более того, система должна предлагать решения менеджерам. * скорость (учитывая большой объем корпоративных данных, старая модель бизнес-аналитики изжила себя, т.к. не могла перерабатывать массивы данных, исчисляемые терабайтами). Требовалось реализовать систему, которая могла предоставить утром менеджеру всю полноту информации без задержек, причем скорость получения различных данных не должна затормаживать работу пользователей. * удобство работы (системы бизнес-аналитики развиваются, их возможности повышаются, в связи с этим требовалось представить информацию так, чтобы структура ее подачи была сразу интуитивно понятна и удобна для работы). * однозначность данных (данные в системе не должны по разному интерпретироваться различными подразделениями, все их должны видеть одинаково). Для обеспечения соответствия обозначенным критериям, реализация системы была выполнена следующим образом: * сначала был проведено анализ предметной области и предпроектное исследование. С каждым стейкхолдером было проведено интервьюирование по требуемому набору аналитической информации. Были изучены используемые другими компаниями модели (и инструменты) бизнес-аналитики. В результате было реализовано четкое видение требуемого конечного результата. * далее было спроектировано корпоративное хранилище. Архитектура была выполнена таким образом, чтобы хранилище могло содержать огромные массивы информации с требуемой степенью детализации, и обеспечивало высокую скорость доступа к данным. Так же оно было структурировано по аналитической модели (т.е. не всегда нормализованной), что обеспечиывает удоство потребления данных OLAP-моделью. Это был наиболее сложный этап проекта. При проектировании были использованы последние западные наработки (в частности Ральфа Кимбалла) по организации хранилища данных, которые позволили как сократить потенциальный размер хранилища, так и повысить скорость доступа к нему. * далее была реализована система наполнения хранилища. Были созданы интеграционные механизмы, поплняющие хранилище из совершенно различных источников данных: это как информационные системы (DAX, 1С), так и базы данных (SQL Server, PostgreSQL), файлы excel, логи приложений, web-сервисы наших и сторонних приложений и т.п. Здесь стоит отметить, что большое внимание уделялось скорости работы. В результате вся процедура по забору дневного набора данных занимает не более 2 часов. Это реализовано как за счет правильного использования инструментов, так и за счет использования определенных схем работы с данными (например, инкрементальная загрузка через механизмы СУБД). * далее на основе данных хранилища была реализована кубовая (OLAP) модель, которая содержала в себе все показатели, выявленные на первом этапе (предпроектного обследования). Благодаря правильной структуре данных скорость расчета модели и работы с ней оказались высокими. На этом этапе была реализована поддержка работы с аномалиями (т.е. схемы работы пользователей, когда мы вводим понятие нормальной работы системы, и пользователи работают только с теми данными, которые выбиваются из нормальной работы, т.е. с отклонениями (аномалиями). Это позволило повысить эффективность работы. * далее по выявленным на проедпроектном этапе потребностям были сформированы визуальные панели бизнес-анализа, которые представили пользовалям информацию в простом и, соответственно, понятном виде.
География проекта
Система используется внутри нашей компании, работающей в Томске и Северске. Пользуются системой около 100 человек ежедневно (половина использует статические отчеты, вторая половина - полнофункциональную аналитику). Система не имеет ограничений на географическое масштабирование
Коментарии: 10

Комментировать могут только авторизованные пользователи.
Предлагаем Вам в систему или зарегистрироваться.

  • Борис Фролов
    Рейтинг: 103
    Независимый эксперт
    11.12.2018 16:55

    Ринат,
    Очень интересный и сложный проект. Больше всего заинтересовала работа с большими объемами данных. Если не секрет, есть возможность хотя бы на верхнем уровне поделиться архитектурой обновления каждые 10-15 минут, при том, что одна из баз 5 Tb.
    Заранее спасибо.

    • Ринат Галимов Борис
      Рейтинг: 10
      ГК ЛАМА
      Начальник отдела разработки и внедрения программных средств
      12.12.2018 05:05

      Добрый день, Борис Александрович! Спасибо за вопрос!

      К тому, чтобы получить навыки для быстрой обработки данных за короткое время, наше аналитическое направление шло несколько лет. Но, в целом, можно выделить 2 основных фактора:
      1. Правильное построение архитектуры хранилища. Очень важная и, на мой взгляд, самая сложная задача. Здесь, революционной и прорывной, на наш взгляд, стала методика Ральфа Кимбалла (Ralph Kimball). Это такие вещи, как схема взаимосвязей таблиц данных, замена натуральных ключей суррогатными и прочее. Мы с ней познакомились относительно недавно, но благодаря ей мы смогли улучшить показатели работы с данными в разы.
      2. Использование механизма CDC в SQL Server, который позволяет быстро получить измененные данные и использовать исключительно инкрементную модель обновления, полностью оказываясь от полного обновления таблиц в хранилище данных.

  • Ринат Галимов
    Рейтинг: 10
    ГК ЛАМА
    Начальник отдела разработки и внедрения программных средств
    12.12.2018 04:50

    Добрый день, Борис Александрович! Спасибо за вопрос!

    Для того, чтобы получить навыки для быстрой обработки данных за короткое время наше аналитическое направление шло несколько лет. Но в целом можно выделить 2 основных фактора:
    1. Правильное построение архитектуры хранилища. Очень важная и, на мой взгляд, самая сложная задача. Здесь, революционной и прорывной, на наш взгляд, стала методика Ральфа Кимбалла (Ralph Kimball). Это такие вещи, как схема взаимосвязей таблиц данных, замена натуральных ключей суррогатными и прочее. Мы с ней познакомились относительно недавно, но благодаря ей мы смогли улучшить показатели работы с данными в разы.
    2. Использование механизма CDC в SQL Server, который позволяет быстро получить измененные данные и использовать исключительно инкрементную модель обновления, полностью оказываясь от полного обновления таблиц в хранилище данных.

  • Ринат Галимов
    Рейтинг: 10
    ГК ЛАМА
    Начальник отдела разработки и внедрения программных средств
    12.12.2018 04:51

    Добрый день, Борис Александрович! Спасибо за вопрос!

    К тому, чтобы получить навыки для быстрой обработки данных за короткое время, наше аналитическое направление шло несколько лет. Но, в целом, можно выделить 2 основных фактора:
    1. Правильное построение архитектуры хранилища. Очень важная и, на мой взгляд, самая сложная задача. Здесь, революционной и прорывной, на наш взгляд, стала методика Ральфа Кимбалла (Ralph Kimball). Это такие вещи, как схема взаимосвязей таблиц данных, замена натуральных ключей суррогатными и прочее. Мы с ней познакомились относительно недавно, но благодаря ей мы смогли улучшить показатели работы с данными в разы.
    2. Использование механизма CDC в SQL Server, который позволяет быстро получить измененные данные и использовать исключительно инкрементную модель обновления, полностью оказываясь от полного обновления таблиц в хранилище данных.

  • Александр Артюхов
    Рейтинг: 94
    АО "Организация "Агат"
    Начальник Службы эксплуатации ИТ
    14.12.2018 12:36

    Добрый день!
    Не совсем понятно, почему розничный бизнес не интересуют самые свежие данные. Но у каждого - свои тараканы, как говорится...
    Рассматривалось ли среди возможных альтернатив архитектурное решение, когда данные текущего отчётного периода обрабатываются и представляются по технологии in-memory, которая имеется в выбранной платформе. И лишь потом загружаются в хранилище, которое используется только для анализа ограниченного круга исторических сведений? Таким образом, бизнес-критичность и архитектура собственно хранилища отошли бы на второй план, а проект можно было бы ускорить, по крайней мере, вдвое...

    • Ринат Галимов Александр
      Рейтинг: 10
      ГК ЛАМА
      Начальник отдела разработки и внедрения программных средств
      14.12.2018 14:04

      Александр, добрый день!
      Про оперативность данных (самые свежие данные) было много разговоров и на первый взгляд всегда было мнение, что чем свежее данные, тем лучше. Но, в процессе анализа, когда мы информацию раскладывали "по полочкам", оказалось, что никакой эффективности это не дает, скорее наоборот. Мы пришли к этому не сразу.
      Про in-memory, т.е. табулярную модель данных. Мы ее, конечно же используем. Но обязательно в паре с данными аналитической модели. Табулярная (in-memory) модель работает быстро и очень хороша для детальной аналитики, поиска факторов, причин отклонений в динамике и т.п. Но агрегаты (т.е. заранее просчитанные значения по определенным атрибутам (измерениям)) работают намного быстрее, чем когда данные вычисляются в процессе анализа, пусть даже и полностью через оперативную память. Т.е. использование агрегатов намного эффективнее в устоявшихся схемах анализа, нежели использование для расчета в режиме реального времени оперативной памяти.
      Так же хотел бы отметить, что in-memory сейчас получили хорошее распространение (типичный пример - Qlik) благодаря относительной простоте внедрение и скорости получения данных. Но при работе с относительно с небольшими источниками данных. Чем выше объем данных, тем меньше эффективность в использовании чисто табулярных моделей. Так же хотел бы отметить, что качество аналитики зависит от качества формирования хранилища данных, хотя этот этап зачастую незаслуженно опускают.

  • Александр Балабанов
    Рейтинг: 310
    Независимый эксперт в области ИТ-менеджмента и Цифровой трансформации
    CIO
    24.12.2018 12:47

    Ринат приветствую! Несколько вопросов. Сколько ETL-механизмов / пакетов создано? Как отслеживается их выполнение и качество сборки данных? В какой ИС ведется НСИ и как НСИ интегрируется в DWH? Какова Команда, отвечающая за развития и сопровождение данного решения? Реализовали ли вы автоматическую отправку статических отчетов по E-Mail? Настроено ли оповещение пользователей об обновлении данных?

    • Ринат Галимов Александр
      Рейтинг: 10
      ГК ЛАМА
      Начальник отдела разработки и внедрения программных средств
      24.12.2018 13:14

      Добрый день, Александр!
      Отвечаю на вопросы по порядку.
      1. Работает около 50-ти пакетов. Контроль большинства пока выполняется простым визуальным просмотром на отсутствие ошибок, а наиболее критичных - через СМС/Email. Полнота/целостность данных обеспечивается использованием паттернов.
      2. НСИ ведется в различных системах, среди которых основная - DAX 2012. В DWH данные интегрируются данные через SSIS-пакеты, которые обращаются напрямую к базе данных источника. Для оптимизации активно используется механизм CDC SQL Server'а.
      3. Команда состоит из 3-х человек, которая специализируется только на задачах аналитики. Эти специалисты занимаются вопросами формализации задач, проработки архитектуры решений, реализацией и разбором инцидентов.
      4. Да, конечно, автоматическую рассылку статических отчетов делаем, в определенных случаях это очень эффективно (и, конечно, удобно).
      5. Да, ежедневно утром определенным лицам приходит почтовое оповещение о готовности данных к использованию.

  • Роман Кузнецов
    Рейтинг: 380
    Холдинг PVG
    CIO
    21.12.2018 12:34

    Добрый день!
    По оперативности понятно. Для исключения влияния внутридневной динамики в рознице удобно рассматривать минимальный период день.
    У меня вопрос по функционалу системы. Общие направления понятны и видны из описания, но интересно какие основные задачи ставит бизнес. Опишите востребованные бизнесом аналитические кейсы.

    • Ринат Галимов Роман
      Рейтинг: 10
      ГК ЛАМА
      Начальник отдела разработки и внедрения программных средств
      21.12.2018 13:14


      Добрый день, Роман Олегович!

      Что касается того, что бизнес хочет получить от системы: мы сталкиваемся с тем, что по мере повышения уровня бизнеса в знании возможностей аналитики и углублению благодаря этому представлений о вариантах получения информации, происходит эволюция требований бизнеса к системе.
      Начинали мы в свое время со статических отчетов и несложных сводных представлений. Затем пришла пора аналитиков, которые, используя знания о бизнесе, проводят глубокую аналитику данных, вычисляя закономерности. Затем, когда пришло понимание основных закономерностей и аномалий, пришла пора динамических отчетов, показатели которых учитывали эти закономерности/проблемы и формировали соответствующие точки контроля. А теперь мы пришли к тому, что перед системой ставится задача самостоятельного автоматического выявления отклонений от нормального поведения и предложение решений на основе машинного обучения.
      Таким образом, идет видоизменение требований бизнеса к системе от просто отчетной системе к системе принятия решений.
      Если говорить более конкретно, то на текущий момент каждый департамент имеет кастомизированное динамическое представление (на основе PowerBI), в котором отражены все его основные показатели. В этом представлении имеется возможность проводить довольно глубоку аналитику в несколько щелчков мыши и выявлять факторы влияния. Далее, бизнес использует аналитику для факторного анализа (например, поставок или, скажем, потерь). Суть в том, что система определенный процесс раскладывает на факторы, которые влияют на конечный результат и показывает, какие факторы влияют больше и почему (это делается в разрезе различных параметров, об этом можно говорить очень долго). Сейчас, в силу специфики нашего бизнеса, система так же помогает в решении таких задач, как формирование ассортиментных матриц торговых точек, графика работы касс.
      В недалеких планах такие задачи, как: прогнозирование в потребности персонала в разрезе объектов/дней, система принятия решений по кандидатам при трудоустройстве (определение шанса, что кандидат подойдет и успешной пройдет испытательный срок исходя из первичной о нем информации). Последняя задача может показаться довольно спорной, но мы на практике видим, что бизнес-аналитика несет в себе очень большую перспективу как для нашего бизнеса, так и в целом в мире. Поэтому сейчас задумываемсяя о возможности делиться нашими знаниями с партнерами, предлагая соответствующие услуги.

Предметная область
Отрасль
Управление