# User Guide Apache DataFusion Java is a thin Java binding over the [Apache DataFusion](https://datafusion.apache.org/) query engine. SQL and DataFrame queries execute in native Rust; results return to the JVM as [Apache Arrow](https://arrow.apache.org/) record batches over the Arrow C Data Interface. This guide covers installation, the `SessionContext` and `DataFrame` APIs, and Parquet ingestion. ```{toctree} :maxdepth: 1 installation quickstart sessioncontext dataframe parquet proto-plans scalar-udf table-provider api-reference ``` > Early development: the API will change between releases. Bug reports > and contributions welcome.