Сырые заказы «Гонца» каждую ночь приезжают в хранилище: их везёт DAG gonets_daily из блока про Airflow. Казалось бы, работа сделана. Но в понедельник утром Отто, операционный директор, получает три отчёта о выручке за прошлую неделю: от финансов, от маркетинга и от своей операционной команды. Цифры в них разные. Каждый отдел написал свой SQL к сырым таблицам, и каждый по-своему решил, что считать доставкой, как переводить часовые пояса и что делать с битыми записями. Чинить это будешь ты, в новой роли.
Кухня ресторана
Представь ресторан. Поставщики привозят продукты: мешки картошки, ящики рыбы, коробки зелени. Грузчики принимают товар и раскладывают его по холодильникам. Официанты подают готовые блюда и разговаривают с гостями.
Но между холодильником и официантом есть ещё один человек: повар заготовок. Он чистит картошку, разделывает рыбу, варит бульоны и раскладывает всё по подписанным контейнерам. Шеф и повара берут заготовки и не думают, как чистить рыбу. Если в рецепте бульона ошибка, её исправляют в одном месте, и все блюда на нём сразу становятся правильными.
В данных грузчик это дата-инженер, официант это аналитик, а повар заготовок это аналитический инженер.
Три роли
Ты уже знаешь дата-инженера: он строит пайплайны, которые забирают данные из приложений и кладут их в хранилище. Его вопрос: «доехали ли данные целиком и вовремя?».
Аналитик отвечает бизнесу на вопросы: почему в мае выросли опоздания, сколько заказов приносит новая зона. Его вопрос: «что эти цифры значат?».
Между ними долго была дыра. Сырые таблицы уже в хранилище, но пользоваться ими неудобно: время записано в разных поясах, статусы надо знать наизусть, среди заказов попадаются битые записи. Каждый аналитик чистил это сам, в своём запросе. Отсюда три разные выручки.
Аналитический инженер закрывает эту дыру. Он один раз описывает, что такое «чистая доставка» и «выручка», превращает сырые таблицы в понятные модели и следит, чтобы они были правильными. Его вопрос: «можно ли этой таблице доверять?».
| Дата-инженер | Аналитический инженер | Аналитик | |
|---|---|---|---|
| Работает с | приложениями, очередями, файлами | таблицами хранилища | моделями и дашбордами |
| Главный инструмент | Python, Airflow, Kafka | SQL, dbt | SQL, BI, Python |
| Результат | сырые данные в хранилище | чистые модели и витрины | отчёты и выводы |
| Ошибка выглядит как | данные не доехали | две разные цифры выручки | неверный вывод |
урок из курса
Урок из курса «Data Engineering». Курс покупается один раз и остаётся навсегда: 500 ₽.
Оплата пока не подключена: премиум и курсы открываются промокодом.