OpenLineage на собеседовании Data Engineer

Готовься к собесу аналитика как в Duolingo
10 минут в день — SQL, Python, A/B, метрики. 1700+ вопросов в Telegram
Открыть Карьерник в Telegram

Карьерник — 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.

Готовься к собесу аналитика как в Duolingo
10 минут в день — SQL, Python, A/B, метрики. 1700+ вопросов в Telegram
Открыть Карьерник в Telegram

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.

Связанные темы

FAQ

Это официальная информация?

Нет. Статья основана на документации OpenLineage spec.


Тренируйте Data Engineering — откройте тренажёр с 1500+ вопросами для собесов.