apache-airflow-providers-jdbc
Provider package apache-airflow-providers-jdbc for Apache Airflow
What it is and what it does
This is an Apache Airflow provider package that enables Airflow DAGs to connect to and query JDBC-compatible databases. It bridges Python and Java by wrapping jaydebeapi and jpype1, allowing Airflow tasks to execute SQL operations against any database with a JDBC driver available.
The package is part of Airflow's ecosystem of database providers and integrates with Airflow's connection and operator framework. It supports Python 3.10 through 3.14 and requires Airflow 2.11.0 or later. Installation is straightforward via pip, though jpype1 has platform-specific version constraints that may affect setup on certain configurations, particularly macOS ARM64 systems.
Use it for:
- Execute SQL queries against legacy or proprietary databases that only expose JDBC drivers from Airflow DAG tasks
- Orchestrate ETL workflows that need to read from or write to JDBC-connected databases as part of a larger pipeline
- Monitor database health or run periodic maintenance queries through Airflow's scheduling and alerting framework
- Integrate JDBC data sources with Airflow's lineage and metadata tracking via the openlineage optional dependency
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides Apache Airflow integration for executing queries and operations against JDBC-compatible databases through jaydebeapi and jpype1 bridges to Java.
Yes, if you need Airflow to interact with JDBC databases. The package is actively maintained, carries no known vulnerabilities, has low install friction, and is backed by the Apache Airflow project. The main gotcha is jpype1's platform-specific constraints; verify those match your deployment environment before committing.
Install
apache-airflow-providers-jdbc on PyPI
pip
pip install apache-airflow-providers-jdbcuv
uv add apache-airflow-providers-jdbcpoetry
poetry add apache-airflow-providers-jdbcInstalling apache-airflow-providers-jdbc
Before you install
Low friction installation as a pure Python wheel. Actively maintained with recent releases; requires Apache Airflow >=2.11.0 and jpype1 with platform-specific version constraints (notably excluding jpype1 1.7.0 on certain configurations).
License in practice
Apache License 2.0 (permissive) allows commercial and private use with minimal restrictions; suitable for most deployment contexts.
Quickstart
pip install apache-airflow-providers-jdbc
from airflow.providers.jdbc.operators.jdbc import JdbcOperator
task = JdbcOperator(
task_id='query_task',
jdbc_conn_id='my_jdbc_connection',
sql='SELECT * FROM table'
)
Requires a working Apache Airflow installation (>=2.11.0) and a JDBC driver JAR file accessible to the Java runtime via jpype1; jpype1 has platform-specific version constraints, particularly on Python 3.10 and 3.11 on macOS ARM64.
Verify before relying
- Whether jaydebeapi and jpype1 require system-level Java installation or if bundled JRE is sufficient
- Performance characteristics when executing large result sets or complex queries through the JDBC bridge
- Compatibility matrix with specific JDBC drivers (e.g., PostgreSQL, MySQL, Oracle, SQL Server)
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 5 — apache-airflow, apache-airflow-providers-common-compat, apache-airflow-providers-common-sql, jaydebeapi, jpype1 |
| Maintenance | actively maintained — 68 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,768,360/month — #3,573 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: apache_airflow_providers_jdbc-5.5.0-py3-none-any.whl
Keywords: airflow-provider, jdbc, airflow, integration
Tags
More Monitoring packages
Wraps any iterable to display a real-time…
copyleft · top 100 on PyPI
opentelemetry-semantic-conventionsProvides generated Python code for…
permissive · top 100 on PyPI
opentelemetry-sdkProvides the reference implementation of the…
permissive · top 100 on PyPI
opentelemetry-apiProvides the abstract API and interfaces for…
permissive · top 100 on PyPI
opentelemetry-exporter-otlp-proto-httpExports OpenTelemetry observability data to an…
permissive · top 1,000 on PyPI
opentelemetry-instrumentationProvides automatic instrumentation commands and…
permissive · top 1,000 on PyPI
apache-airflow-providers-mysqlIntegrates Apache Airflow with MySQL databases,…
permissive · top 5,000 on PyPI
JayDeBeApiJayDeBeApi bridges Python to Java JDBC database…
copyleft · top 5,000 on PyPI
apache-airflow-providers-common-sqlProvides common SQL operators, hooks, and…
permissive · top 1,000 on PyPI
apache-airflow-providers-oracleIntegrates Apache Airflow with Oracle…
permissive · top 5,000 on PyPI
apache-airflow-providers-microsoft-mssqlIntegrates Microsoft SQL Server (MSSQL) with…
permissive · top 5,000 on PyPI
apache-airflow-providers-odbcProvides ODBC database connectivity operators…
permissive · top 5,000 on PyPI
apache-airflow-providers-sqliteIntegrates SQLite databases with Apache Airflow…
permissive · top 5,000 on PyPI
apache-airflow-providers-databricksIntegrates Apache Airflow with Databricks,…
permissive · top 1,000 on PyPI
apache-airflow-providers-apache-druidIntegrates Apache Druid with Apache Airflow,…
permissive · top 15,000 on PyPI
apache-airflow-providers-ydbIntegrates YDB (a distributed SQL database)…
permissive · top 15,000 on PyPI