skillfed

pydoris

Python interface to Doris

pydoris v1.2.0 135.4K downloads/30d#11,435 on PyPI15,768
Permissive license Apache 2.0 Active released

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 pydoris

uv

uv add pydoris

poetry

poetry add pydoris

Installing 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

Development Status :: 5 - Production/StableEnvironment :: ConsoleIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPyTopic :: Database :: Front-Ends

Tags

apache doris python clientdoris sqlalchemy connectorpython doris database driverdoris analytics clientsqlalchemy doris integrationdoris query interface pythonanalytical database python client
database-driversqlalchemy-dialectanalytics

More Front-Ends packages