DWH как единый источник правды: консолидируем данные разных отделов
В этой статье расскажем, как мы создали единое хранилище данных и помогли клиенту устранить расхождения в отчетности
Задача:
Добиться согласованности данных во всех подразделениях компании, чтобы итоговые расчеты были идентичны
Причина:
Отчеты и метрики разных отделов не совпадали, поэтому топ-менеджеры не могли объективно принимать какие-либо стратегические решения
Для стабильного развития компании важно, чтобы данные в отчетности были согласованными. Если одни и те же показатели в разных подразделениях отличаются, принимать управленческие решения на их основе невозможно.
Такие расхождения могут привести к ошибкам в планировании, финансовым потерям и снижению доверия клиентов.
Эта статья — о том, какие риски возникают из-за разрозненных данных и как единое хранилище данных (Data Warehouse, DWH) помогает создать единый и достоверный источник информации для бизнеса. Информация будет полезна руководителям, аналитикам и всем, кто сталкивался с проблемой, когда цифры в отчетах «не бьются».
Задача
К нам в SimbirSoft обратилась крупная финансовая организация. Несколько подразделений, оперируя данными за один и тот же период, приходили к разному итогу. Это сильно осложняло принятие решений и разработку стратегии развития. Основная причина — отсутствие единого хранилища данных. Информация находилась в разных базах, а обмен между системами не был согласован.
Требовалось обеспечить финансовую организацию единым источником достоверных данных для принятия управленческих решений.
Решение
Мы предложили спроектировать единое хранилище данных — DWH. Этот подход позволяет синхронизировать всю имеющуюся информацию в контуре компании и избавиться от разногласий в данных. С внедрением единого центра правды у каждого сотрудника будет доступ к одним и тем же цифрам, независимо от того, руководитель это, бухгалтер или аналитик.
Шаг 1: аудит имеющихся систем
Перед созданием хранилища данных мы провели инвентаризацию источников: составили список всех используемых систем, изучили их структуру, схемы данных и объем информации.
Это помогло заранее выявить проблемы с качеством, полнотой и согласованностью данных.
Шаг 2: проектирование системы
Следующий этап — создание самого хранилища. Мы выбрали Data Vault 2.0 — оптимальный подход с учетом потребностей заказчика. Данная методология позволяет легко добавлять новые источники данных и вносить изменения в модель, имеет потенциал масштабирования, а также поддержку облачных решений.
На этом шаге также выполнили:
- развернули выбранный набор технологий: в качестве системы управления базами данных использовали Greenplum, для преобразования данных — dbt-фреймворк, управление потоками обработки выполнялось через Apache Airflow, а отслеживание изменений и передачу данных настроили с помощью Debezium и Kafka.
- спроектировали архитектурную модель для каждого слоя будущего хранилища — слоя сырых данных, детального слоя и слоя витрин;
- разграничили уровни доступа к данным для обеспечения требований информационной безопасности.
Шаг 3: настройка ETL-процессов и качества данных
Данный шаг был самым объемным и сложным в рамках проекта. На этом этапе были настроены ETL-процессы по захвату, загрузке и преобразованию данных. Основные сложности были связаны с поддержанием историчности — для клиента было критически важно отслеживать полную историю изменения данных. Эта задача была решена путем внедрения обработки медленно меняющихся измерений (SCD2).
Также нам удалось провести очистку данных от дублей, разного рода аномалий и встроить проверки на качество данных. Для этого проводилась валидация поступаемых файлов и проверка на соответствие бизнес-правилам. Для каждой бизнес-сущности были определены свои мастер-данные, имеющие наибольший уровень доверия. Также назначили ответственных за данные: они участвовали в тестировании и консультировали команду по бизнес-процессам. Таким образом удалось обеспечить высокий уровень качества данных. Все это позволило привести данные из разных источников к единому виду и устранить расхождения в отчетности.
Для заказчика это было ключевым результатом: независимо от исходной системы сотрудники должны были получать одинаковые показатели при работе с одними и теми же данными. Этой цели удалось достичь.
Помимо этого была проделана работа над единой стандартизацией методологии расчетов. Раньше для подсчета одной и той же метрики каждое подразделение использовало свои собственные формулы, это также сказывалось на том, что цифры между отделами не сходились. Наша команда не только проработала документацию и вывела наиболее корректные методологии под каждое расчетное поле, но и заложила базовые принципы управления данными (Data Governance). Мы ввели единые прозрачные правила работы с информацией и определили экспертов со стороны бизнеса, которые отвечают за правильность и актуальность формул. В дальнейшем этот фундамент позволит превратить текущую документацию в полноценный корпоративный бизнес-глоссарий.
Шаг 4: тестирование
И здесь мы плавно переходим к следующему шагу — тестирование загруженных данных. На самом деле этот этап идет параллельно предыдущему. Во время загрузки каждого процесса в него уже встраиваются различные тесты: проверка формата поступаемых файлов, проверка на пустые значения и на соответствие заявленному типу данных, валидация отдельных атрибутов по бизнес-правилам.
Результаты, полученные на данном этапе, являлись одним из ключевых показателей успешности проделанной работы. Достаточно даже небольшого расхождения отчетов между собой, между данными из систем-источников, чтобы подорвать доверие ко всей выстроенной системе. Поэтому тестированию данных было уделено особое внимание.
Помимо тестирования качества данных, была проведена огромная работа в части функционального, интеграционного, регрессионного и нагрузочного тестирования. Благодаря этим тестам мы можем понимать, насколько готовое решение соответствует заявленным критериям заказчика и насколько бесперебойно оно работает.
Последний этап — приемо-сдаточные испытания (ПСИ) вместе с представителем заказчика. Для сверки было взято 20 случайно выбранных витрин и 10 случайно взятых отчетов. В ходе ПСИ выделенные эксперты заказчика детально сравнивали объем, количество атрибутов и расчетные значения из нового хранилища и данные за тот же период из старых систем.
Результаты
В итоге мы получили хранилище, которое работает стабильно, данные в нем согласованы, а структура прозрачна. Система готова к масштабированию и изменениям, поэтому добавить новые источники или расширить состав витрин можно без переделки уже существующих механизмов.
Что получил заказчик:
- полностью устранена проблема разрозненности данных;
- увеличилось доверие к отчетам и показателям;
- процесс работы с данным стал проще и быстрее;
- появилась возможность принимать решения, основанные на данных.
Проект мы завершили, но возможности для развития остаются. Один из вариантов — развитие Data Governance (управление данными) с применением каталога данных. Еще один вариант дальнейшего развития — подключение BI-системы (инструмента для визуализации данных). Для руководства это особенно важно: интерактивные панели управления с наглядной визуализацией дают возможность быстро оценивать ситуацию и принимать решения без погружения в детали.
Внедрение DWH как единого источника правды применимо практически к любой компании. Организация, работающая с объемами данных, превышающими возможности Excel, рано или поздно столкнется с этой задачей. Но при этом вариантов реализации есть очень много: классические подходы, гибридные архитектуры — выбор зависит от конкретных бизнес-задач и масштабов. Поэтому решение получается универсальным.
- Устранена разрозненность данных.
- Повысилось доверие к отчетам и показателям.
- Работа с данными стала проще и быстрее.
- Компания получила возможность принимать решения на основе достоверных данных.
Рубрики
Рекомендации партнеров:
Новости отрасли:
Все новости:
Публикация компании
Достижения
Профиль
Рубрики