pydoris
Python interface to Doris
What it is and what it does
Pydoris bridges Python applications to Apache Doris, an MPP analytical database designed for sub-second query response times on large datasets. It provides a SQLAlchemy dialect that lets you connect using standard SQLAlchemy patterns—create_engine with a doris:// URL, then execute queries through the connection object. The package depends on sqlalchemy, sqlalchemy-utils, mysqlclient, and requests, making it a thin wrapper around Doris's wire protocol.
You use it when you need Python code to query Doris for reporting, ad-hoc analysis, or data lake acceleration. It's not an ORM layer but a database driver: you write SQL or use SQLAlchemy's text() construct to run queries and fetch results. The package requires Python 3.7 or later and is marked as production-stable.
Use it for:
- Connect a Python analytics or reporting application to Doris for real-time query execution.
- Build ETL pipelines that read from Doris using SQLAlchemy's connection and metadata introspection.
- Execute ad-hoc SQL queries against a Doris cluster from Python scripts or Jupyter notebooks.
- Integrate Doris as a backend for a data warehouse or data lake query layer in a larger Python service.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Pydoris is a Python client for Apache Doris that enables SQLAlchemy-based database connections and query execution against a Doris analytical database.
Yes. Pydoris is actively maintained, carries no known vulnerabilities, has low install friction, and is licensed permissively. Install it if you need to query Apache Doris from Python—it's the standard SQLAlchemy dialect for that purpose. No significant blockers.
Install
pydoris on PyPI
pip
pip install pydorisuv
uv add pydorispoetry
poetry add pydorisInstalling pydoris
Before you install
Low install friction with a pure-Python wheel distribution. The package is actively maintained with a recent release and carries a high star count on its repository, suggesting stable community adoption.
License in practice
Licensed under Apache 2.0 (permissive), which allows commercial use, modification, and distribution with minimal restrictions—suitable for most production and proprietary projects.
Quickstart
pip install pydoris
from sqlalchemy import create_engine, text
engine = create_engine('doris://root:password@localhost:9030/catalog.database')
connection = engine.connect()
rows = connection.execute(text("SELECT * FROM table")).fetchall()
Requires Python 3.7 or later; mysqlclient dependency may require system libraries for compilation on some platforms.
Verify before relying
- Whether the package supports connection pooling or concurrent query execution patterns.
- Performance characteristics and query timeout behavior when working with large result sets.
- Whether SQLAlchemy ORM features (not just raw SQL) are fully supported through this dialect.
Package facts
| License | Apache 2.0 (permissive) |
| Python support | supports the current Python release (>=3.7) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 4 — sqlalchemy, sqlalchemy-utils, mysqlclient, requests |
| Maintenance | actively maintained — 150 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 135,373/month — #11,435 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pydoris-1.2.0-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
pydoris-customA Python client for Apache Doris that provides…
permissive · top 15,000 on PyPI
trinoPython client library for Trino, a distributed…
permissive · top 1,000 on PyPI
PyHivePyHive provides DB-API and SQLAlchemy…
permissive · top 5,000 on PyPI
databricks-dbapiProvides a DBAPI 2.0 connection interface and…
permissive · top 15,000 on PyPI
sqlalchemy-jdbcapiSQLAlchemy dialect for JDBC and ODBC database…
permissive · top 15,000 on PyPI
pinotdbProvides Python DB-API and SQLAlchemy dialect…
permissive · top 1,000 on PyPI
pyathenajdbcPyAthenaJDBC wraps the Amazon Athena JDBC…
permissive · top 15,000 on PyPI
starrocksProvides a SQLAlchemy dialect and Alembic…
permissive · top 15,000 on PyPI
sqlalchemy-spannerProvides a SQLAlchemy dialect that enables…
permissive · top 5,000 on PyPI