Learning Platform
Глоссарий Troubleshooting
Урок 02.02 · 20 мин
Начальный
СловарьПайплайнETLBatchОркестрация

Словарь дата-инженерии на пальцах

Дальше в курсе на тебя польётся жаргон: пайплайн, ETL, warehouse, batch, оркестрация. Чтобы он не пугал, разберём эти слова заранее — каждое в одном-двух простых предложениях и с бытовой аналогией. Не нужно зубрить определения наизусть. Нужно, чтобы при следующей встрече слово было знакомым, а не страшным.

Держи в голове картинку из прошлого урока: данные текут по трубам от источника к крану. Почти весь словарь ниже — это просто названия частей этого водопровода.


Источник (source)

Источник — это место, где данные рождаются. База приложения, сайт, мобильное приложение, датчик, внешний сервис вроде платёжной системы — всё это источники. Дата-инженер не создаёт данные сам, он их забирает из источников.

Бытовая аналогия: источник — это родник или скважина. Вода (данные) сама там появляется, наша задача — провести от неё трубу.

У одной компании источников обычно много: отдельно база заказов, отдельно реклама, отдельно поддержка клиентов. Часть работы DE — подключиться к каждому и регулярно вытаскивать оттуда свежие данные.


Хранилище данных (data warehouse)

Хранилище данных (англ. warehouse, читается «вэрхаус») — это большая база, специально устроенная под анализ. Туда складывают данные из всех источников, чтобы по ним удобно было считать отчёты и отвечать на вопросы бизнеса.

Бытовая аналогия: warehouse — это большой склад-распределитель. С разных фабрик (источников) туда свозят товар, аккуратно раскладывают по полкам, и теперь по складу легко найти что угодно и посчитать остатки.

Важно: warehouse — это не та база, в которой работает само приложение. Приложению нужна скорость на мелких операциях (записать один заказ), а складу — умение быстро перелопатить миллионы строк ради одного отчёта. Это разные задачи, поэтому и базы разные. Подробно разницу мы разберём в модуле про OLTP и OLAP.


Пайплайн (pipeline)

Пайплайн — это путь данных от источника до хранилища, собранный из последовательных шагов. Забрать данные, почистить, преобразовать, положить на место — всё это шаги одного пайплайна.

Бытовая аналогия: пайплайн — это конвейер на заводе. Сырьё заезжает с одного конца, проходит через станции (помыть, нарезать, упаковать) и выезжает готовым продуктом с другого. Если одна станция сломалась — встаёт весь конвейер.

Слово «pipeline» буквально и переводится как «трубопровод». Когда дата-инженер говорит «у меня упал пайплайн», он имеет в виду «сломалась одна из труб, по которой ехали данные, и они не доехали».


ETL и ELT

Это два способа построить пайплайн. Оба состоят из трёх шагов, спрятанных в буквах:

  • E — Extract (извлечь): забрать данные из источника.
  • T — Transform (преобразовать): почистить и привести к нужному виду — например, убрать дубли, перевести даты в один формат, посчитать суммы.
  • L — Load (загрузить): положить данные в хранилище.

Разница только в порядке двух последних букв:

  • ETL — сначала преобразуем, потом грузим уже готовое. (Извлёк -> почистил -> положил.)
  • ELT — сначала грузим сырьё в хранилище, а преобразуем уже внутри него. (Извлёк -> положил -> почистил на месте.)

Бытовая аналогия: представь, что везёшь овощи с рынка. ETL — это помыть и нарезать овощи прямо на рынке, а домой привезти готовый салат. ELT — это привезти грязные овощи домой и резать их на своей кухне, где есть большая раковина и удобные ножи. Какой способ лучше — зависит от того, где у тебя удобнее «кухня». В современном мире с мощными хранилищами чаще выбирают ELT. Отдельный модуль курса посвящён именно этому выбору.


Batch и stream (партиями или ручьём)

Данные можно доставлять двумя ритмами.

  • Batch (батч, «пакет/партия») — данные едут порциями по расписанию. Например, раз в час или раз в сутки собрали всё накопившееся и отправили одной пачкой.
  • Stream (стрим, «поток/ручей») — данные едут по одному, непрерывно, сразу как появились. Каждое новое событие тут же бежит по трубе дальше.

Бытовая аналогия: batch — это автобус, который отходит по расписанию и везёт сразу всех пассажиров. Stream — это эскалатор, по которому люди едут по одному и непрерывно. Автобус проще и дешевле, но ждать его дольше. Эскалатор даёт мгновенность, но устроен сложнее.

Большинство пайплайнов в мире — batch, потому что отчёту «за вчера» не нужна мгновенность. Stream нужен там, где промедление дорого: антифрод, рекомендации в реальном времени, мониторинг.


Оркестрация (orchestration)

Когда пайплайнов становится много и одни зависят от других, кто-то должен ими дирижировать: запускать в нужном порядке, по расписанию, перезапускать упавшие. Это и есть оркестрация.

Оркестрация — это управление запуском шагов: что за чем запускается, когда и что делать, если шаг упал. Программу, которая этим занимается, называют оркестратором (самый известный — Airflow, но о нём позже).

Бытовая аналогия: оркестрация — это дирижёр оркестра. Каждый музыкант (пайплайн) умеет играть свою партию, но без дирижёра они вступят вразнобой. Дирижёр следит, чтобы скрипки вступили после вступления, а не до, и чтобы при сбое всё не развалилось.

TIP

Не пугайся, когда позже встретишь слово «DAG» рядом с оркестрацией. DAG — это просто схема «какой шаг от какого зависит», нарисованная стрелками: сначала забрать данные -> потом почистить -> потом построить отчёт. Мы разберём DAG отдельно и подробно. Сейчас достаточно знать, что оркестратор дирижирует шагами по такой схеме.


Собираем словарь в одну картинку

Прочитай это предложение медленно, подставляя только что выученные слова:

Дата-инженер строит пайплайны, которые забирают данные из источников, преобразуют их (ETL или ELT), доставляют партиями или потоком в хранилище, а запускает всё это по расписанию оркестратор.

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


Попробуй сам

  1. Закрой урок и своими словами, не подглядывая, объясни вслух три слова: пайплайн, источник, хранилище. Если застрял — это нормально, открой и перечитай именно тот абзац.
  2. Придумай свою бытовую аналогию для batch и stream (не автобус и эскалатор). Например, из мира еды, почты или транспорта. Чем твоя аналогия лучше или хуже?
  3. Возьми приложение из задания прошлого урока. Назови его источник данных и придумай один отчёт, который бизнес хотел бы получать из хранилища. Нужен ли этому отчёту stream, или хватит batch раз в сутки?
Проверка знанийKnowledge check
Объясни простыми словами разницу между ETL и ELT. В чём именно отличие, если оба делают одни и те же три действия?
ОтветAnswer
И ETL, и ELT делают три одинаковых действия: Extract (извлечь данные из источника), Transform (преобразовать/почистить) и Load (загрузить в хранилище). Отличие только в порядке. В ETL сначала Transform, потом Load: данные чистят ещё по дороге и в хранилище кладут уже готовыми. В ELT сначала Load, потом Transform: сырые данные сразу грузят в хранилище и преобразуют уже внутри него. Аналогия: ETL — нарезать салат прямо на рынке и привезти домой готовым; ELT — привезти грязные овощи домой и резать на своей удобной кухне. Современные мощные хранилища чаще делают преобразование внутри себя, поэтому ELT стал популярнее.

Проверьте понимание

Результат: 0 из 0
Концептуальный
Вопрос 1 из 3. Что такое пайплайн простыми словами?

Закончили урок?

Отметьте его как пройденный, чтобы отслеживать свой прогресс

Войдите чтобы оценить урок

Прогресс модуля
0 из 3