CRON и планирование ETL

easy data_engineering Общие

Условие задания

**Компания:** Тинькофф

**Контекст:** Нужно настроить расписание ETL-пайплайнов. Данные из источников приходят с разной задержкой: транзакции — к 3:00, справочники — к 1:00, агрегаты маркетинга — к 6:00.

**Задание:**
1. Напишите CRON-выражения для следующих расписаний:
- Загрузка справочников: каждый день в 2:00
- Загрузка транзакций: каждый день в 4:00
- Построение витрин: каждый день в 5:00
- Обновление агрегатов маркетинга: каждый день в 7:00
- Полный пересчёт витрин: каждое воскресенье в 3:00
2. Объясните зависимости между задачами
3. Напишите SQL-запрос для мониторинга: какие задачи не выполнились вовремя

Пример данных

Структура для ориентира — реальные значения из эталонного решения.

CREATE TABLE etl_runs (
    run_id SERIAL PRIMARY KEY,
    task_name VARCHAR(100),
    started_at TIMESTAMP,
    finished_at TIMESTAMP,
    status VARCHAR(20),  -- success, failed, running
    rows_affected INT
);

-- Задачи, не завершившиеся вовремя
SELECT task_name,
       started_at,
       finished_at,
       status
FROM etl_runs
WHERE started_at::date = CURRENT_DATE
  AND (status = 'failed'
       OR (status = 'running'
           AND started_at < NOW() - INTERVAL '2 hours'));

Темы

CRON планирование ETL расписание Airflow

Подсказки

Все тестовые задания →

Частые вопросы

Какой уровень знаний нужен для задачи "CRON и планирование ETL"?

Это задание для уровня easy. Senior-уровень — глубокое понимание темы, опыт решения нестандартных задач, обсуждение trade-off на собеседовании.

На каких собеседованиях встречается такая задача?

Подобные задания в категории «data_engineering» регулярно дают на собеседованиях аналитика данных в Яндекс, Сбер, Ozon, Авито, Тинькофф, Wildberries, T-Bank, X5, ВТБ и других крупных IT-компаниях. Тематика: CRON, планирование, ETL, расписание, Airflow.

Сколько времени даётся на решение?

На реальном собеседовании на подобную задачу отводится 30-60 минут с обсуждением подходов, оптимизаций и trade-off. Для тренировки рекомендуем сначала решить самостоятельно, потом сверить с эталонным решением и подсказками.

Где ещё потренироваться по теме «data_engineering»?

На zasqlpython.ru есть другие задания в категории «data_engineering», продуктовые кейсы, справочник метрик, AI мок-собеседование с разбором ваших ответов.

← Все задания