Skip to content

Delta Funnel

Move Delta Lake data into SQL Server without Spark or an ODBC driver. Transform rows with DataFusion SQL, then load them through native TDS bulk writes.

Project status

Delta Funnel is early project code. The Rust crate is available on crates.io, and the Python package is available on PyPI.

Start here

Follow these steps in order:

  1. Install Delta Funnel.
  2. Choose one language:
  3. Core concepts: understand sessions, sources, tables, outputs, and reports.

Common tasks

Troubleshoot a run

Profile performance

Reference

About Delta Funnel

Surreal banner showing Delta Lake data flowing through a Rust-orange funnel into a database barrel.

Observed: 13.4M rows in ~14 minutes vs. a ~2 hour Spark/JDBC path.

Project links: GitHub, PyPI, crates.io, docs.rs, and release notes.

Why I wrote this

People like to have finalized golden-layer data ported into a relational database such as SQL Server. I work at an on-prem Microsoft shop, which made the practical deployment target a Windows VM. I had to set up WSL and Spark just to do that job, then deal with slow JDBC writes because sql-spark-connector is no longer maintained.

I built a native solution on top of delta-kernel-rs, tiberius, and datafusion without the overhead of the JVM or JDBC/ODBC.