Skip to content
You're viewing the beta version. Looking for legacy docs? Click here.

Delta Lake APIs

Delta Spark is a library for reading and writing Delta tables using Apache Spark™. For most read and write operations on Delta tables, you can use Apache Spark reader and writer APIs. For examples, see Table batch reads and writes and Table streaming reads and writes.

However, there are some operations that are specific to Delta Lake and you must use Delta Lake APIs. For examples, see Table utility commands.

Delta Kernel is a library for operating on Delta tables. Specifically, it provides simple and narrow APIs for reading and writing to Delta tables without the need to understand the Delta protocol details. You can use this library to do the following:

  • Read Delta tables from your applications.
  • Build a connector for a distributed engine like Apache Spark™, Apache Flink, or Trino for reading massive Delta tables.

More details refer here.

This library allows Rust (with Python bindings) low level access to Delta tables and is intended to be used with data processing frameworks like datafusion, ballista, rust-dataframe, vega, etc.

Delta Standalone, formerly known as the Delta Standalone Reader (DSR), is a JVM library to read and write Delta tables. Unlike Delta-Spark, this library doesn’t use Spark to read or write tables and it has only a few transitive dependencies. It can be used by any application that cannot use a Spark cluster. More details refer here.

Flink/Delta Connector is a JVM library to read and write data from Apache Flink applications to Delta tables utilizing the Delta Standalone JVM library. More details refer here.