Клиенту требовалось обеспечить стабильный и экономически эффективный сбор и анализ данных с маркетплейсов Wildberries и Ozon. Существующее решение имело проблемы с производительностью, избыточной нагрузкой на инфраструктуру и высокими затратами на хранение и обработку данных в Google BigQuery.
Дополнительно стояла задача создать собственный веб-сервис для работы с аналитикой, полностью контролируемый клиентом, с удобным интерфейсом, API и возможностью дальнейшего масштабирования.
Я проанализировал существующие процессы сбора данных и оптимизировал скрипты парсинга маркетплейсов Wildberries и Ozon, сократив время обработки и снизив нагрузку на инфраструктуру. Для повышения устойчивости системы были переработаны механизмы фоновой обработки и обновления данных.
Было принято решение отказаться от Google BigQuery и перенести хранение и обработку данных на собственный сервер. Я спроектировал и реализовал новую базу данных в PostgreSQL, оптимизировал структуру таблиц и SQL-запросы под аналитические сценарии использования.
На базе Django был разработан полноценный веб-сервис с пользовательским интерфейсом и API для работы с аналитическими данными. Для обработки фоновых задач и периодического обновления информации использовались Celery и Redis.
Я также настроил серверную инфраструктуру на Ubuntu: контейнеризация с помощью Docker, деплой сервисов, организация очередей задач и автоматизация обновления данных. Это обеспечило воспроизводимость окружения и упростило сопровождение проекта.
В результате клиент получил полностью автономный аналитический сервис, не зависящий от облачных платформ с высокой стоимостью эксплуатации. Производительность сбора данных была повышена, а нагрузка на систему — оптимизирована.
Перенос с BigQuery на собственную инфраструктуру позволил существенно сократить расходы на хранение и обработку данных, при этом сохранив гибкость и масштабируемость решения. Система успешно использовалась в продакшене и стала основой для дальнейшего развития аналитического направления клиента.