OpenLineage на собеседовании Data Engineer
Карьерник — Duolingo для аналитиков: 10 минут в день тренируй SQL, Python, A/B, статистику, метрики и ещё 3 темы собеса. 1500+ вопросов в Telegram-боте. Бесплатно.
Содержание:
Что такое OpenLineage
Standard для emit / collect lineage events.
Vendor-neutral. Pipeline tools emit → backends ingest.
Airflow → emit → OpenLineage event → DataHub / Marquez → visualize.Event spec
JSON schema. Каждое event:
- Run ID.
- Job (namespace + name).
- Inputs / outputs (datasets).
- Schema metadata.
- Run state (start / complete / fail).
{
"eventType": "COMPLETE",
"job": {"namespace": "etl", "name": "process_orders"},
"run": {"runId": "abc-123"},
"inputs": [{"namespace": "raw", "name": "orders_raw"}],
"outputs": [{"namespace": "warehouse", "name": "silver_orders"}]
}Marquez
Reference implementation OpenLineage. Open source.
- Receives events.
- Stores в Postgres.
- Web UI визуализирует lineage.
Часто Marquez для пилота. В production — DataHub / OpenMetadata с OpenLineage integration.
Integrations
Airflow. OpenLineage provider auto-emit events.
dbt. dbt-openlineage adapter.
Spark. OpenLineage Spark agent.
Flink. Plugin.
Custom. Manual emit через client SDK (Python, Java).
В РФ — постепенно adopting. Many projects use custom lineage solutions.
Связанные темы
- Data lineage для DE
- Airflow на собесе DE
- dbt на собесе DE
- Spark RDD vs DataFrame для DE
- Подготовка к собесу Data Engineer
FAQ
Это официальная информация?
Нет. Статья основана на документации OpenLineage spec.
Тренируйте Data Engineering — откройте тренажёр с 1500+ вопросами для собесов.