graphql-engine/v3/crates/sql
dependabot[bot] 7a0eb6847a Bump async-trait from 0.1.80 to 0.1.81 (#804)
Bumps [async-trait](https://github.com/dtolnay/async-trait) from 0.1.80 to 0.1.81.

V3_GIT_ORIGIN_REV_ID: 1e9a6a6a40b6b0f732774df1e7a52b8a182f70c1
2024-07-08 08:32:04 +00:00
..
src Reimplement most OpenDD newtypes using SmolStr and a macro (#797) 2024-07-05 10:16:33 +00:00
Cargo.toml Bump async-trait from 0.1.80 to 0.1.81 (#804) 2024-07-08 08:32:04 +00:00
readme.md Experimental SQL interface (#742) 2024-06-25 18:46:39 +00:00

SQL Interface

An experimental SQL interface over OpenDD models. This is mostly targeted at AI use cases for now - GenAI models are better at generating SQL queries than GraphQL queries.

This is implemented using the Apache DataFusion Query Engine by deriving the SQL metadata for datafusion from Open DDS metadata. As the implementation currently stands, once we get a LogicalPlan from datafusion we replace TableScans with NDC queries to the underlying connector. There is a rudimentary optimizer that pushes down projections to the ndc query so that we don't fetch all the columns of a collection.