digraph G {
0 [labelType="html" label="<br><b>AdaptiveSparkPlan</b><br><br>"];
1 [labelType="html" label="<b>SortAggregate</b><br><br>number of output rows: 1"];
2 [labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 3<br>local merged chunks fetched: 0<br>shuffle write time total (min, med, max (stageId: taskId))<br>2 ms (0 ms, 0 ms, 1 ms (stage 492.0: task 504))<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 3<br>local bytes read: 182.0 B<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 3<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size total (min, med, max (stageId: taskId))<br>120.0 B (40.0 B, 40.0 B, 40.0 B (stage 492.0: task 506))<br>local merged bytes read: 0.0 B<br>number of partitions: 1<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>182.0 B (58.0 B, 58.0 B, 66.0 B (stage 492.0: task 505))"];
3 [labelType="html" label="<b>SortAggregate</b><br><br>number of output rows: 3"];
subgraph cluster4 {
isCluster="true";
label="WholeStageCodegen (1)\n \nduration: total (min, med, max (stageId: taskId))\n129 ms (41 ms, 41 ms, 47 ms (stage 492.0: task 505))";
5 [labelType="html" label="<br><b>Project</b><br><br>"];
6 [labelType="html" label="<b>ColumnarToRow</b><br><br>number of output rows: 9,522<br>number of input batches: 3"];
}
7 [labelType="html" label="<b>Scan parquet </b><br><br>number of files read: 1<br>scan time total (min, med, max (stageId: taskId))<br>14 ms (4 ms, 4 ms, 6 ms (stage 492.0: task 505))<br>metadata time: 0 ms<br>size of files read: 9.4 MiB<br>number of output rows: 9,522"];
1->0;
2->1;
3->2;
5->3;
6->5;
7->6;
}
8
AdaptiveSparkPlan isFinalPlan=true
SortAggregate(key=[], functions=[count(1), count(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674), min(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674), max(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674)])
Exchange SinglePartition, ENSURE_REQUIREMENTS, [plan_id=6748]
SortAggregate(key=[], functions=[partial_count(1), partial_count(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674), partial_min(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674), partial_max(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674)])
Project [VISIT_UNIT_ID_3245#43468 AS COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674]
ColumnarToRow
WholeStageCodegen (1)
FileScan parquet [VISIT_UNIT_ID_3245#43468] Batched: true, DataFilters: [], Format: Parquet, Location: InMemoryFileIndex(1 paths)[file:/data/output/cache/parquet/uet/DOCUMENT_3240], PartitionFilters: [], PushedFilters: [], ReadSchema: struct<VISIT_UNIT_ID_3245:string>
== Physical Plan ==
AdaptiveSparkPlan (12)
+- == Final Plan ==
SortAggregate (7)
+- ShuffleQueryStage (6), Statistics(sizeInBytes=120.0 B, rowCount=3)
+- Exchange (5)
+- SortAggregate (4)
+- * Project (3)
+- * ColumnarToRow (2)
+- Scan parquet (1)
+- == Initial Plan ==
SortAggregate (11)
+- Exchange (10)
+- SortAggregate (9)
+- Project (8)
+- Scan parquet (1)
(1) Scan parquet
Output [1]: [VISIT_UNIT_ID_3245#43468]
Batched: true
Location: InMemoryFileIndex [file:/data/output/cache/parquet/uet/DOCUMENT_3240]
ReadSchema: struct<VISIT_UNIT_ID_3245:string>
(2) ColumnarToRow [codegen id : 1]
Input [1]: [VISIT_UNIT_ID_3245#43468]
(3) Project [codegen id : 1]
Output [1]: [VISIT_UNIT_ID_3245#43468 AS COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674]
Input [1]: [VISIT_UNIT_ID_3245#43468]
(4) SortAggregate
Input [1]: [COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674]
Keys: []
Functions [4]: [partial_count(1), partial_count(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674), partial_min(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674), partial_max(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674)]
Aggregate Attributes [4]: [count#43747L, count#43748L, min#43749, max#43750]
Results [4]: [count#43751L, count#43752L, min#43753, max#43754]
(5) Exchange
Input [4]: [count#43751L, count#43752L, min#43753, max#43754]
Arguments: SinglePartition, ENSURE_REQUIREMENTS, [plan_id=6748]
(6) ShuffleQueryStage
Output [4]: [count#43751L, count#43752L, min#43753, max#43754]
Arguments: 0
(7) SortAggregate
Input [4]: [count#43751L, count#43752L, min#43753, max#43754]
Keys: []
Functions [4]: [count(1), count(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674), min(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674), max(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674)]
Aggregate Attributes [4]: [count(1)#43708L, count(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674)#43711L, min(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674)#43714, max(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674)#43716]
Results [4]: [count(1)#43708L AS COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D1#43710L, count(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674)#43711L AS COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D2#43713L, min(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674)#43714 AS COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D4#43715, max(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674)#43716 AS COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D5#43717]
(8) Project
Output [1]: [VISIT_UNIT_ID_3245#43468 AS COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674]
Input [1]: [VISIT_UNIT_ID_3245#43468]
(9) SortAggregate
Input [1]: [COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674]
Keys: []
Functions [4]: [partial_count(1), partial_count(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674), partial_min(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674), partial_max(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674)]
Aggregate Attributes [4]: [count#43747L, count#43748L, min#43749, max#43750]
Results [4]: [count#43751L, count#43752L, min#43753, max#43754]
(10) Exchange
Input [4]: [count#43751L, count#43752L, min#43753, max#43754]
Arguments: SinglePartition, ENSURE_REQUIREMENTS, [plan_id=6731]
(11) SortAggregate
Input [4]: [count#43751L, count#43752L, min#43753, max#43754]
Keys: []
Functions [4]: [count(1), count(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674), min(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674), max(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674)]
Aggregate Attributes [4]: [count(1)#43708L, count(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674)#43711L, min(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674)#43714, max(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674)#43716]
Results [4]: [count(1)#43708L AS COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D1#43710L, count(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674)#43711L AS COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D2#43713L, min(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674)#43714 AS COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D4#43715, max(COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D#43674)#43716 AS COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D5#43717]
(12) AdaptiveSparkPlan
Output [4]: [COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D1#43710L, COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D2#43713L, COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D4#43715, COL_8FADC0CC_2246_48BF_96B6_37B8BA1E1C0D5#43717]
Arguments: isFinalPlan=true