解釋(磚SQL)
為輸入語句提供邏輯或物理計劃。默認情況下,該子句隻提供物理計劃的信息。
參數
擴展
生成解析邏輯計劃,分析邏輯計劃,優化邏輯計劃和物理計劃。Parsed邏輯計劃是從查詢中提取的未解析計劃。已分析的邏輯計劃轉換,將unresolvedAttribute和unresolvedRelation轉換為全類型對象。經過優化的邏輯計劃通過一組優化規則進行轉換,從而產生物理計劃。
CODEGEN
為語句生成代碼(如果有的話)和一個物理計劃。
成本
如果計劃節點統計信息可用,則生成邏輯計劃和統計信息。
格式化
生成兩個部分:物理規劃大綱和節點詳細信息。
聲明
需要解釋的SQL語句。
例子
——默認輸出>解釋選擇k,總和(v)從值(1,2),(1,3.)t(k,v)集團通過k;
+----------------------------------------------------+|計劃|+----------------------------------------------------+|==物理計劃==*(2)HashAggregate(鍵=[k#33], function =[sum(cast(v#34 as bigint))])+-交換hashpartitioning(k#33, 200), true, [id=#59]+-*(1)HashAggregate(鍵=[k#33], functions=[partial_sum(cast(v#34 as bigint))])+-*(1)LocalTableScan[k# 33, v # 34)|+------------------------------------------------------使用擴展
>解釋擴展選擇k,總和(v)從值(1,2),(1,3.)t(k,v)集團通過k;
+----------------------------------------------------+ | 計劃 | +----------------------------------------------------+ | == 解析邏輯計劃= = '總[k], [' k, unresolvedalias(“sum (v),沒有一個)]+ -的SubqueryAlias”t“+ -”UnresolvedInlineTable [k、v],[列表(1、2),(3)]= =分析邏輯計劃= = k: int,總和(v):bigint Aggregate [k#47], [k#47, sum(cast(v#48 as bigint)) as sum(v)#50L] +- SubqueryAlias ' t ' +- LocalRelation [k#47] == Optimized Logical Plan == Aggregate [k#47], [k#47, sum(k#47)) == LocalRelation [k#47, v#48] == Physical Plan == *(2) HashAggregate(keys=[k#47], functions=[sum(cast(v#48 as bigint))], output=[k#47, sum(v)#50L]) +- Exchange hashpartitioning(k#47, 200), true, [id=#79] +- *(1) HashAggregate(keys=[k#47],函數= [partial_sum (cast (# 48 v為bigint))),輸出= [k # 47 # 52和l]) + - * (1) LocalTableScan [k # 47 # 48 v ] | +----------------------------------------------------+ -- 使用格式化的
>解釋格式化選擇k,總和(v)從值(1,2),(1,3.)t(k,v)集團通過k;
+----------------------------------------------------+|計劃|+----------------------------------------------------+|==物理計劃==*HashAggregate(4)+-交換(3.)+-*HashAggregate(2)+-*LocalTableScan(1)(1)LocalTableScan[codegenid:1]輸出:[kv # # 19日20)(2)HashAggregate[codegenid:1]輸入:[kv # # 19日20)(3.)交換輸入:[k和# # 19日24 l](4)HashAggregate[codegenid:2]輸入:[k和# # 19日24 l]|+----------------------------------------------------+