Skip to main content

Deltalake-python

PyPI userdoc apidoc

Native Delta Lake Python binding based on delta-rs with Pandas integration.

Example

from deltalake import DeltaTable
dt = DeltaTable("../rust/tests/data/delta-0.2.0")
dt.version()
3
dt.file_uris()
['s3://bucket/table/part-00000-cb6b150b-30b8-4662-ad28-ff32ddab96d2-c000.snappy.parquet',
 's3://bucket/table/part-00000-7c2deba3-1994-4fb8-bc07-d46c948aa415-c000.snappy.parquet',
 's3://bucket/table/part-00001-c373a5bd-85f0-4758-815e-7eb62007a15c-c000.snappy.parquet']

See the user guide for more examples.

Installation

# with pip
pip install deltalake
# with uv
uv add deltalake
# with poetry
poetry add deltalake

NOTE: official binary wheels are linked against openssl statically for remote object store communication. Please file a Github issue to request a critical openssl upgrade.

Tracing and Observability

Delta-rs supports OpenTelemetry tracing for performance analysis and debugging.

Basic Example

import os
import deltalake
from deltalake import write_deltalake, DeltaTable

# Enable logging to see trace output in stdout
os.environ["RUST_LOG"] = "deltalake=debug"

# Initialize tracing (uses default HTTP endpoint or OTEL_EXPORTER_OTLP_ENDPOINT env var)
# For authentication, set OTEL_EXPORTER_OTLP_HEADERS="x-honeycomb-team=your-api-key"
# The HTTP exporter automatically reads OTEL_EXPORTER_OTLP_HEADERS for API keys
deltalake.init_tracing()

# All Delta operations are now traced
write_deltalake("my_table", data)
dt = DeltaTable("my_table")
df = dt.to_pandas()

When you run this code, you'll see trace information in stdout showing operation timings and execution flow.

Build custom wheels

Sometimes you may wish to build custom wheels. Maybe you want to try out some unreleased features. Or maybe you want to tweak the optimization of the Rust code.

To compile the package, you will need the Rust compiler and maturin:

curl https://sh.rustup.rs -sSf | sh -s

Then you can build wheels for your own platform like so:

uvx maturin build --release --out wheels

Note:

  • uvx invokes a tool without installing it.
  • if you plan to often use maturin, you can install the "tool" with uv tool install maturin.

For a build that is optimized for the system you are on (but sacrificing portability):

RUSTFLAGS="-C target-cpu=native" uvx maturin build --release --out wheels

Cross compilation

The above command only works for your current platform. To create wheels for other platforms, you'll need to cross compile. Cross compilation requires installing two additional components: to cross compile Rust code, you will need to install the target with rustup; to cross compile the Python bindings, you will need to install ziglang.

The following example is for manylinux2014. Other targets will require different Rust target and Python compatibility tags.

rustup target add x86_64-unknown-linux-gnu

Then you can build wheels for the target platform like so:

uvx --from 'maturin[zig]' maturin build --release --zig \
    --target x86_64-unknown-linux-gnu \
    --compatibility manylinux2014 \
    --out wheels

If you expect to only run on more modern system, you can set a newer target-cpu flag to Rust and use a newer compatibility tag for Linux. For example, here we set compatibility with CPUs newer than Haswell (2013) and Linux OS with glibc version of at least 2.24:

RUSTFLAGS="-C target-cpu=haswell" uvx --from 'maturin[zig]' maturin build --release --zig \
    --target x86_64-unknown-linux-gnu \
    --compatibility manylinux_2_24 \
    --out wheels

See note about RUSTFLAGS from the arrow-rs readme.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

deltalake-1.6.3.tar.gz (5.6 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

deltalake-1.6.3-cp310-abi3-win_amd64.whl (55.4 MB view details)

Uploaded CPython 3.10+Windows x86-64

deltalake-1.6.3-cp310-abi3-musllinux_1_2_x86_64.whl (51.9 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ x86-64

deltalake-1.6.3-cp310-abi3-musllinux_1_2_aarch64.whl (50.8 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ ARM64

deltalake-1.6.3-cp310-abi3-manylinux_2_28_aarch64.whl (50.8 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.28+ ARM64

deltalake-1.6.3-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (51.9 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ x86-64

deltalake-1.6.3-cp310-abi3-macosx_11_0_arm64.whl (47.0 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

deltalake-1.6.3-cp310-abi3-macosx_10_12_x86_64.whl (50.7 MB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

File details

Details for the file deltalake-1.6.3.tar.gz.

File metadata

  • Download URL: deltalake-1.6.3.tar.gz
  • Upload date:
  • Size: 5.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.14.1

File hashes

Hashes for deltalake-1.6.3.tar.gz
Algorithm Hash digest
SHA256 b7176c9d2a48b3ad339902e6216cdde813857b9628ef53e972889c71d2836fc4
MD5 5a132ece4a02bea0982e20509e059422
BLAKE2b-256 08ca62354ebb384806b3496b25708ac605af54c5ed11cb2a8111ea1892aec9c9

See more details on using hashes here.

File details

Details for the file deltalake-1.6.3-cp310-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for deltalake-1.6.3-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 7920a60510376f3c90feb62d182063b0202f117411e73ff9f23ffe969b800dce
MD5 d1d69666babde455c2ca7b4b8ba68bd0
BLAKE2b-256 639128cb7e0edf10f05f1025e2b4bb0085a1b23aa11472c06e43f1c5897c183e

See more details on using hashes here.

File details

Details for the file deltalake-1.6.3-cp310-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for deltalake-1.6.3-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 b51d0109b0a86b336c7254a01495536d69c72593663d8de0bc320aa4523c0502
MD5 f5c427a3a4ba36aa9f621fea1a4fc5ba
BLAKE2b-256 5ec25cf8b65d6ddb2a3b0b0b1f4359ddbfba1afa93764bb6e19fc4d31dd8dba8

See more details on using hashes here.

File details

Details for the file deltalake-1.6.3-cp310-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for deltalake-1.6.3-cp310-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 8f2de230b5cd979b3b984db3b9a24bf14722d4b46a4d062b41fe3fd2e5bfbd68
MD5 660b8fe96147ba7a2f48f64ab5b7ffac
BLAKE2b-256 7ae0038b81370988e47e80e8e243355a49c3f58c20624375df6c5140f922dfd1

See more details on using hashes here.

File details

Details for the file deltalake-1.6.3-cp310-abi3-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for deltalake-1.6.3-cp310-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d5aa5f89367deca941ed5e8496b6f6521b42ff0380609ff7a02f771ae9ae7abe
MD5 d9f0fb726822cb02b59a6f6bf4bdecb2
BLAKE2b-256 6a5a18a21ca1b75228e2a5655616e2493f7dfe7c75397c5b7a616299342feeae

See more details on using hashes here.

File details

Details for the file deltalake-1.6.3-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for deltalake-1.6.3-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1a5163ed5550f5b83ba6f9a95b5e3dff09934a3165fb80ee0ab8e5919782ac6c
MD5 282d1dd6b95d025930e421a429e76b0a
BLAKE2b-256 9bd868505832d7fdf3cae5f4bcf5bb1d7fb31a8e07f909515bf845b09b3ec58c

See more details on using hashes here.

File details

Details for the file deltalake-1.6.3-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for deltalake-1.6.3-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8cec745b5dff6581c0b26c5136e3f9eea7ac715a684fe4459b5c37c66407ae02
MD5 f5774e824587819b984e1abec04bd7c9
BLAKE2b-256 505456c21b2c7dcee35ad84fcd4aeb73043440320e7ed0114185610a4dd96e14

See more details on using hashes here.

File details

Details for the file deltalake-1.6.3-cp310-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for deltalake-1.6.3-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c25928df2a30a19dec3f86ffd931fd59b7f175b5781ba998b34001eb4d49e1f7
MD5 e7e3b2feffb86b605b31e67448148b6f
BLAKE2b-256 e826048812e37921a88935fc75811905dab15a97fc76570a7f6716e68b855cce

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.6.3 This release

8 files

1.6.2

7 files

1.6.1

6 files

1.6.0

7 files

1.5.1

7 files

1.5.0

7 files

1.4.2

7 files

1.4.1

7 files

1.4.0

7 files

1.3.3

7 files

1.3.2

7 files

1.3.1

7 files

1.3.0

6 files

1.2.1

7 files

1.2.0

7 files

1.1.4

8 files

1.1.3

8 files

1.1.2

7 files

1.1.1

3 files

1.1.0

7 files

1.0.2

7 files

1.0.1

7 files

1.0.0

7 files

0.25.5

7 files

0.25.4

7 files

0.25.2

7 files

0.25.1

6 files

0.25.0

3 files

0.24.0

6 files

0.23.2

6 files

0.23.1

6 files

0.23.0

6 files

0.22.3

6 files

0.21.0

6 files

0.20.2

6 files

0.20.1

6 files

0.20.0

6 files

0.19.2

6 files

0.19.1

6 files

0.19.0

6 files

0.18.2

6 files

0.18.1

6 files

0.18.0

6 files

0.17.4

6 files

0.17.3

6 files

0.17.2

6 files

0.17.1

6 files

0.17.0

6 files

0.16.4

6 files

0.16.3

6 files

0.16.2

6 files

0.16.1

6 files

0.16.0

6 files

0.15.3

6 files

0.15.2

6 files

0.15.1

6 files

0.15.0

6 files

0.14.0

7 files

0.13.0

7 files

0.12.0

7 files

0.11.0

7 files

0.10.2

7 files

0.10.1

6 files

0.10.0

7 files

0.9.0

7 files

0.8.1

7 files

0.8.0

7 files

0.7.0

7 files

0.6.4

6 files

0.6.3

6 files

0.6.2

6 files

0.6.1

5 files

0.6.0

6 files

0.5.8

6 files

0.5.7

5 files

0.5.6

5 files

0.5.5

4 files

0.5.4

4 files

0.5.3

4 files

0.5.2

4 files

0.5.1

4 files

0.5.0

4 files

0.4.8

3 files

0.4.7

3 files

0.4.6

3 files

0.4.5

3 files

0.4.4

3 files

0.4.3

0.4.2

0.4.1

3 files

0.4.0

3 files

0.3.0

3 files

0.2.1

3 files

0.2.0

3 files

0.1.4

12 files

0.1.3

12 files

0.1.2

8 files

0.1.1

12 files

0.1.0

13 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page