| commit | 80f7bbf4ab183c8ec551fc9c26a4365fca65b68c | [log] [tgz] |
|---|---|---|
| author | Andy Grove <agrove@apache.org> | Thu May 12 08:47:57 2022 -0600 |
| committer | GitHub <noreply@github.com> | Thu May 12 08:47:57 2022 -0600 |
| tree | 745b481ce6b827b88016feb4f81017a243b861a0 | |
| parent | 19d937a0f3c99be361df4bc912cc340a6196634a [diff] |
Add new `ballista-cli` crate (#2495) * Add new ballista-cli crate * update dependency diagram * re-use PrintFormat from datafusion-cli * re-use PrintOptions from datafusion-cli * re-use Helper * re-use functions * update dev scripts * update diagram and docs * stop building DataFusion CLI with ballista in CI * update user guide * docs for building ballista-cli with docker * make version numbers consistent with repo * update Cargo.lock files for CLIs and add ballista-cli to GitHub workflow * disable ballista tests * fix ci * fix merge conflict * fix
DataFusion is an extensible query execution framework, written in Rust, that uses Apache Arrow as its in-memory format.
DataFusion supports both an SQL and a DataFrame API for building logical query plans as well as a query optimizer and execution engine capable of parallel execution against partitioned data sources (CSV and Parquet) using threads.
DataFusion also supports distributed query execution via the Ballista crate.
DataFusion is used to create modern, fast and efficient data pipelines, ETL processes, and database systems, which need the performance of Rust and Apache Arrow and want to provide their users the convenience of an SQL interface or a DataFrame API.
Projects that adapt to or serve as plugins to DataFusion:
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 Contribution Guide for information about contributing to DataFusion.