Home

Awesome

<div align="center"> <img src="./doc/openlineage-logo.png" width="375px" /> <a href="https://lfaidata.foundation/projects"> <img src="./doc/lfaidata-project-badge-sandbox-black.png" width="115px" /> </a> </div>

Badges

CircleCI status Slack license maven CII Best Practices

Overview

OpenLineage is an Open standard for metadata and lineage collection designed to instrument jobs as they are running. It defines a generic model of run, job, and dataset entities identified using consistent naming strategies. The core lineage model is extensible by defining specific facets to enrich those entities.

Status

OpenLineage is an LF AI & Data Foundation incubation project under active development, and we'd love your help!

Problem

Before

Before OpenLineage

With OpenLineage

With OpenLineage

Scope

OpenLineage defines the metadata for running jobs and the corresponding events. A configurable backend allows the user to choose what protocol to send the events to. Scope

Core model

Model

A facet is an atomic piece of metadata attached to one of the core entities. See the spec for more details.

Spec

The specification is defined using OpenAPI and allows extension through custom facets.

Integration matrix

The OpenLineage repository contains integrations with several systems.

NameTable-level lineageColumn-level lineage
Apache Spark:white_check_mark::white_check_mark:<sup>1</sup>
Apache Airflow:white_check_mark::white_check_mark:<sup>2</sup>
Dagster:white_check_mark::x:
dbt:white_check_mark::white_check_mark:
Flink:white_check_mark::x:
  1. Does not support SELECT * queries with JDBC.
  2. Supports SQL-based operators other than BigQuery.

Related projects

Community

Talks

Contributing

See CONTRIBUTING.md for more details about how to contribute.

Report a Vulnerability

If you discover a vulnerability in the project, please open an issue and attach the "security" label.


SPDX-License-Identifier: Apache-2.0
Copyright 2018-2024 contributors to the OpenLineage project