Closed
Description
Description
I'm thinking about something we might want to work toward in 2023, and an ADBC driver might be a good focus. We would aim to use this to support integration with DuckDB and Polars, as well as to upgrade the Python reader and writer. (DataFusion could also use this, but likely we will have direct support using the underlying implementation; see the doc for details.)
Draft design doc here, open to comments: https://docs.google.com/document/d/1ud-iBPg8VVz2N3HxySz9qbrffw6a9I7TiGZJ2MBs7ZE/edit?usp=sharing
Use Case
Make it easy to build connectors to Delta-rs, no matter the language, and with strong guarantees of implementation correctness.
Related Issue(s)
Work on ADBC driver (in rough priority order):
- Create initial ADBC connector that provides access to delta lake catalogue
- Add support for
SELECT
queries - Set up DAT reader tests for connector
- Set up object store parameters and integration tests
- Add support for
SELECT COUNT(*)
queries - Add support for
OPTIMIZE
andVACUUM
- Add support for
CREATE
andINSERT INTO/OVERWRITE
- Set up DAT writer tests
- Add support for
UPDATE
- Add support for
DELETE
- Add support for
MERGE
- Add Substrait support for all queries
Downstream work enabled by driver:
- Switch Python bindings to read and write from ADBC driver
- Create R bindings
- Create DuckDB plugin
- Create Polars integration
- Ibis integration?