You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@datafusion.apache.org by gi...@apache.org on 2026/07/18 14:54:30 UTC
(datafusion-ballista) branch asf-site updated: Publish built docs triggered by fd5aa65d6e332d532cd8220b524bac2daeca15f9
This is an automated email from the ASF dual-hosted git repository.
github-actions[bot] pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/datafusion-ballista.git
The following commit(s) were added to refs/heads/asf-site by this push:
new ade6c2ce4 Publish built docs triggered by fd5aa65d6e332d532cd8220b524bac2daeca15f9
ade6c2ce4 is described below
commit ade6c2ce463dfcbb7b69d0ade767562e4d35db44
Author: github-actions[bot] <gi...@users.noreply.github.com>
AuthorDate: Sat Jul 18 14:54:26 2026 +0000
Publish built docs triggered by fd5aa65d6e332d532cd8220b524bac2daeca15f9
---
_sources/user-guide/tuning-guide.md.txt | 11 ++++++++---
searchindex.js | 2 +-
user-guide/tuning-guide.html | 13 +++++++++++++
3 files changed, 22 insertions(+), 4 deletions(-)
diff --git a/_sources/user-guide/tuning-guide.md.txt b/_sources/user-guide/tuning-guide.md.txt
index c8845ba22..c2daa312b 100644
--- a/_sources/user-guide/tuning-guide.md.txt
+++ b/_sources/user-guide/tuning-guide.md.txt
@@ -196,9 +196,11 @@ Adaptive Query Planning is EXPERIMENTAL, should be used for testing purposes onl
### Configuration
-| key | type | default | description |
-| --------------------------------- | ------- | ------- | ------------------------------------------- |
-| ballista.planner.adaptive.enabled | Boolean | false | Enables the adaptive planner. Experimental. |
+| key | type | default | description |
+| ------------------------------------------------- | ------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| ballista.planner.adaptive.enabled | Boolean | false | Enables the adaptive planner. Experimental. |
+| ballista.optimizer.broadcast_join_threshold_bytes | UInt64 | 10485760 | Byte-size threshold below which a hash join's smaller side is broadcast (`CollectLeft`). Governs both the static planner and AQE. Set to 0 to disable broadcast joins. |
+| ballista.optimizer.broadcast_join_threshold_rows | UInt64 | 1000000 | Row-count fallback threshold used when byte-size statistics are unavailable. Applies to AQE. Set to 0 to disable promotion via the row-count path. |
### What AQE does today
@@ -209,6 +211,9 @@ implemented:
- **Join reordering.** Uses runtime row counts from completed stages so the
smaller side drives the join.
+- **Broadcast join selection.** When a join input's runtime size falls under
+ `ballista.optimizer.broadcast_join_threshold_bytes` (or the row-count
+ fallback), the smaller side is broadcast (`CollectLeft`) instead of shuffled.
- **Empty stage elimination.** When a completed stage produces zero rows, its
downstream exchange is replaced with an empty execution node, and emptiness
is propagated up the plan so downstream stages are skipped entirely.
diff --git a/searchindex.js b/searchindex.js
index 1a6ade22b..78d8adb32 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles":{"AQE join behavior (opt-in)":[[27,"aqe-join-behavior-opt-in"]],"Adaptive Query Execution (AQE)":[[21,"adaptive-query-execution-aqe"]],"Adaptive Query Execution (Experimental)":[[50,"adaptive-query-execution-experimental"]],"Adding a persona":[[25,"adding-a-persona"]],"Aggregate Functions":[[49,"aggregate-functions"]],"Apache DataFusion Ballista":[[26,null]],"Apache DataFusion Ballista 0.10.0 Changelog":[[0,null]],"Apache DataFusion Ballista 0.11.0 Changelog" [...]
\ No newline at end of file
+Search.setIndex({"alltitles":{"AQE join behavior (opt-in)":[[27,"aqe-join-behavior-opt-in"]],"Adaptive Query Execution (AQE)":[[21,"adaptive-query-execution-aqe"]],"Adaptive Query Execution (Experimental)":[[50,"adaptive-query-execution-experimental"]],"Adding a persona":[[25,"adding-a-persona"]],"Aggregate Functions":[[49,"aggregate-functions"]],"Apache DataFusion Ballista":[[26,null]],"Apache DataFusion Ballista 0.10.0 Changelog":[[0,null]],"Apache DataFusion Ballista 0.11.0 Changelog" [...]
\ No newline at end of file
diff --git a/user-guide/tuning-guide.html b/user-guide/tuning-guide.html
index d98ced482..4ae2b2907 100644
--- a/user-guide/tuning-guide.html
+++ b/user-guide/tuning-guide.html
@@ -585,6 +585,16 @@ clear that AQE was used:</p>
<td><p>false</p></td>
<td><p>Enables the adaptive planner. Experimental.</p></td>
</tr>
+<tr class="row-odd"><td><p>ballista.optimizer.broadcast_join_threshold_bytes</p></td>
+<td><p>UInt64</p></td>
+<td><p>10485760</p></td>
+<td><p>Byte-size threshold below which a hash join’s smaller side is broadcast (<code class="docutils literal notranslate"><span class="pre">CollectLeft</span></code>). Governs both the static planner and AQE. Set to 0 to disable broadcast joins.</p></td>
+</tr>
+<tr class="row-even"><td><p>ballista.optimizer.broadcast_join_threshold_rows</p></td>
+<td><p>UInt64</p></td>
+<td><p>1000000</p></td>
+<td><p>Row-count fallback threshold used when byte-size statistics are unavailable. Applies to AQE. Set to 0 to disable promotion via the row-count path.</p></td>
+</tr>
</tbody>
</table>
</div>
@@ -598,6 +608,9 @@ implemented:</p>
<ul class="simple">
<li><p><strong>Join reordering.</strong> Uses runtime row counts from completed stages so the
smaller side drives the join.</p></li>
+<li><p><strong>Broadcast join selection.</strong> When a join input’s runtime size falls under
+<code class="docutils literal notranslate"><span class="pre">ballista.optimizer.broadcast_join_threshold_bytes</span></code> (or the row-count
+fallback), the smaller side is broadcast (<code class="docutils literal notranslate"><span class="pre">CollectLeft</span></code>) instead of shuffled.</p></li>
<li><p><strong>Empty stage elimination.</strong> When a completed stage produces zero rows, its
downstream exchange is replaced with an empty execution node, and emptiness
is propagated up the plan so downstream stages are skipped entirely.</p></li>
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datafusion.apache.org
For additional commands, e-mail: commits-help@datafusion.apache.org