adbc-driver-manager
A generic entrypoint for ADBC drivers.
What it is and what it does
ADBC Driver Manager is a Python package that acts as a generic loader for Apache Arrow Database Connectivity (ADBC) drivers. It provides both low-level bindings to the ADBC Driver Manager and a higher-level DBAPI 2.0-compatible interface (PEP 249) that lets you connect to databases through pluggable ADBC drivers at runtime. The package depends only on typing-extensions and requires Python >=3.10.
The main use case is as a foundation layer: backend-specific packages wrap this manager to provide a more convenient interface for their particular database. The DBAPI 2.0 interface includes extensions to retrieve Arrow Table objects instead of being limited to row-oriented results. This is useful when you need to work with columnar data or integrate with data processing pipelines that expect Arrow format.
Use it for:
- Load ADBC drivers dynamically at runtime without hardcoding a specific database backend.
- Use a DBAPI 2.0-compatible interface to query databases and retrieve results as Arrow Tables for columnar processing.
- Build database abstraction layers that support multiple backends through the ADBC standard.
- Integrate with data pipelines that expect Arrow format for efficient columnar data transfer.
- Develop tools that need to connect to multiple database types without depending on driver-specific packages.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides Python bindings to load and use ADBC database drivers at runtime, with a DBAPI 2.0-compatible interface and support for retrieving Arrow Table objects.
Yes, if you need a generic, runtime-loadable interface to ADBC drivers or are building a database abstraction layer. The active maintenance, permissive license, and lack of known vulnerabilities make it safe to use. Medium install friction is acceptable for a compiled package with broad platform support. Prefer backend-specific wrappers where they exist for a simpler API.
Install
adbc-driver-manager on PyPI
pip
pip install adbc-driver-manageruv
uv add adbc-driver-managerpoetry
poetry add adbc-driver-managerInstalling adbc-driver-manager
Before you install
Medium install friction due to compiled wheels for multiple Python versions and platforms. Active maintenance with recent releases; last commit 2026-08-14 and 621 repository stars indicate ongoing development.
License in practice
Apache-2.0 permissive license allows use in commercial and proprietary projects with minimal restrictions; attribution required.
Quickstart
pip install adbc-driver-manager
import adbc_driver_manager
driver = adbc_driver_manager.load_driver('sqlite')
Requires a C++ compiler to build from source; prebuilt wheels available for Python 3.10 and later on macOS, Linux, and Windows. ADBC drivers must be loadable at runtime (e.g., on LD_LIBRARY_PATH or DYLD_LIBRARY_PATH).
Verify before relying
- Whether PyArrow is required as a runtime dependency or only for the DBAPI 2.0 Arrow extensions
- Which ADBC drivers are available and how they are distributed separately
- Performance characteristics compared to direct database drivers
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | 1 — typing-extensions |
| Maintenance | actively maintained — 17 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 2,788,758/month — #2,890 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: adbc_driver_manager-1.12.0-cp310-cp310-macosx_10_15_x86_64.whl; adbc_driver_manager-1.12.0-cp310-cp310-macosx_11_0_arm64.whl; adbc_driver_manager-1.12.0-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl; adbc_driver_manager-1.12.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl; adbc_driver_manager-1.12.0-cp310-cp310-win_amd64.whl; adbc_driver_manager-1.12.0-cp311-cp311-macosx_10_15_x86_64.whl; adbc_driver_manager-1.12.0-cp311-cp311-macosx_11_0_arm64.whl; adbc_driver_manager-1.12.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl; adbc_driver_manager-1.12.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl; adbc_driver_manager-1.12.0-cp311-cp311-win_amd64.whl; adbc_driver_manager-1.12.0-cp312-cp312-macosx_10_15_x86_64.whl; adbc_driver_manager-1.12.0-cp312-cp312-macosx_11_0_arm64.whl; adbc_driver_manager-1.12.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl; adbc_driver_manager-1.12.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl; adbc_driver_manager-1.12.0-cp312-cp312-win_amd64.whl; adbc_driver_manager-1.12.0-cp313-cp313-macosx_10_15_x86_64.whl; adbc_driver_manager-1.12.0-cp313-cp313-macosx_11_0_arm64.whl; adbc_driver_manager-1.12.0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl; adbc_driver_manager-1.12.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl; adbc_driver_manager-1.12.0-cp313-cp313-win_amd64.whl
Tags
More Database packages
psycopg2-binary is a PostgreSQL database…
copyleft · top 1,000 on PyPI
redisPython client library for connecting to and…
permissive · top 1,000 on PyPI
ydbYDB Python SDK is the official client library…
permissive · top 1,000 on PyPI
snowflake-connector-pythonConnects Python applications to Snowflake data…
permissive · top 1,000 on PyPI
sqlparsesqlparse tokenizes SQL text into a tree of…
permissive · top 1,000 on PyPI
dbt-adaptersProvides base adapter protocols and shared…
permissive · top 1,000 on PyPI
adbc-driver-sqliteProvides a DBAPI 2.0-compatible Python…
permissive · top 5,000 on PyPI
adbc-driver-postgresqlProvides a DBAPI 2.0-compatible Python…
permissive · top 5,000 on PyPI
arrow-odbcReads data from ODBC data sources directly into…
permissive · top 15,000 on PyPI
adbc-driver-flightsqlProvides a DBAPI 2.0-compatible Python…
permissive · top 15,000 on PyPI
adbc-driver-snowflakeProvides a DBAPI 2.0-compatible interface to…
permissive · top 15,000 on PyPI
pymonetdbpymonetdb is a native Python client library for…
copyleft · top 15,000 on PyPI
pyarrowpyarrow provides Python bindings to Apache…
permissive · top 100 on PyPI
ydb-dbapiA Python DBAPI driver for YDB that provides…
unclear · top 5,000 on PyPI
datafusionDataFusion is a Python binding to Apache…
permissive · top 5,000 on PyPI
sqlalchemy-jdbcapiSQLAlchemy dialect for JDBC and ODBC database…
permissive · top 15,000 on PyPI