Выгрузки данных по API

ETL-процесс на Clickhouse по сбору статистики из API

SSH доступ
Развернутые ClickHouse и Airflow
Коннекторы к внешнему XML API
Технический стек
ClickHouse (хранилище данных)

Python для ETL-процессов

Airflow для оркестрации

FastAPI для REST API
База данных - создание 30+ таблиц с оптимизацией под сбор ежедневной аналитики

ETL-процессы - загрузка данных из внешнего XML API (15+ endpoints)

Backend API - 15+ REST endpoints для мобильного приложения

Ключевые требования:
Время ответа API < 100мс для простых запросов

Live-обновления с задержкой < 30 секунд
Обработка до 30 запросов/сек к внешнему API

Retry-логика и fallback при недоступности источника
Мониторинг и алерты
Покрытие тестами > 80%

Нам пишут клиенты:

Хотим Оптимизировать систему аналитики данных API Ozon Seller

1. Общее описание проекта
Существует система для сбора и анализа данных из личных кабинетов продавцов Ozon Seller. Данные (продажи, остатки, цены) в большом объеме поступают на сторонний сервер (SQL базу данных), Текущий процесс включает ручную выгрузку данных из этой базы в промежуточные ("стоковые") листы Google Таблиц, откуда они впоследствии используются в основных листах с дашбордами и аналитикой.

Система нестабильна, требует постоянного ручного контроля и не справляется с ростом объема данных. Цель проекта — создание отказоустойчивой, автоматизированной и высокопроизводительной системы загрузки и обработки данных.

Цель: Автоматизировать и сделать надежной систему выгрузки данных из Ozon Seller в дашборды Google Таблиц.

Проблемы:
Рандомные сбои выгрузки продаж и цен. Нет уведомлений об ошибках.
Таблицы с большим объемом данных (3-5 тыс. товаров) работают медленно.

Задачи:
Архитектура: Убрать выгрузку сырых данных в стоковые листы. Дашборды должны получать с сервера готовые данные.

Надежность: Внедрить обработку ошибок и повторные попытки выгрузки. Создать систему оповещений о проблемах (в таблице/Telegram).

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

Документация: Предоставить доступ к коду и написать подробную инструкцию для будущих исполнителей.

Результат: Стабильная система без ручного вмешательства с дашбордами и прозрачным мониторингом ошибок.
2025-09-20 01:10