1. 用戶提交查詢等任務(wù)給Driver。
2. Antlr解析器將SQL轉(zhuǎn)化為抽象語(yǔ)法樹(shù)AST Tree
3. 遍歷AST Tree,抽出基本的查詢單元QueryBlock
4. 遍歷QueryBlock,翻譯為執(zhí)行操作樹(shù)OperatorTree
5. 邏輯層優(yōu)化器進(jìn)行OperatorTree變換,合并不必要的ReduceSinkOperator,減少shuffle數(shù)據(jù)量
6. 遍歷OperatorTree,翻譯為MapReduce任務(wù)
7. 物理層優(yōu)化器進(jìn)行MapReduce任務(wù)的變換,生成最終的執(zhí)行計(jì)劃
8. 執(zhí)行計(jì)劃,返回結(jié)果