Data engineer (проектная или частичная занятость)
Прямой работодатель Absolut POS ( www.absolut.ru )
Опыт работы любой
Описание проекта
Разрабатываемый проект является системой для аналитики данных ресторанов, использующих платформы IIKO и Absolut. В процессе разработки будет создана Data Warehouse (DWH) на базе Clickhouse для агрегации данных из тысяч заведений.
В рамках проекта также планируется обогащение данных из внешних источников, таких как погода, праздники и мероприятия. Также необходимо подключить собственные источники данных, включая статистику из социальных сетей и рекламных платформ.
Цели проекта
- Возможность хранить, обрабатывать данные из различных источников данных
- Возможность работать с новыми источниками данных без постоянного участия разработки
- Отделить аналитические и операционные данные для обеспечения надежности, стабильности и скорости работы с данными
- Возможность формировать новые отчеты по клиентам средстами BI-инструментов без участия разработки
Требования к Clickhouse
- Установить и настроить Clickhouse для работы с большими объемами данных.
- Создать структуру базы данных для хранения данных, включая таблицы, индексы и связи между таблицами.
- Разработать процессы ETL для загрузки данных из платформ IIKO и Absolut в DWH.
- Обеспечить производительность запросов к данным, включая использование оптимизированных запросов и индексов.
Требования к Airflow
- Установить и настроить Airflow для автоматизации процессов ETL.
- Создать DAG (Directed Acyclic Graph) для описания процессов ETL, включая выгрузку данных из платформ, обогащение данных из внешних источников и загрузку данных в Clickhouse DWH.
- Разработать и настроить расписания выполнения задач в DAG в соответствии с требованиями и конкретными потребностями аналитического отдела.
Результаты проекта
- Данные из платформ IIKO и Absolut загружены и хранятся в Clickhouse DWH.
- Данные из внешних источников (погода, праздники, мероприятия) обогащаются и доступны для анализа.
- Данные из собственных источников (статистика из социальных сетей, рекламных платформ) подключены и доступны для анализа.
- Разработаны и настроены процессы ETL для загрузки и обработки данных.
- Автоматизированы процессы ETL с использованием Airflow.
План минимум
- Установить и настроить Clickhouse.
- Создать структуру базы данных в Clickhouse.
- Разработать процессы ETL для загрузки данных из платформ IIKO и Absolut в Clickhouse DWH.
План максимум
- Установить и настроить Clickhouse.
- Создать структуру базы данных в Clickhouse.
- Разработать процессы ETL для загрузки данных из платформ IIKO и Absolut в Clickhouse DWH.
- Интегрировать данные о погоде, праздниках и мероприятиях из внешних источников.
- Разработать процессы ETL для загрузки и обработки данных из внешних источников.
- Подключить статистику из собственных социальных сетей и рекламных платформ.
- Разработать процессы ETL для загрузки и обработки данных из собственных источников.
- Настроить расписание выполнения процессов ETL с использованием Airflow.
- Протестировать и оптимизировать процессы ETL и производительность запросов к данным.
- Завершить проект, предоставив работающую систему для аналитики данных ресторанов.
Технические сведения
Разворачивать инфраструктуру с нуля на базе Яндекс Облака.
Источники данных
- API IIKO — Python-итеграция с прокси-базой SQL
- Absolut — PostgreSQL (основное) и немного Mongo DB (складские операции)
Объем данных
- На текущий момент — 11 тыс. чеков в сутки
- К концу 2023 года — до 45 тыс. чеков в сутки
- К концу 2024 года — до 450 тыс. чеков в сутки
Данные можно обновлять с задержкой. Условно:
- Операционные данные текущего дня мы можем тащить из нашей базы;
- Данные аналитические (более 7 дней назад) уже из аналитической базы.
В идеале добиться, конечно, синхронизации в реальном времени.