Skip to main content

No project description provided

Project description

Deltalake2DB

This is a simple project that uses Metadata from deltalake package to provide methods to read Delta Lake Tables to either Polars or DuckDB with better Protocol Support as the main deltalake package.

Use with Duckdb

Install deltalake2db and duckdb using pip/poetry/whatever you use.

Then you can do like this:

from deltalake2db import get_sql_for_delta,

with duckdb.connect() as con:
    dt = DeltaTable("tests/data/faker2")
    sql = get_sql_for_delta(dt, duck_con=con) # get select statement
    print(sql)
    duckdb_create_view_for_delta(con, dt, "delta_table") # or let it create a view for you. will point to the data at this point in time

    con.execute("select * from delta_table").fetch_all()

If you'd like to manipulate you can use get_sql_for_delta_expr which returns a SqlGlot Object

Use with Polars

Install deltalake2db and polars using pip/poetry/whatever you use.

dt = DeltaTable("tests/data/faker2")
from deltalake2db import polars_scan_delta
lazy_df = polars_scan_delta(dt)
df = lazy_df.collect()

Protocol Support

  • Column Mapping
  • Almost Data Types, including Structs/Lists, Map yet to be done
  • Test data types, including datetime
  • Deletion Vectors

In case there is an unsupported DeltaLake Feature, this will just throw DeltaProtocolError as does delta-rs

Cloud Support

For now, only az:// Url's for Azure are tested and supported in DuckDB. For polars it's a lot easier, since polars just uses object_store create, so it should just work.

Looking for something different? :)

We also have the following projects around deltalake:

Or projects from other people:

Project details


Download files

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

Source Distribution

deltalake2db-0.3.0.tar.gz (8.5 kB view details)

Uploaded Source

Built Distribution

deltalake2db-0.3.0-py3-none-any.whl (9.8 kB view details)

Uploaded Python 3

File details

Details for the file deltalake2db-0.3.0.tar.gz.

File metadata

  • Download URL: deltalake2db-0.3.0.tar.gz
  • Upload date:
  • Size: 8.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for deltalake2db-0.3.0.tar.gz
Algorithm Hash digest
SHA256 fb509a275c4af25ed11d04d9b3d0dd9bcf3b4eba194408f39c64c7865d4b1e2a
MD5 92c49fe9cb9d7314f82774a48fc90c6c
BLAKE2b-256 810026270a92feb6a6af0144ad04a96e513f0d4b2fc91dcda7f5d7ec9b9c4782

See more details on using hashes here.

File details

Details for the file deltalake2db-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: deltalake2db-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 9.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for deltalake2db-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2d7887f0e4bb36ee6eb11d111aea8cc4b04e602edb5cae19766d802fe6f82c13
MD5 e5ea279a9981307e4701c8eb82e0cc3c
BLAKE2b-256 b5d51828c0e921816c64ad507c9b2abd60bdf58d5544d73a70a957374cf7eca2

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page