skillfed

databend-driver

Databend Driver Python Binding

databend-driver v0.34.2 90.4K downloads/30d#13,590 on PyPI64
Permissive license Apache-2.0 Active released

What it is and what it does

databend-driver is a Python binding for Databend, a cloud data warehouse. It provides three main connection modes: local embedded (running a full Databend engine in-process for analytics without a server), remote server connections via standard DSNs, and a relation API that exposes query results as pandas/polars DataFrames or Arrow tables. The package supports both blocking and async I/O patterns, PEP 249 cursor objects for SQL execution, parameter binding (positional and named), and query ID tracking.

The driver handles type mapping between Databend's SQL types (including semi-structured types like ARRAY, MAP, VARIANT) and Python equivalents. It requires no runtime dependencies beyond the optional embedded engine (which requires Python 3.12+), making it lightweight for remote-only use. The package is actively maintained, supports Python 3.8 through 3.14, and has no known security vulnerabilities.

Use it for:

  • Run local analytics and testing workflows using an in-process Databend engine without deploying a server.
  • Connect to a remote Databend cluster for production SQL queries from Python applications.
  • Load and query external data (Parquet, CSV, JSON) as virtual tables using the relation API.
  • Build async data pipelines that execute SQL queries concurrently without blocking.
  • Migrate from other database drivers by using the PEP 249 cursor interface.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Python client library for connecting to Databend databases, supporting both local embedded in-process analytics and remote server connections with synchronous, asynchronous, and PEP 249 cursor interfaces.

Yes, if you need to connect to Databend or run local embedded analytics. The package is actively maintained, has no security vulnerabilities, and supports a wide range of Python versions (3.8–3.14). Install friction is moderate due to compiled wheels, but prebuilt binaries are available for common platforms. The permissive Apache-2.0 license poses no restrictions. Consider the Python 3.12+ requirement if you plan to use local embedded mode.

Install

databend-driver on PyPI

pip

pip install databend-driver

uv

uv add databend-driver

poetry

poetry add databend-driver

Installing databend-driver

Before you install

Medium install friction due to compiled wheels for multiple platforms and Python versions. The package is actively maintained with a recent release (29 days old) and no known vulnerabilities. Local embedded mode requires Python 3.12 or later via an optional extra.

License in practice

Licensed under Apache-2.0 (permissive), allowing free use, modification, and distribution with minimal restrictions—suitable for both open-source and commercial projects.

Quickstart

pip install databend-driver

from databend_driver import connect

conn = connect("databend+local:///./local-state")
conn.exec("CREATE TABLE books(id INT, title STRING)")
row = conn.query_row("SELECT 1")
print(row.values())

Local embedded mode requires Python 3.12 or later; remote connections work with Python 3.8+. Install with `pip install databend-driver[local]` to enable embedded engine.

Verify before relying

  • Whether the embedded engine (local mode) is production-ready or intended primarily for testing and development workflows.
  • Performance characteristics and scalability limits of the in-process embedded engine compared to remote server connections.

Package facts

License Apache-2.0 (permissive)
Python support supports the current Python release (<3.15,>=3.8)
Install friction medium — platform-specific wheel
Runtime dependencies none
Maintenance actively maintained — 29 days since the last release
Last repo commit
First released
Downloads 90,372/month — #13,590 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: databend_driver-0.34.2-cp38-cp38-macosx_10_12_x86_64.whl; databend_driver-0.34.2-cp38-cp38-macosx_11_0_arm64.whl; databend_driver-0.34.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; databend_driver-0.34.2-cp38-cp38-manylinux_2_28_aarch64.whl; databend_driver-0.34.2-cp39-abi3-macosx_10_12_x86_64.whl; databend_driver-0.34.2-cp39-abi3-macosx_11_0_arm64.whl; databend_driver-0.34.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; databend_driver-0.34.2-cp39-abi3-manylinux_2_28_aarch64.whl

License :: OSI Approved :: Apache Software LicenseOperating System :: MacOSOperating System :: Microsoft :: WindowsOperating System :: POSIXOperating System :: UnixProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPyProgramming Language :: RustTopic :: DatabaseTopic :: Scientific/Engineering :: Information AnalysisTopic :: Software DevelopmentTopic :: Software Development :: LibrariesTopic :: Software Development :: Libraries :: Application FrameworksTopic :: Software Development :: Libraries :: Python Modules

Tags

databend python clientdatabend driverlocal embedded analyticspython database connectionasync database clientsql query execution
databendasync-supportembedded-analytics

More Software Development packages