Skip to main content

Data.Rentgen REST API + Kafka consumer

Project description

Data.Rentgen logo

Repo Status Docker image PyPI PyPI License PyPI Python Version Documentation Build Status Coverage pre-commit.ci

What is Data.Rentgen?

Data.Rentgen is a Data Motion Lineage service, compatible with OpenLineage specification.

Currently we support consuming lineage from:

  • Apache Spark

  • Apache Airflow

  • Apache Hive

  • Apache Flink

  • dbt

Note: service is under active development, so it doesn’t have stable API for now.

Goals

  • Collect lineage events produced by OpenLineage clients & integrations.

  • Store operation-grained events for better detalization (instead of job grained Marquez).

  • Provide API for fetching both job/run ↔ dataset lineage and dataset ↔ dataset lineage.

Features

  • Support consuming large amounts of lineage events, use Apache Kafka as event buffer.

  • Store data in tables partitioned by event timestamp, to speed up lineage graph resolution.

  • Lineage graph is build with user-specified time boundaries (unlike Marquez where lineage is build only for last job run).

  • Lineage graph can be build with different granularity. e.g. merge all individual Spark commands into Spark applicationId or Spark applicationName.

  • Column-level lineage support.

  • Authentication support.

Non-goals

  • This is not a Data Catalog. DataRentgen doesn’t track dataset schema change, owner and so on. Use Datahub or OpenMetadata instead.

  • Static Data Lineage like view → table is not supported.

Limitations

  • OpenLineage have integrations with Trino, Debezium and some other lineage sources. DataRentgen support may be added later.

  • Unlike Marquez, DataRentgen parses only limited set of facets send by OpenLineage, and doesn’t store custom facets. This can be changed in future.

Documentation

See https://data-rentgen.readthedocs.io/

Screenshots

Lineage graph

Dataset-level lineage graph

Dataset-level lineage graph

Dataset column-level lineage graph

Dataset column-level lineage graph

Job-level lineage graph

Job-level lineage graph

Run-level lineage graph

Job-level lineage graph

Datasets

Datasets list

Runs

Runs list

Spark application

Spark application details

Spark run

Spark run details

Spark command

Spark command details

Hive query

Hive query details

Airflow DagRun

Airflow DagRun details

Airflow TaskInstance

Airflow TaskInstance details

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

data_rentgen-0.4.2.tar.gz (148.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

data_rentgen-0.4.2-py3-none-any.whl (287.0 kB view details)

Uploaded Python 3

File details

Details for the file data_rentgen-0.4.2.tar.gz.

File metadata

  • Download URL: data_rentgen-0.4.2.tar.gz
  • Upload date:
  • Size: 148.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for data_rentgen-0.4.2.tar.gz
Algorithm Hash digest
SHA256 6f770e4d9d5c6c4a33d0daa404de0a91ea1d54698c3a752bc64d6909984e5bf1
MD5 68268005c81fc0360dde03c6d5d4d6cf
BLAKE2b-256 1a25d69ff60bae6700ccb00ca46a1bb3e307efa8d273e1983f54445a07387348

See more details on using hashes here.

Provenance

The following attestation bundles were made for data_rentgen-0.4.2.tar.gz:

Publisher: release.yml on MobileTeleSystems/data-rentgen

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file data_rentgen-0.4.2-py3-none-any.whl.

File metadata

  • Download URL: data_rentgen-0.4.2-py3-none-any.whl
  • Upload date:
  • Size: 287.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for data_rentgen-0.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c4eba31fa5d29a265c9c3d4ca5448608f443cb16e084e53a08909672378846ef
MD5 d27e9f2f3697b23df5f8493c75036c54
BLAKE2b-256 c7677f156ebc410192d2a47001c557bf6dd6f69df861794a9d8bde31d2fd1ef5

See more details on using hashes here.

Provenance

The following attestation bundles were made for data_rentgen-0.4.2-py3-none-any.whl:

Publisher: release.yml on MobileTeleSystems/data-rentgen

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page