pyathenajdbc
Amazon Athena JDBC driver wrapper for the Python DB API 2.0 (PEP 249)
What it is and what it does
PyAthenaJDBC is a Python wrapper around the Amazon Athena JDBC driver that implements the DB API 2.0 standard (PEP 249). It allows you to execute SQL queries against Amazon Athena tables directly from Python code, handling the bridge between Python and the Java-based JDBC driver through jpype1.
The package supports basic query execution, cursor iteration, parameterized queries (using PyFormat style with named placeholders), and optional integration with SQLAlchemy (versions 1.0.0–1.x) and Pandas for result handling. You configure connections by specifying an S3 output location for query results and an AWS region, and can pass JVM options or JDBC driver configuration as keyword arguments. However, the project has been abandoned since late 2023 and is no longer maintained, meaning compatibility with current AWS Athena versions, modern Java runtimes, and Python versions beyond 3.9 is uncertain.
Use it for:
- Execute ad-hoc SQL queries against Athena tables from a Python script without setting up a separate database connection layer.
- Integrate Athena query results into a Pandas DataFrame for data analysis workflows.
- Build a Python application that uses SQLAlchemy ORM or query builder with Athena as the backend (SQLAlchemy 1.x only).
- Automate batch data extraction from Athena into Python for ETL or reporting pipelines.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
PyAthenaJDBC wraps the Amazon Athena JDBC driver to provide a Python DB API 2.0 (PEP 249) interface for querying Amazon Athena from Python.
No—not for new projects. The package is abandoned (last release 2020-12-31, repository archived 2023-09-20) and supports only Python 3.6–3.9, making it incompatible with modern Python versions. AWS Athena and its JDBC driver have evolved significantly since the last update, and there is no active maintenance to address compatibility issues. For current Athena access from Python, use boto3 with the AWS SDK or a maintained third-party driver.
Install
pyathenajdbc on PyPI
pip
pip install pyathenajdbcuv
uv add pyathenajdbcpoetry
poetry add pyathenajdbcInstalling pyathenajdbc
Before you install
Installation is low-friction (pure Python wheel), but the package is abandoned as of 2023-09-20 with no active maintenance. The repository is archived and the latest release dates to 2020-12-31. Relies on jpype1 to bridge to Java, which requires a working JVM (Java >= 8 for JDBC 4.2).
License in practice
MIT license is permissive and imposes no significant restrictions on use or redistribution.
Quickstart
from pyathenajdbc import connect
conn = connect(S3OutputLocation='s3://YOUR_S3_BUCKET/path/to/',
AwsRegion='us-west-2')
try:
with conn.cursor() as cursor:
cursor.execute('SELECT * FROM one_row')
print(cursor.fetchall())
finally:
conn.close()
Requires Java >= 8 (JDBC 4.2) installed and accessible to jpype1; Python 3.6–3.9 only.
Verify before relying
- Whether jpype1 dependency is compatible with modern Python versions beyond 3.9.
- Current compatibility with recent AWS Athena JDBC driver versions and changes to Athena API.
- Whether the package works reliably with modern Java versions (17+).
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.6.1,<4.0.0) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — jpype1 |
| Maintenance | abandoned — 2,052 days since the last release |
| Last repo commit | (repository archived) |
| First released | |
| Downloads | 608,404/month — #5,780 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: PyAthenaJDBC-3.0.1-py3-none-any.whl
Tags
More Front-Ends packages
SQLAlchemy is a Python SQL toolkit and Object…
permissive · top 100 on PyPI
psycopg2-binarypsycopg2-binary is a PostgreSQL database…
copyleft · top 1,000 on PyPI
alembicAlembic generates and manages database schema…
permissive · top 1,000 on PyPI
weaviate-clientA Python client library for connecting to and…
permissive · top 1,000 on PyPI
databricks-sql-connectorA Python client library that connects to…
permissive · top 1,000 on PyPI
psycopgPsycopg 3 is a PostgreSQL database adapter for…
copyleft · top 1,000 on PyPI
PyAthenaPyAthena is a Python DB API 2.0 client for…
permissive · top 1,000 on PyPI
pydynamodbPyDynamoDB is a DB API 2.0 client for Amazon…
permissive · top 15,000 on PyPI
dmpythondmPython is a native Python driver for…
permissive · top 15,000 on PyPI
pythenaPythena wraps AWS Athena queries in a Python…
copyleft · top 15,000 on PyPI
hdbcliA PEP 249-compliant Python database driver for…
unclear · top 5,000 on PyPI
redshift-connectorredshift_connector is a Python database driver…
permissive · top 1,000 on PyPI
JayDeBeApiJayDeBeApi bridges Python to Java JDBC database…
copyleft · top 5,000 on PyPI
sqlalchemy-jdbcapiSQLAlchemy dialect for JDBC and ODBC database…
permissive · top 15,000 on PyPI
dbt-athenadbt-athena is a dbt adapter that enables data…
permissive · top 5,000 on PyPI
aws-advanced-python-wrapperWraps Python database drivers to add Aurora…
permissive · top 15,000 on PyPI