Организация аналитического хранилища данных для Fix Price
- Заказчик:
- Fix Price
- Руководитель проекта со стороны заказчика
- Поставщик
- Yandex Cloud и Neoflex
- Год завершения проекта
- 2023
- Сроки выполнения проекта
- Октябрь, 2022 - Декабрь, 2022
- Масштаб проекта
- 20 автоматизированных рабочих мест
- Цели
· Ускорить анализ данных о продажах и товарах
· Оптимизировать процесс обработки данных
· Повысить эффективность чековой аналитики
- Результаты
- Fix Price ежедневно загружает в СУБД ClickHouse порядка 10 ГБ данных. При этом время загрузки данных в витрины сократилось в 10 раз, а время построения аналитических отчётов теперь не превышает двух секунд. Сейчас для компании прозрачны траты на загрузку и хранение данных, а также на использование тестовых сред. В ближайшее время компания планирует перевести работу хранилища и всего ETL (трёхэтапный процесс управления данными, в дословном переводе — «извлечение, преобразование, загрузка») на сторону облака. Это позволит существенно экономить бюджет и увеличить эффективность по сравнению с физическими серверами.
Уникальность проекта
Для поддержки растущего бизнеса сети Fix Price требовалась аналитическая система, которая будет обрабатывать первичные xml‑файлы и синхронизировать данные в СУБД максимум за полчаса. Проект удалось реализовать полностью на cloud‑native‑технологиях, без использования IaaS облака — например, виртуальных машин. Fix Price ежедневно загружает в СУБД порядка 10 ГБ данных. Время загрузки данных в витрины сократилось в 10 раз, а время построения аналитических отчётов теперь не превышает двух секунд. Сейчас для компании прозрачны траты на загрузку и хранение данных, а также на использование тестовых сред.- Использованное ПО
· Yandex Managed Service for ClickHouse
· Yandex Object Storage
· Yandex Cloud Functions
· Yandex Managed Service for YDB
· Yandex Message Queue
· Yandex Cloud Logging
· Yandex Cloud Monitoring
- Сложность реализации
- На этапе анализа Fix Price и Neoflex столкнулись с особенностью ClickHouse: СУБД не позволяет делать несколько запросов array join или inner join и потребляет много оперативной памяти при выполнении запросов с подзапросами. Чтобы решить эту проблему, команда проекта изменила структуру данных.
- Описание проекта
- Для поддержки растущего бизнеса сети Fix Price требовалась аналитическая система, которая будет обрабатывать первичные xml‑файлы и синхронизировать данные в СУБД максимум за полчаса. В качестве СУБД компания выбрала ClickHouse. Это колоночная база, особенно эффективная, когда компании нужно обрабатывать большие объёмы данных и экономить место за счёт сильного сжатия. ClickHouse позволяет быстро загружать данные и легко генерировать аналитические отчёты. Компания Neoflex отвечала за проектирование и последующую реализацию архитектуры целевого решения. Чтобы иметь возможность масштабировать нагрузку на нескольких проектах Fix Price, Neoflex предложила использовать управляемые сервисы Yandex Cloud — своего давнего облачного партнёра. Сотрудничество с российским облачным провайдером было подходящим вариантом для Fix Price с точки зрения соблюдения требований законодательства по хранению персональных данных. Для реализации проекта Neoflex и Fix Price выбрали Yandex Managed Service for ClickHouse. Преимущества колоночных СУБД дополнялись тем, что в случае использования управляемого сервиса не нужно покупать и настраивать железо, прилагать усилия и тратить время сотрудников на обслуживание базы данных и обеспечение масштабируемости и отказоустойчивости решения. Кроме того, Yandex Cloud гарантирует безопасность данных в соответствии с 152‑ФЗ, GDPR, стандартами ISO и PCI DSS. В ходе проекта требовалось создать витрины и реализовать механизмы загрузки данных в СУБД ClickHouse. Проект начался с проектирования решения — оно включало подготовку верхнеуровневой архитектуры и концепции. На этапе аналитики и разработки команда подготовила требования к целевой системе с перечислением структуры и потоков данных и с запросами для различных типов трансформаций. Далее последовали этап разработки кода проекта на языке Python в Yandex Cloud Functions и создание схемы СУБД ClickHouse, тестирование и опытно‑промышленная эксплуатация. Реализация всех этапов заняла два месяца. На текущий момент решение запущено в промышленную эксплуатацию. Облачные мощности используются для создания и хранения онлайн‑витрины данных в СУБД ClickHouse.
- География проекта
РФ, Казахстан, Беларусь и Узбекистан