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.1 s (15 ms, 22 ms, 286 ms (stage 76317.0: task 186156))<br>number of written files: 6<br>job commit time: 1.6 s<br>number of output rows: 8<br>number of dynamic part: 0<br>written output: 10.4 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/10000002110/shardId=0_1_10000002110, 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/10000002110/shardId=0_1_10000002110], 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))\n299 ms (0 ms, 0 ms, 59 ms (stage 76317.0: task 186155))";
tooltip="WholeStageCodegen (3)";
4 [id="node4" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#912932, plant#912927, orderDateTime#912933, 2026-08-10 12:26:00 AS planningStartDateTime#913021]"];
5 [id="node5" labelType="html" label="<b>Filter</b><br><br>number of output rows: 8" tooltip="Filter (rank#912963 = 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 76317.0: task 186161))" tooltip="Window [row_number() windowspecdefinition(product#912932, plant#912927, orderDateTime#912933 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS rank#912963], [product#912932, plant#912927], [orderDateTime#912933 ASC NULLS FIRST]"];
7 [id="node7" labelType="html" label="<b>WindowGroupLimit</b><br><br>number of output rows: 8" tooltip="WindowGroupLimit [product#912932, plant#912927], [orderDateTime#912933 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.9 s (0 ms, 0 ms, 290 ms (stage 76317.0: task 186155))";
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 76317.0: task 186161))<br>peak memory total (min, med, max (stageId: taskId))<br>13.6 MiB (64.0 KiB, 64.0 KiB, 2.1 MiB (stage 76317.0: task 186152))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 76317.0: task 186161))" tooltip="Sort [product#912932 ASC NULLS FIRST, plant#912927 ASC NULLS FIRST, orderDateTime#912933 ASC NULLS FIRST], false, 0"];
}
10 [id="node10" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 24<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 24<br>local bytes read total (min, med, max (stageId: taskId))<br>1153.0 B (172.0 B, 172.0 B, 236.0 B (stage 76317.0: task 186155))<br>merged fetch fallback count: 0<br>local blocks read: 6<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 2.3 KiB<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 76317.0: task 186152))<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: 1153.0 B" tooltip="Exchange hashpartitioning(product#912932, plant#912927, 25), REPARTITION_BY_NUM, [plan_id=356654]"];
subgraph cluster11 {
isCluster="true";
id="cluster11";
label="WholeStageCodegen (1)\n \nduration: 102 ms";
tooltip="WholeStageCodegen (1)";
12 [id="node12" labelType="html" label="<b>ColumnarToRow</b><br><br>number of output rows: 24<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: 71 ms<br>metadata time: 0 ms<br>size of files read: 9.9 KiB<br>number of output rows: 24" tooltip="FileScan parquet [plant#912927,product#912932,orderDateTime#912933] 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=2.3 KiB, rowCount=24)
+- 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#912927, product#912932, orderDateTime#912933]
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/10000002110/shardId=0_1_10000002110]
ReadSchema: struct<plant:string,product:string,orderDateTime:timestamp>
(2) ColumnarToRow [codegen id : 1]
Input [3]: [plant#912927, product#912932, orderDateTime#912933]
(3) Exchange
Input [3]: [plant#912927, product#912932, orderDateTime#912933]
Arguments: hashpartitioning(product#912932, plant#912927, 25), REPARTITION_BY_NUM, [plan_id=356654]
(4) ShuffleQueryStage
Output [3]: [plant#912927, product#912932, orderDateTime#912933]
Arguments: 0
(5) Sort [codegen id : 2]
Input [3]: [plant#912927, product#912932, orderDateTime#912933]
Arguments: [product#912932 ASC NULLS FIRST, plant#912927 ASC NULLS FIRST, orderDateTime#912933 ASC NULLS FIRST], false, 0
(6) WindowGroupLimit
Input [3]: [plant#912927, product#912932, orderDateTime#912933]
Arguments: [product#912932, plant#912927], [orderDateTime#912933 ASC NULLS FIRST], row_number(), 1, Final
(7) Window
Input [3]: [plant#912927, product#912932, orderDateTime#912933]
Arguments: [row_number() windowspecdefinition(product#912932, plant#912927, orderDateTime#912933 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS rank#912963], [product#912932, plant#912927], [orderDateTime#912933 ASC NULLS FIRST]
(8) Filter [codegen id : 3]
Input [4]: [plant#912927, product#912932, orderDateTime#912933, rank#912963]
Condition : (rank#912963 = 1)
(9) Project [codegen id : 3]
Output [4]: [product#912932, plant#912927, orderDateTime#912933, 2026-08-10 12:26:00 AS planningStartDateTime#913021]
Input [4]: [plant#912927, product#912932, orderDateTime#912933, rank#912963]
(10) WriteFiles
Input [4]: [product#912932, plant#912927, orderDateTime#912933, planningStartDateTime#913021]
(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/10000002110/shardId=0_1_10000002110, 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/10000002110/shardId=0_1_10000002110], Overwrite, [product, plant, orderDateTime, planningStartDateTime]
(12) ResultQueryStage
Output: []
Arguments: 1
(13) Exchange
Input [3]: [plant#912927, product#912932, orderDateTime#912933]
Arguments: hashpartitioning(product#912932, plant#912927, 25), REPARTITION_BY_NUM, [plan_id=356623]
(14) Sort
Input [3]: [plant#912927, product#912932, orderDateTime#912933]
Arguments: [product#912932 ASC NULLS FIRST, plant#912927 ASC NULLS FIRST, orderDateTime#912933 ASC NULLS FIRST], false, 0
(15) WindowGroupLimit
Input [3]: [plant#912927, product#912932, orderDateTime#912933]
Arguments: [product#912932, plant#912927], [orderDateTime#912933 ASC NULLS FIRST], row_number(), 1, Final
(16) Window
Input [3]: [plant#912927, product#912932, orderDateTime#912933]
Arguments: [row_number() windowspecdefinition(product#912932, plant#912927, orderDateTime#912933 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS rank#912963], [product#912932, plant#912927], [orderDateTime#912933 ASC NULLS FIRST]
(17) Filter
Input [4]: [plant#912927, product#912932, orderDateTime#912933, rank#912963]
Condition : (rank#912963 = 1)
(18) Project
Output [4]: [product#912932, plant#912927, orderDateTime#912933, 2026-08-10 12:26:00 AS planningStartDateTime#913021]
Input [4]: [plant#912927, product#912932, orderDateTime#912933, rank#912963]
(19) WriteFiles
Input [4]: [product#912932, plant#912927, orderDateTime#912933, planningStartDateTime#913021]
(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/10000002110/shardId=0_1_10000002110, 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/10000002110/shardId=0_1_10000002110], Overwrite, [product, plant, orderDateTime, planningStartDateTime]
(21) AdaptiveSparkPlan
Output: []
Arguments: isFinalPlan=true