openlineage-sql
Python interface for the Rust OpenLineage lineage extraction library
What it is and what it does
openlineage-sql is a Python wrapper around a Rust SQL parser designed to extract lineage metadata from SQL queries in accordance with the OpenLineage specification. It exposes the parser's functionality to Python applications without introducing runtime dependencies, relying instead on pre-compiled binary wheels for different platforms and architectures.
The package is positioned as a library component rather than a standalone tool—the documentation explicitly notes it is not meant to be used alone by end-users. It is typically integrated into larger data governance, metadata management, or ETL orchestration systems that need to track data flow through SQL operations. Installation requires Python 3.10 or later and will pull a platform-specific compiled binary.
Use it for:
- Extract table and column lineage from SQL queries in data pipeline orchestration tools.
- Integrate SQL parsing into metadata collection systems that track data provenance across warehouses.
- Build data governance dashboards that need to understand upstream and downstream dependencies in SQL workloads.
- Embed lineage extraction in ETL frameworks that need OpenLineage-compliant metadata output.
- Analyze SQL dependencies in data catalogs or lineage visualization platforms.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides a Python interface to a Rust-based SQL parser for extracting data lineage information compatible with the OpenLineage standard.
Yes, if you are building or extending an OpenLineage-compatible system that needs SQL lineage extraction. The package is actively maintained, has no known vulnerabilities, and supports current Python versions. However, verify the license terms first (currently unclear in metadata) and confirm it integrates with your broader lineage platform—it is a library component, not a standalone tool.
Install
openlineage-sql on PyPI
pip
pip install openlineage-sqluv
uv add openlineage-sqlpoetry
poetry add openlineage-sqlInstalling openlineage-sql
Before you install
Medium install friction due to compiled wheels (Rust-based). Active maintenance with recent release (22 days old). Supports modern Python versions (3.10–3.13) and both CPython and PyPy implementations.
License in practice
License treatment is unclear—no SPDX identifier or raw license text is available in the metadata. Verify the actual license before use in proprietary or restricted contexts.
Quickstart
pip install openlineage-sql
import openlineage_sql
# Typically used as a dependency within an OpenLineage integration, not directly
Requires Python 3.10 or later. Installation pulls a pre-compiled Rust binary; verify platform support (macOS, Linux x86_64, aarch64) before installing.
Verify before relying
- What is the actual open-source license under which this package is distributed?
- Is this package intended to be used directly by end-users or only as a dependency of other OpenLineage tools?
- What SQL dialects and lineage scenarios does the parser support?
Package facts
| License | not declared (unclear) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 22 days since the last release |
| First released | |
| Downloads | 9,002,642/month — #1,570 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: openlineage_sql-1.52.0-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl; openlineage_sql-1.52.0-cp310-abi3-manylinux_2_28_aarch64.whl; openlineage_sql-1.52.0-cp310-abi3-manylinux_2_28_x86_64.whl
Keywords: openlineage
Tags
More Database packages
psycopg2-binary is a PostgreSQL database…
copyleft · top 1,000 on PyPI
redisPython client library for connecting to and…
permissive · top 1,000 on PyPI
ydbYDB Python SDK is the official client library…
permissive · top 1,000 on PyPI
snowflake-connector-pythonConnects Python applications to Snowflake data…
permissive · top 1,000 on PyPI
sqlparsesqlparse tokenizes SQL text into a tree of…
permissive · top 1,000 on PyPI
dbt-adaptersProvides base adapter protocols and shared…
permissive · top 1,000 on PyPI
openlineage-pythonPython client library for OpenLineage that…
permissive · top 1,000 on PyPI
sqllineageSQLLineage parses SQL statements to extract and…
permissive · top 5,000 on PyPI
openlineage-dbtAutomatically collects and sends dbt run…
unclear · top 15,000 on PyPI
openlineage-airflowIntegrates Apache Airflow DAGs with OpenLineage…
permissive · top 5,000 on PyPI
collate-sqllineageAnalyzes SQL statements to extract source and…
permissive · top 5,000 on PyPI
apache-airflow-providers-openlineageIntegrates Apache Airflow with OpenLineage to…
permissive · top 5,000 on PyPI
dbt-colibriExtracts column-level lineage from dbt projects…
permissive · top 15,000 on PyPI
openlineage-integration-commonProvides common Python utilities and data…
permissive · top 5,000 on PyPI
mapfile_parserParses compiled binary map files (GNU ld, clang…
unclear · top 15,000 on PyPI
sqlfluffrsSQLFluff-rs is a Rust-based optional component…
permissive · top 15,000 on PyPI