DeltaForge ADBC driver: Arrow-native read and write for Delta Lake and Apache Iceberg, carrying record batches end-to-end so BI tools skip row-by-row conversion
Project description
deltaforge-adbc
ADBC driver: Arrow-native read and write for Delta Lake and Apache Iceberg from Python
deltaforge.org · ADBC driver · Issues
Arrow-native read and write for Delta tables from Python, via the DeltaForge ADBC driver. The driver carries Arrow record batches end to end, so it is the preferred connector for wide-column scans and for writing DataFrames straight into Delta tables.
DeltaForge is commercial software with a free Community license. See deltaforge.org/pricing.
Install
pip install deltaforge-adbc
# optional DataFrame integrations:
pip install "deltaforge-adbc[pandas]" # or [polars]
The wheel bundles the native driver for your platform. No separate driver
install or unixODBC setup is required.
Connect
import deltaforge_adbc as df
conn = df.connect(
control_plane="https://control.example.com",
token="df_pat_...", # personal access token
compute="https://compute.example.com", # optional; auto-selected if omitted
)
Connection parameters also fall back to environment variables:
DELTAFORGE_CONTROL_PLANE_URL, DELTAFORGE_SESSION_TOKEN,
DELTAFORGE_COMPUTE_URL.
Read
table = df.read_table(conn, "SELECT * FROM sales.public.orders LIMIT 1000")
pdf = table.to_pandas() # pandas
# import polars as pl; pl.from_arrow(table) # polars
Write a DataFrame
import pandas as pd
frame = pd.DataFrame({"id": [1, 2, 3], "region": ["us", "eu", "us"], "qty": [10, 20, 30]})
# Append (default). Also: mode="replace" (overwrite), mode="upsert".
df.write_dataframe(conn, "sales.public.orders", frame, mode="append")
# Idempotent append: re-sending the same key is a no-op, not a duplicate.
df.write_dataframe(conn, "sales.public.orders", frame, mode="append",
idempotency_key="nightly-2026-05-31")
pandas, polars, and pyarrow inputs are all accepted; the target table must already exist.
Runnable examples
See examples/: read.py and write_dataframe.py are
self-contained scripts driven by the environment variables above.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file deltaforge_adbc-1.0.8-py3-none-win_amd64.whl.
File metadata
- Download URL: deltaforge_adbc-1.0.8-py3-none-win_amd64.whl
- Upload date:
- Size: 419.2 kB
- Tags: Python 3, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f76faab7ba52e79eb1fbe18584d8a1e155a8ecc94a7702bce1ae0f03dced4009
|
|
| MD5 |
163d115a5b953984dd3170290418a761
|
|
| BLAKE2b-256 |
bb6aa9eeba53cac73cc4b5f3dc1bcea233bbe8d7057c020154af31bc3c342394
|
File details
Details for the file deltaforge_adbc-1.0.8-py3-none-manylinux2014_x86_64.whl.
File metadata
- Download URL: deltaforge_adbc-1.0.8-py3-none-manylinux2014_x86_64.whl
- Upload date:
- Size: 611.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a4a531543c00cdbc9b630c60c7c4cf35a94b28655f9fdcaafd5beeb572049fd4
|
|
| MD5 |
483d21bf135e05a685dd8863fdee9cf0
|
|
| BLAKE2b-256 |
0243cc8aeea60b17fdb67a13aeb888343eb39e7a6b2c0f813c2b1e49821139df
|