digraph G {
0 [id="node0" labelType="html" label="<br><b>AdaptiveSparkPlan</b><br><br>" tooltip="AdaptiveSparkPlan isFinalPlan=true"];
1 [id="node1" labelType="html" label="<b>Execute InsertIntoHadoopFsRelationCommand</b><br><br>task commit time total (min, med, max (stageId: taskId))<br>2.0 s (14 ms, 19 ms, 359 ms (stage 68208.0: task 170092))<br>number of written files: 4<br>job commit time: 994 ms<br>number of output rows: 6<br>number of dynamic part: 0<br>written output: 7.0 KiB" tooltip="Execute InsertIntoHadoopFsRelationCommand hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/out/product-plant-list/10000002109/shardId=0_1_10000002109, false, Parquet, [path=hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/out/product-plant-list/10000002109/shardId=0_1_10000002109], Overwrite, [product, plant, orderDateTime, planningStartDateTime]"];
2 [id="node2" labelType="html" label="<br><b>WriteFiles</b><br><br>" tooltip="WriteFiles"];
subgraph cluster3 {
isCluster="true";
id="cluster3";
label="WholeStageCodegen (3)\n \nduration: total (min, med, max (stageId: taskId))\n234 ms (0 ms, 0 ms, 65 ms (stage 68208.0: task 170092))";
tooltip="WholeStageCodegen (3)";
4 [id="node4" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#825143, plant#825138, orderDateTime#825144, 2026-08-10 11:25:00 AS planningStartDateTime#825164]"];
5 [id="node5" labelType="html" label="<b>Filter</b><br><br>number of output rows: 6" tooltip="Filter (rank#825162 = 1)"];
}
6 [id="node6" labelType="html" label="<b>Window</b><br><br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 68208.0: task 170101))" tooltip="Window [row_number() windowspecdefinition(product#825143, plant#825138, orderDateTime#825144 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS rank#825162], [product#825143, plant#825138], [orderDateTime#825144 ASC NULLS FIRST]"];
7 [id="node7" labelType="html" label="<b>WindowGroupLimit</b><br><br>number of output rows: 6" tooltip="WindowGroupLimit [product#825143, plant#825138], [orderDateTime#825144 ASC NULLS FIRST], row_number(), 1, Final"];
subgraph cluster8 {
isCluster="true";
id="cluster8";
label="WholeStageCodegen (2)\n \nduration: total (min, med, max (stageId: taskId))\n1.7 s (0 ms, 0 ms, 282 ms (stage 68208.0: task 170092))";
tooltip="WholeStageCodegen (2)";
9 [id="node9" labelType="html" label="<b>Sort</b><br><br>sort time total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 68208.0: task 170101))<br>peak memory total (min, med, max (stageId: taskId))<br>9.6 MiB (64.0 KiB, 64.0 KiB, 2.1 MiB (stage 68208.0: task 170094))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 68208.0: task 170101))" tooltip="Sort [product#825143 ASC NULLS FIRST, plant#825138 ASC NULLS FIRST, orderDateTime#825144 ASC NULLS FIRST], false, 0"];
}
10 [id="node10" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 18<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 18<br>local bytes read total (min, med, max (stageId: taskId))<br>809.0 B (172.0 B, 229.0 B, 236.0 B (stage 68208.0: task 170095))<br>merged fetch fallback count: 0<br>local blocks read: 4<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 1728.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 68208.0: task 170094))<br>remote bytes read: 0.0 B<br>number of partitions: 25<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 809.0 B" tooltip="Exchange hashpartitioning(product#825143, plant#825138, 25), REPARTITION_BY_NUM, [plan_id=324008]"];
subgraph cluster11 {
isCluster="true";
id="cluster11";
label="WholeStageCodegen (1)\n \nduration: 167 ms";
tooltip="WholeStageCodegen (1)";
12 [id="node12" labelType="html" label="<b>ColumnarToRow</b><br><br>number of output rows: 18<br>number of input batches: 1" tooltip="ColumnarToRow"];
}
13 [id="node13" labelType="html" label="<b>Scan parquet </b><br><br>number of files read: 1<br>scan time: 132 ms<br>metadata time: 0 ms<br>size of files read: 9.7 KiB<br>number of output rows: 18" tooltip="FileScan parquet [plant#825138,product#825143,orderDateTime#825144] Batched: true, DataFilters: [], Format: Parquet, Location: InMemoryFileIndex(1 paths)[hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20.hanac..., PartitionFilters: [], PushedFilters: [], ReadSchema: struct<plant:string,product:string,orderDateTime:timestamp>"];
1->0;
2->1;
4->2;
5->4;
6->5;
7->6;
9->7;
10->9;
12->10;
13->12;
}
== Physical Plan ==
AdaptiveSparkPlan (21)
+- == Final Plan ==
ResultQueryStage (12), Statistics(sizeInBytes=8.0 EiB)
+- Execute InsertIntoHadoopFsRelationCommand (11)
+- WriteFiles (10)
+- * Project (9)
+- * Filter (8)
+- Window (7)
+- WindowGroupLimit (6)
+- * Sort (5)
+- ShuffleQueryStage (4), Statistics(sizeInBytes=1728.0 B, rowCount=18)
+- Exchange (3)
+- * ColumnarToRow (2)
+- Scan parquet (1)
+- == Initial Plan ==
Execute InsertIntoHadoopFsRelationCommand (20)
+- WriteFiles (19)
+- Project (18)
+- Filter (17)
+- Window (16)
+- WindowGroupLimit (15)
+- Sort (14)
+- Exchange (13)
+- Scan parquet (1)
(1) Scan parquet
Output [3]: [plant#825138, product#825143, orderDateTime#825144]
Batched: true
Location: InMemoryFileIndex [hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/out/order-proposal-boundary-snapshot/10000002109/shardId=0_1_10000002109]
ReadSchema: struct<plant:string,product:string,orderDateTime:timestamp>
(2) ColumnarToRow [codegen id : 1]
Input [3]: [plant#825138, product#825143, orderDateTime#825144]
(3) Exchange
Input [3]: [plant#825138, product#825143, orderDateTime#825144]
Arguments: hashpartitioning(product#825143, plant#825138, 25), REPARTITION_BY_NUM, [plan_id=324008]
(4) ShuffleQueryStage
Output [3]: [plant#825138, product#825143, orderDateTime#825144]
Arguments: 0
(5) Sort [codegen id : 2]
Input [3]: [plant#825138, product#825143, orderDateTime#825144]
Arguments: [product#825143 ASC NULLS FIRST, plant#825138 ASC NULLS FIRST, orderDateTime#825144 ASC NULLS FIRST], false, 0
(6) WindowGroupLimit
Input [3]: [plant#825138, product#825143, orderDateTime#825144]
Arguments: [product#825143, plant#825138], [orderDateTime#825144 ASC NULLS FIRST], row_number(), 1, Final
(7) Window
Input [3]: [plant#825138, product#825143, orderDateTime#825144]
Arguments: [row_number() windowspecdefinition(product#825143, plant#825138, orderDateTime#825144 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS rank#825162], [product#825143, plant#825138], [orderDateTime#825144 ASC NULLS FIRST]
(8) Filter [codegen id : 3]
Input [4]: [plant#825138, product#825143, orderDateTime#825144, rank#825162]
Condition : (rank#825162 = 1)
(9) Project [codegen id : 3]
Output [4]: [product#825143, plant#825138, orderDateTime#825144, 2026-08-10 11:25:00 AS planningStartDateTime#825164]
Input [4]: [plant#825138, product#825143, orderDateTime#825144, rank#825162]
(10) WriteFiles
Input [4]: [product#825143, plant#825138, orderDateTime#825144, planningStartDateTime#825164]
(11) Execute InsertIntoHadoopFsRelationCommand
Input: []
Arguments: hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/out/product-plant-list/10000002109/shardId=0_1_10000002109, false, Parquet, [path=hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/out/product-plant-list/10000002109/shardId=0_1_10000002109], Overwrite, [product, plant, orderDateTime, planningStartDateTime]
(12) ResultQueryStage
Output: []
Arguments: 1
(13) Exchange
Input [3]: [plant#825138, product#825143, orderDateTime#825144]
Arguments: hashpartitioning(product#825143, plant#825138, 25), REPARTITION_BY_NUM, [plan_id=323977]
(14) Sort
Input [3]: [plant#825138, product#825143, orderDateTime#825144]
Arguments: [product#825143 ASC NULLS FIRST, plant#825138 ASC NULLS FIRST, orderDateTime#825144 ASC NULLS FIRST], false, 0
(15) WindowGroupLimit
Input [3]: [plant#825138, product#825143, orderDateTime#825144]
Arguments: [product#825143, plant#825138], [orderDateTime#825144 ASC NULLS FIRST], row_number(), 1, Final
(16) Window
Input [3]: [plant#825138, product#825143, orderDateTime#825144]
Arguments: [row_number() windowspecdefinition(product#825143, plant#825138, orderDateTime#825144 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS rank#825162], [product#825143, plant#825138], [orderDateTime#825144 ASC NULLS FIRST]
(17) Filter
Input [4]: [plant#825138, product#825143, orderDateTime#825144, rank#825162]
Condition : (rank#825162 = 1)
(18) Project
Output [4]: [product#825143, plant#825138, orderDateTime#825144, 2026-08-10 11:25:00 AS planningStartDateTime#825164]
Input [4]: [plant#825138, product#825143, orderDateTime#825144, rank#825162]
(19) WriteFiles
Input [4]: [product#825143, plant#825138, orderDateTime#825144, planningStartDateTime#825164]
(20) Execute InsertIntoHadoopFsRelationCommand
Input: []
Arguments: hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/out/product-plant-list/10000002109/shardId=0_1_10000002109, false, Parquet, [path=hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/out/product-plant-list/10000002109/shardId=0_1_10000002109], Overwrite, [product, plant, orderDateTime, planningStartDateTime]
(21) AdaptiveSparkPlan
Output: []
Arguments: isFinalPlan=true