| commit | 30e8ceff80dcb5d95d8f399917ac6c846986bdf7 | [log] [tgz] |
|---|---|---|
| author | Andy Grove <andygrove73@gmail.com> | Mon Sep 12 12:19:29 2022 -0600 |
| committer | GitHub <noreply@github.com> | Mon Sep 12 12:19:29 2022 -0600 |
| tree | 70fae6a72ba4654a039406f7de63a0a4ed83df51 | |
| parent | 1d4a928eb76627ed4f0923f1cae89cda6a9c035a [diff] |
Add logical plan support for aggregate expressions with filters (and upgrade to sqlparser 0.23) (#3405) * Use sqlparser-0.23 * Add filter to aggregate expressions * clippy * implement protobuf serde * clippy * fix error message * Update datafusion/expr/src/expr.rs Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org> Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
DataFusion is an extensible query planning, optimization, and execution framework, written in Rust, that uses Apache Arrow as its in-memory format.
TableProvider trait.DataFusion is modular in design with many extension points and can be used without modification as an embedded query engine and can also provide a foundation for building new systems. Here are some example use cases:
There are a number of community projects that extend DataFusion or provide integrations with other systems.
Here are some of the projects known to use DataFusion:
(if you know of another project, please submit a PR to add a link!)
Please see example usage to find how to use DataFusion.
Please see Roadmap for information of where the project is headed.
There is no formal document describing DataFusion's architecture yet, but the following presentations offer a good overview of its different components and how they interact together.
Please see User Guide for more information about DataFusion.
Please see Contributor Guide for information about contributing to DataFusion.