Внедрение корпоративного Озера данных
- Заказчик:
- Магнит
- Руководитель проекта со стороны заказчика
- Поставщик
- Glowbyte, Data Sapience
- Год завершения проекта
- 2024
- Сроки выполнения проекта
- август, 2023 — октябрь, 2024
- Масштаб проекта
- 34000 человеко-часов
- Цели
Импортозамещение и демократизация данных в компании путём предоставления доступа к сырым данным, подготовка почвы к миграции текущей платформы данных:
-
Повысить доступность данных в компании
-
Сократить time2market предоставления данных для задач аналитики и прототипирования
-
Предоставить потребителям описание сырых данных, ускорить поиск нужных данных в платформе
-
Организовать прозрачный и контролируемый процесс использования данных для поставщиков данных
-
Сократить стоимость хранения данных в платформе
-
Сократить количество сетевых связей в контуре компании и, как следствие, затраты на интеграции и поддержку
-
Обеспечить доступность необходимых данных для миграции текущей платформы данных
Развернутый перечень основных задач большого проекта, которые мы поставили перед собой (от внедрения инструментов до подключения ИС и подготовки пользовательских инструкций), а также дополнительных задач, возникших в ходе проекта, попробуем предоставить в комментариях.
-
- Результаты
Совместно с интегратором Glowbyte и поставленными им продуктами от вендора Data Sapience все обозначенные задачи MVP были выполнены в полном объеме, а также выполнен ряд новых задач, которые возникли в процессе работ и были включены в MVP.
Получены следующие количественные результаты:
-
Выявили потребность в подключении к Озеру для ~200 ИС
-
Подключили к Озеру 20 ИС
-
Загрузили в Озеро и регулярно обновляем более 200 объектов данных
-
Загрузили более 200 ТБ данных и в части загруженных объектов уже сейчас ежемесячно прирастаем на 10%
-
Кратно сократили time2market предоставления доступа к данным: например, загрузили в Озеро и поставили на регламентное обновление 10 объектов данных из 3ёх ИС, а затем предоставили доступ к этим данным в Озере за 3 дня (витрину на тех же данных в старой платформе пришлось бы ждать в среднем 50 дней)
-
Можем развернуть изолированный контур со всеми инструментами платформы за 1 день
-
Уникальность проекта
Проект, реализованный в облаке на open-source технологиях, предоставляет компании ранее отсутствующую функциональность и открывает ряд новых возможностей:
-
Функциональность:
-
предоставление доступа к сырым (но детально описанным) данным из различных информационных систем (ИС) для задач аналитики в одном месте
-
хранение исторических данных ИС
-
сохранение истории изменений данных ИС
-
-
Возможность:
-
Демократизация данных
-
Сначала аналитика/прототипирование, потом отчетность
-
Импортозамещение текущего Хранилища данных
-
Оптимизация числа интеграций в контуре компании
-
Возможность восстановить состояние ИС на любой момент времени после интеграции с Озером (доп уровень резервирования данных)
-
Оптимизация затрат на инфраструктуру с использованием облачной модели pay-as-you-go (можно «охладить» данные ИС в Озере)
-
Возможность быстрого масштабирования инфраструктуры
-
-
Стратегическое значение:
-
Фундамент для миграции текущего КХД
-
Поддержка Data-Driven подхода к принятию решений за счёт демократизации доступа к данным
-
- Проект решает задачи импортозамещения
- Да
- Использованное ПО
-
Data Ocean Nova – lakehouse-платформа данных нового поколения. Совмещает подход Data Warehouse и возможности масштабирования Data Lake. Позволяет создавать инсталляции в публичном и частном облаке, on-premise, а также при гибридном подходе и масштабировать оперативный слой данных в режиме реального времени. Обеспечивает принцип доменного разделения Data Mesh в едином инфраструктурном подходе
-
Data Ocean Flex Loader – инструмент для быстрого наполнения хранилища или озера данных на базе GreenPlum, Hadoop или S3. Позволяет настраивать достоверную загрузку из систем-источников данных без изменений в кратчайшие сроки
-
Data Ocean Cluster Manager – программное обеспечение для администрирования кластеров и анализа запросов. Обеспечивает непрерывное отслеживание состояния инфраструктуры и оперативную реакцию на возможные инциденты
-
Streaming Data Integration (SDI) - инструмент для высокопроизводительной интеграции данных
-
- Сложность реализации
В ходе обследования текущих интеграций и всего ландшафта ИТ систем компании мы увидели широкое разнообразие используемых технологий и способов интеграций, которые необходимо было унифицировать для новой платформы.
В ходе проекта неоднократно отклонялись от первоначальных границ проекта:
-
потребность в расширении перечня способов интеграции для импорта данных в Озеро (например, ИС на базе 1С вместо СУБД и файловых шар интегрируются через Kafka REST Proxy)
-
потребность в расширении перечня способов получения данных из Озера (например, для выгрузки большого объема данных во внешнюю ИС)
-
потребность в доработке инструментов, которые заточены на загрузку «чистых» данных
Так как концептуальные изменения платформы данных повлияли на её поставщиков и потребителей возник ряд организационных сложностей:
-
изменить текущие стандарты интеграции и «продать» Озеро данных внутри компании
-
описать и отстоять сценарии использования Озера в контуре компании и не стать корпоративной шиной данных
-
- Описание проекта
В компании около 10 000 пользователей данных, которые используют многоуровневую платформу, содержащую >1 Пб данных. Примерно 2500 пользователей обращаются напрямую к центральному элементу платформы, корпоративному хранилищу данных, которое развивается уже 13 лет и содержит более 500 Тб данных.
За это время в система стала сверхсложной: в неё интегрировано большое количество систем источников данных, а пользователи обращаются к 5000 витринам данных. Витрины содержат большое количество legacy-кода, далеко не все из них описаны, некоторые витрины дублируют друг друга. Помимо всего прочего реализация новой витрины – это длительный процесс, t2m очень большой. В связи с этим в том числе в платформе появилось большое количество пользовательских «песочниц», их более 80.
В середине 2023 года было принято решение о необходимости импортозамещения и рефакторинга функциональности текущей платформы данных, а также концепции по предоставлению доступа к данным в ней. Большой time2market предоставления данных для аналитики и невозможность работы с сырыми данными разных информационных систем укрепили уверенность в том, что в новой платформе должно появиться Озеро сырых данных. С учётом общего вектора компании на облачные сервисы и оценки преимуществ, которые они предлагают в контексте хранения больших объемов данных (стоимость, модель pay-as-you-go), было принято решение о реализации проекта в облаке.
В процессе изучения разных паттернов для реализации платформы данных в общем и Озера данных в частности (Data Lake vs DWH vs Data Lakehouse) мы поняли, что в чистом виде ни одна из них не отражает наше видение новой архитектуры. Остановились на гибридном подходе, который содержит в себе постулаты из каждого. Фундаментом новой платформы выступает Озеро данных, в котором:
-
реализована версионность в SCD4
-
все данные в формате источника без трансформаций
-
все загружаемые данные описаны
В рамках обследования при подготовке к проекту проанализировали интеграции с текущей платформой данных и определили MVP технологий (Batch, CDC, Kafka), которые необходимо использовать для подключения информационных систем, нужных для её миграции (таких более 60). Информационных систем с ценными сырыми данными в компании гораздо больше (~200), но в такой задаче нужно от чего-то отталкиваться.
Обозначили границы MVP проекта:
-
проработать архитектуру Озера данных в Яндекс.Облаке
-
внедрить инструменты для подключения ИС и доставки данных до Озера
-
разработать инструменты для формирования истории изменения состояния источника по доставленным до Озера данных
-
подключить не менее одной ИС каждого типа и протестировать все заявленные технологии
-
предоставить ИС компании доступ к данным Озера для настройки экспортных потоков
-
- География проекта
Все бизнес-подразделения федеральной розничной сети Магнит.