О чём история

Сеть гипермаркетов мебели и товаров для дома Hoff с помощью eCommerce‑агентства AERO провела рефакторинг хранилища 93 ТБ данных и его перенос на платформу Yandex Cloud. В течение года компании провели анализ старой архитектуры, создали новую с использованием open‑source‑решений ClickHouse и Greenplum® и перенесли только необходимые данные.

Команда проекта создала отказоустойчивую масштабируемую инфраструктуру на базе управляемых сервисов Yandex Cloud. Также удалось убрать устаревшую информацию, оптимизировать финансовые затраты, сократить время создания аналитических отчётов до 20 минут и в 3 раза увеличить скорость реагирования на ошибки.

Задача компании

Hoff — это сеть гипермаркетов мебели и товаров для дома, которая насчитывает 61 магазин по всей России. В компании работает более 6 400 сотрудников. Сайт hoff.ru и мобильное приложение компании посещают 113 миллионов пользователей, а гипермаркеты сети — более 17 миллионов человек. Для проведения продуктового и маркетингового анализа Hoff аккумулирует в облачном Data Warehouse много информации: звонки, визиты, обращения, оплаты, действия клиентов на сайте. За 5 лет в хранилище накопилось 93 ТБ данных, которые поступали более чем из 10 различных источников. Существующее хранилище позволяло решать текущие задачи компании, но у него было несколько проблем. Данные иногда противоречили друг другу, а структура хранилища была запутанной.

Hoff хотели улучшить веб‑аналитику и для этого обратились в eCommerce‑агентство AERO. В процессе обсуждения проекта стало ясно, что задачи Hoff значительно шире. Так целями проекта стали рефакторинг хранилища и его перенос на новую масштабируемую архитектуру, а также выстраивание алертинга.

Изначально DWH Hoff было развёрнуто на облачной платформе, которая предусматривала плату за каждое обращение к данным, что существенно ограничивало возможности компании. AERO предложили использовать опенсорс‑решения, лишённые этого недостатка. Компании планировали локализовать хранилище данных, поэтому подыскивали облачного провайдера в России. Самым подходящим вариантом стала платформа Yandex Cloud. Основное преимущество платформы для Hoff — наличие управляемых сервисов для опенсорс-продуктов, таких как ClickHouse и Greenplum®.

Проект по оптимизации облачного хранилища превратился в создание гибкой, надёжной и масштабируемой системы хранения части данных в компании. Совместными усилиями запрос на локализацию стал для нас историей успеха и рывком вперёд. Появились новые возможности: собирать больше данных и наращивать эффективность digital‑маркетинга.

Кирилл Фридлянд,
Chief Data Officer в Hoff Tech

Создание послойной инфраструктуры хранилища

AERO и Hoff начали с анализа старой архитектуры. Это был сложный этап работы. Данные из более чем 10 источников использовались для 155 различных дашбордов и 42 отчётов, содержащих 1938 расчётных полей. Команда провела реверс‑инжиниринг: начиная с дашбордов отслеживали путь данных к источникам, выявляя последовательности и правила преобразования.

В начале проекта общая схема потоков данных выглядела так:

После обработки полученного графа, последовательной отработки скриптов и разбивки данных по источникам удалось получить упорядоченный граф:

В результате команда проекта определила, что почти треть накопленной за 5 лет информации устарела или не используется. Кроме того, выяснилось, что еженедельно из Power BI запрашивается 29 ТБ данных. При схеме платы за каждый запрос затраты составляли порядка 3 тысяч долларов в месяц.

После аудита компании занялись переносом данных. Прежде всего AERO и Hoff определили, какие данные можно не забирать из старого хранилища, и совместно со специалистами Yandex Cloud приступили к проектированию новой облачной архитектуры. В качестве хранилища выбрали Yandex Object Storage, создав скрипты для различных вариантов выгрузки данных. Затем подняли 3 виртуальные машины для синхронизации хранилища. Чтобы сфокусироваться на проекте, а не на отказоустойчивости и обслуживании инфраструктуры, было решено использовать управляемые сервисы баз данных ClickHouse и Greenplum®. Плюсом использования опенсорс‑продуктов является возможность переноса DWH на любую инфраструктуру без необходимости полной пересборки.

Команда проекта создала послойную инфраструктуру. В старом хранилище аналитики Hoff могли работать только с сырыми данными. В новом хранилище эти данные перенесли в ClickHouse, который хорошо подходит для их хранения, все новые сырые данные также поступают в эту базу. Ядром DWH стала база Greenplum®, которая позволяет быстро изменять, фильтровать и связывать данные. С помощью пайплайнов в Airflow команда настроила автоматическое обновление данных по расписанию.

Затем компании приступили к созданию витрин данных, на основе которых строится визуализация. Для визуализации выбрали сервис Yandex DataLens. Сейчас сформированы все основные витрины данных, и команда продолжает работу над новыми. Одна витрина данных может быть источником для множества дашбордов. Раньше каждый отдел компании обрабатывал сырые данные из хранилища на основании собственной экспертизы и формировал из данных отчёт. Этого было достаточно для текущих задач компании, но предварительная обработка информации помогла ускорить формирование отчётов. В новом хранилище для аналитики используются предобработанные по единому стандарту данные из Data Vault Greenplum®.

Кроме того, AERO создали с нуля систему алертинга специально для этого проекта. Трёхцветная система маркировки позволяет сотрудникам Hoff легко оценить актуальность отчётов, а на всех этапах, от загрузки сырых данных до дашбордов, работает система оповещений при обнаружении ошибки.

Оптимизация данных и затрат

AERO и Hoff полностью пересобрали хранилище данных за 1 год. Объём данных сократили с 93 ТБ до 51 ТБ, убрав устаревшую и неиспользуемую информацию. Ежедневно в новое хранилище поступает 15 ГБ сырых данных, из которых в Data Vault Greenplum® попадает 3 ГБ единообразно обработанной информации. Аналитики Hoff обращаются к уже предварительно подготовленной информации, что сократило время на подготовку отчётов. Создание аналитического отчёта в различных компаниях занимает несколько дней, а в Hoff этот процесс сократился до 20 минут.

Созданная многоуровневая архитектура и использование управляемых облачных сервисов позволяют легко масштабировать проект. При регулярно растущем объёме данных DWH можно трансформировать в Data Lake без потери качества структуры. Сырые данные, в том числе и из новых источников, обрабатываются единообразно и поступают в Data Vault уже в стандартном виде. Разработанная система алертинга позволяет оперативно оповещать аналитиков — скорость реагирования на ошибки увеличилась в 3 раза.

Удалось локализовать хранилище, выбрав отказоустойчивую инфраструктуру Yandex Cloud, отвечающую высшим стандартам безопасности. Кроме того, Hoff оптимизировал затраты на DWH: теперь не нужно платить за каждое обращение к данным. Бюджет при переходе в новое облако не изменился, а количество задач и объём разметки для продуктовой аналитики регулярно растёт.

Мнение

Константин Пешехонов,
Генеральный директор в Hoff Tech
Константин Пешехонов,
Генеральный директор в Hoff Tech

Объем рынка онлайн-торговли в России ежегодно растёт. Появляются новые игроки, увеличивается конкуренция и в борьбе за внимание потребителя выигрывает тот, кто умеет работать с данными, развивает продуктовую аналитику и маркетинг. Это позволяет предлагать наиболее релевантные товары, предугадывать интересы и тренды, эффективнее распоряжаться бюджетом.