背景
今天偶然有机会看见了以前一位同学在 join 中使用了 mapjoin 小表广播的优化,由此激起了我对 select 语法中的 hints 部分的深入挖掘,并分享出来,供小伙伴们参考,不足之处,还望赐教!
注:本文基于 spark 2.4.5,最新版本的 spark 可能会有 api 变化。
目录
- select 基本语法
- hints 来源
- hints 的语法和选项
- hints 使用的组合
内容
1 select 基本语法结构
SELECT [hints, ...] [ALL|DISTINCT] named_expression[, named_expression, ...]
FROM relation[, relation, ...]
[lateral_view[, lateral_view, ...]]
[WHERE boolean_expression]
[aggregation [HAVING boolean_expression]]
[ORDER BY sort_expressions]
[CLUSTER BY expressions]
[DISTRIBUTE BY expressions]
[SORT BY sort_expressions]
[WINDOW named_window[, WINDOW na