digraph G {
0 [labelType="html" label="<br><b>AdaptiveSparkPlan</b><br><br>"];
subgraph cluster1 {
isCluster="true";
label="WholeStageCodegen (2)\n \nduration: 5 ms";
2 [labelType="html" label="<br><b>Project</b><br><br>"];
3 [labelType="html" label="<br><b>Project</b><br><br>"];
4 [labelType="html" label="<br><b>Project</b><br><br>"];
5 [labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 0 ms<br>peak memory: 16.3 MiB<br>number of output rows: 1<br>number of sort fallback tasks: 0<br>avg hash probes per key: 1"];
}
6 [labelType="html" label="<b>AQEShuffleRead</b><br><br>number of partitions: 1<br>partition data size: 66.0 B<br>number of coalesced partitions: 1"];
7 [labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 1<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>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 1<br>local bytes read: 64.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: 1<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 24.0 B<br>local merged bytes read: 0.0 B<br>number of partitions: 10<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 64.0 B"];
subgraph cluster8 {
isCluster="true";
label="WholeStageCodegen (1)\n \nduration: 55 ms";
9 [labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 22 ms<br>peak memory: 256.0 KiB<br>number of output rows: 1<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0"];
10 [labelType="html" label="<br><b>Project</b><br><br>"];
11 [labelType="html" label="<b>ColumnarToRow</b><br><br>number of output rows: 1,455<br>number of input batches: 1"];
}
12 [labelType="html" label="<b>Scan parquet </b><br><br>number of files read: 1<br>scan time: 6 ms<br>metadata time: 0 ms<br>size of files read: 312.5 KiB<br>number of output rows: 1,455"];
2->0;
3->2;
4->3;
5->4;
6->5;
7->6;
9->7;
10->9;
11->10;
12->11;
}
13
AdaptiveSparkPlan isFinalPlan=true
Project [COL_AA7F7841_3E3F_4060_ADA9_F3C6D208A612#58925, COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988, COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936, str_if_with_rule(CASE WHEN isnull(COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988) THEN false ELSE (COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988 <= 3) END, str_join(array(COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936, €), ), str_if_with_rule(CASE WHEN isnull(((COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988 >= 4) AND (COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988 <= 6))) THEN false ELSE ((COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988 >= 4) AND (COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988 <= 6)) END, str_join(array(str_extract_middle(COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936, 1, int_diff(array(COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988, 3))), str_extract(COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936, RIGHT, 3), €, ), ), str_if_with_rule(CASE WHEN isnull(COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988) THEN false ELSE (COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988 > 6) END, str_join(array(str_extract_middle(COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936, 1, int_diff(array(COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988, 6))), str_extract_middle(str_extract(COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936, RIGHT, 6), 1, 3), str_extract(COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936, RIGHT, 3), €, ), ), ))) AS COL_518DC08E_53D0_438D_830E_7670A19EA23C#59041]
Project [COL_AA7F7841_3E3F_4060_ADA9_F3C6D208A612#58925, str_size(COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936) AS COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988, COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936]
Project [COL_AA7F7841_3E3F_4060_ADA9_F3C6D208A612#58925, str_remove(COL_AA7F7841_3E3F_4060_ADA9_F3C6D208A612#58925, ,0) AS COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936]
HashAggregate(keys=[COL_32482042_4C68_423E_9E40_347021FD7E8D#53071L], functions=[sum(COL_8D7ADA57_5165_469C_B31C_4D9D114F65D4#58373)])
WholeStageCodegen (2)
AQEShuffleRead coalesced
Exchange hashpartitioning(COL_32482042_4C68_423E_9E40_347021FD7E8D#53071L, 10), ENSURE_REQUIREMENTS, [plan_id=11411]
HashAggregate(keys=[COL_32482042_4C68_423E_9E40_347021FD7E8D#53071L], functions=[partial_sum(COL_8D7ADA57_5165_469C_B31C_4D9D114F65D4#58373)])
Project [COL_35375170_B542_49DE_AFA2_0A2D31967891#50068L AS COL_32482042_4C68_423E_9E40_347021FD7E8D#53071L, dec_if_with_rule(NOT CASE WHEN isnull(Contains(COL_280ABAAC_E0C3_4D6B_9FFD_C2F4C25A3214#50044, VACANT)) THEN false ELSE Contains(COL_280ABAAC_E0C3_4D6B_9FFD_C2F4C25A3214#50044, VACANT) END, COL_EAFDA249_1ED2_4EA1_B82E_F10F08D7F028#50079, null) AS COL_8D7ADA57_5165_469C_B31C_4D9D114F65D4#58373]
ColumnarToRow
WholeStageCodegen (1)
FileScan parquet [COL_280ABAAC_E0C3_4D6B_9FFD_C2F4C25A3214#50044,COL_35375170_B542_49DE_AFA2_0A2D31967891#50068L,COL_EAFDA249_1ED2_4EA1_B82E_F10F08D7F028#50079] Batched: true, DataFilters: [], Format: Parquet, Location: InMemoryFileIndex(1 paths)[file:/data/output/cache/parquet/datablock/MATCHING_ANALYS_405366], PartitionFilters: [], PushedFilters: [], ReadSchema: struct<COL_280ABAAC_E0C3_4D6B_9FFD_C2F4C25A3214:string,COL_35375170_B542_49DE_AFA2_0A2D31967891:b...
== Physical Plan ==
AdaptiveSparkPlan (20)
+- == Final Plan ==
* Project (11)
+- * Project (10)
+- * Project (9)
+- * HashAggregate (8)
+- AQEShuffleRead (7)
+- ShuffleQueryStage (6), Statistics(sizeInBytes=24.0 B, rowCount=1)
+- Exchange (5)
+- * HashAggregate (4)
+- * Project (3)
+- * ColumnarToRow (2)
+- Scan parquet (1)
+- == Initial Plan ==
CollectLimit (19)
+- Project (18)
+- Project (17)
+- Project (16)
+- HashAggregate (15)
+- Exchange (14)
+- HashAggregate (13)
+- Project (12)
+- Scan parquet (1)
(1) Scan parquet
Output [3]: [COL_280ABAAC_E0C3_4D6B_9FFD_C2F4C25A3214#50044, COL_35375170_B542_49DE_AFA2_0A2D31967891#50068L, COL_EAFDA249_1ED2_4EA1_B82E_F10F08D7F028#50079]
Batched: true
Location: InMemoryFileIndex [file:/data/output/cache/parquet/datablock/MATCHING_ANALYS_405366]
ReadSchema: struct<COL_280ABAAC_E0C3_4D6B_9FFD_C2F4C25A3214:string,COL_35375170_B542_49DE_AFA2_0A2D31967891:bigint,COL_EAFDA249_1ED2_4EA1_B82E_F10F08D7F028:double>
(2) ColumnarToRow [codegen id : 1]
Input [3]: [COL_280ABAAC_E0C3_4D6B_9FFD_C2F4C25A3214#50044, COL_35375170_B542_49DE_AFA2_0A2D31967891#50068L, COL_EAFDA249_1ED2_4EA1_B82E_F10F08D7F028#50079]
(3) Project [codegen id : 1]
Output [2]: [COL_35375170_B542_49DE_AFA2_0A2D31967891#50068L AS COL_32482042_4C68_423E_9E40_347021FD7E8D#53071L, dec_if_with_rule(NOT CASE WHEN isnull(Contains(COL_280ABAAC_E0C3_4D6B_9FFD_C2F4C25A3214#50044, VACANT)) THEN false ELSE Contains(COL_280ABAAC_E0C3_4D6B_9FFD_C2F4C25A3214#50044, VACANT) END, COL_EAFDA249_1ED2_4EA1_B82E_F10F08D7F028#50079, null) AS COL_8D7ADA57_5165_469C_B31C_4D9D114F65D4#58373]
Input [3]: [COL_280ABAAC_E0C3_4D6B_9FFD_C2F4C25A3214#50044, COL_35375170_B542_49DE_AFA2_0A2D31967891#50068L, COL_EAFDA249_1ED2_4EA1_B82E_F10F08D7F028#50079]
(4) HashAggregate [codegen id : 1]
Input [2]: [COL_32482042_4C68_423E_9E40_347021FD7E8D#53071L, COL_8D7ADA57_5165_469C_B31C_4D9D114F65D4#58373]
Keys [1]: [COL_32482042_4C68_423E_9E40_347021FD7E8D#53071L]
Functions [1]: [partial_sum(COL_8D7ADA57_5165_469C_B31C_4D9D114F65D4#58373)]
Aggregate Attributes [1]: [sum#59055]
Results [2]: [COL_32482042_4C68_423E_9E40_347021FD7E8D#53071L, sum#59056]
(5) Exchange
Input [2]: [COL_32482042_4C68_423E_9E40_347021FD7E8D#53071L, sum#59056]
Arguments: hashpartitioning(COL_32482042_4C68_423E_9E40_347021FD7E8D#53071L, 10), ENSURE_REQUIREMENTS, [plan_id=11411]
(6) ShuffleQueryStage
Output [2]: [COL_32482042_4C68_423E_9E40_347021FD7E8D#53071L, sum#59056]
Arguments: 0
(7) AQEShuffleRead
Input [2]: [COL_32482042_4C68_423E_9E40_347021FD7E8D#53071L, sum#59056]
Arguments: coalesced
(8) HashAggregate [codegen id : 2]
Input [2]: [COL_32482042_4C68_423E_9E40_347021FD7E8D#53071L, sum#59056]
Keys [1]: [COL_32482042_4C68_423E_9E40_347021FD7E8D#53071L]
Functions [1]: [sum(COL_8D7ADA57_5165_469C_B31C_4D9D114F65D4#58373)]
Aggregate Attributes [1]: [sum(COL_8D7ADA57_5165_469C_B31C_4D9D114F65D4#58373)#58493]
Results [1]: [dec_to_str_by_pattern(round(sum(COL_8D7ADA57_5165_469C_B31C_4D9D114F65D4#58373)#58493, 0), ##,##) AS COL_AA7F7841_3E3F_4060_ADA9_F3C6D208A612#58925]
(9) Project [codegen id : 2]
Output [2]: [COL_AA7F7841_3E3F_4060_ADA9_F3C6D208A612#58925, str_remove(COL_AA7F7841_3E3F_4060_ADA9_F3C6D208A612#58925, ,0) AS COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936]
Input [1]: [COL_AA7F7841_3E3F_4060_ADA9_F3C6D208A612#58925]
(10) Project [codegen id : 2]
Output [3]: [COL_AA7F7841_3E3F_4060_ADA9_F3C6D208A612#58925, str_size(COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936) AS COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988, COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936]
Input [2]: [COL_AA7F7841_3E3F_4060_ADA9_F3C6D208A612#58925, COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936]
(11) Project [codegen id : 2]
Output [4]: [COL_AA7F7841_3E3F_4060_ADA9_F3C6D208A612#58925, COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988, COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936, str_if_with_rule(CASE WHEN isnull(COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988) THEN false ELSE (COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988 <= 3) END, str_join(array(COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936, €), ), str_if_with_rule(CASE WHEN isnull(((COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988 >= 4) AND (COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988 <= 6))) THEN false ELSE ((COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988 >= 4) AND (COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988 <= 6)) END, str_join(array(str_extract_middle(COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936, 1, int_diff(array(COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988, 3))), str_extract(COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936, RIGHT, 3), €, ), ), str_if_with_rule(CASE WHEN isnull(COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988) THEN false ELSE (COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988 > 6) END, str_join(array(str_extract_middle(COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936, 1, int_diff(array(COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988, 6))), str_extract_middle(str_extract(COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936, RIGHT, 6), 1, 3), str_extract(COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936, RIGHT, 3), €, ), ), ))) AS COL_518DC08E_53D0_438D_830E_7670A19EA23C#59041]
Input [3]: [COL_AA7F7841_3E3F_4060_ADA9_F3C6D208A612#58925, COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988, COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936]
(12) Project
Output [2]: [COL_35375170_B542_49DE_AFA2_0A2D31967891#50068L AS COL_32482042_4C68_423E_9E40_347021FD7E8D#53071L, dec_if_with_rule(NOT CASE WHEN isnull(Contains(COL_280ABAAC_E0C3_4D6B_9FFD_C2F4C25A3214#50044, VACANT)) THEN false ELSE Contains(COL_280ABAAC_E0C3_4D6B_9FFD_C2F4C25A3214#50044, VACANT) END, COL_EAFDA249_1ED2_4EA1_B82E_F10F08D7F028#50079, null) AS COL_8D7ADA57_5165_469C_B31C_4D9D114F65D4#58373]
Input [3]: [COL_280ABAAC_E0C3_4D6B_9FFD_C2F4C25A3214#50044, COL_35375170_B542_49DE_AFA2_0A2D31967891#50068L, COL_EAFDA249_1ED2_4EA1_B82E_F10F08D7F028#50079]
(13) HashAggregate
Input [2]: [COL_32482042_4C68_423E_9E40_347021FD7E8D#53071L, COL_8D7ADA57_5165_469C_B31C_4D9D114F65D4#58373]
Keys [1]: [COL_32482042_4C68_423E_9E40_347021FD7E8D#53071L]
Functions [1]: [partial_sum(COL_8D7ADA57_5165_469C_B31C_4D9D114F65D4#58373)]
Aggregate Attributes [1]: [sum#59055]
Results [2]: [COL_32482042_4C68_423E_9E40_347021FD7E8D#53071L, sum#59056]
(14) Exchange
Input [2]: [COL_32482042_4C68_423E_9E40_347021FD7E8D#53071L, sum#59056]
Arguments: hashpartitioning(COL_32482042_4C68_423E_9E40_347021FD7E8D#53071L, 10), ENSURE_REQUIREMENTS, [plan_id=11389]
(15) HashAggregate
Input [2]: [COL_32482042_4C68_423E_9E40_347021FD7E8D#53071L, sum#59056]
Keys [1]: [COL_32482042_4C68_423E_9E40_347021FD7E8D#53071L]
Functions [1]: [sum(COL_8D7ADA57_5165_469C_B31C_4D9D114F65D4#58373)]
Aggregate Attributes [1]: [sum(COL_8D7ADA57_5165_469C_B31C_4D9D114F65D4#58373)#58493]
Results [1]: [dec_to_str_by_pattern(round(sum(COL_8D7ADA57_5165_469C_B31C_4D9D114F65D4#58373)#58493, 0), ##,##) AS COL_AA7F7841_3E3F_4060_ADA9_F3C6D208A612#58925]
(16) Project
Output [2]: [COL_AA7F7841_3E3F_4060_ADA9_F3C6D208A612#58925, str_remove(COL_AA7F7841_3E3F_4060_ADA9_F3C6D208A612#58925, ,0) AS COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936]
Input [1]: [COL_AA7F7841_3E3F_4060_ADA9_F3C6D208A612#58925]
(17) Project
Output [3]: [COL_AA7F7841_3E3F_4060_ADA9_F3C6D208A612#58925, str_size(COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936) AS COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988, COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936]
Input [2]: [COL_AA7F7841_3E3F_4060_ADA9_F3C6D208A612#58925, COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936]
(18) Project
Output [4]: [COL_AA7F7841_3E3F_4060_ADA9_F3C6D208A612#58925, COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988, COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936, str_if_with_rule(CASE WHEN isnull(COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988) THEN false ELSE (COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988 <= 3) END, str_join(array(COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936, €), ), str_if_with_rule(CASE WHEN isnull(((COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988 >= 4) AND (COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988 <= 6))) THEN false ELSE ((COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988 >= 4) AND (COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988 <= 6)) END, str_join(array(str_extract_middle(COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936, 1, int_diff(array(COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988, 3))), str_extract(COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936, RIGHT, 3), €, ), ), str_if_with_rule(CASE WHEN isnull(COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988) THEN false ELSE (COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988 > 6) END, str_join(array(str_extract_middle(COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936, 1, int_diff(array(COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988, 6))), str_extract_middle(str_extract(COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936, RIGHT, 6), 1, 3), str_extract(COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936, RIGHT, 3), €, ), ), ))) AS COL_518DC08E_53D0_438D_830E_7670A19EA23C#59041]
Input [3]: [COL_AA7F7841_3E3F_4060_ADA9_F3C6D208A612#58925, COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988, COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936]
(19) CollectLimit
Input [4]: [COL_AA7F7841_3E3F_4060_ADA9_F3C6D208A612#58925, COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988, COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936, COL_518DC08E_53D0_438D_830E_7670A19EA23C#59041]
Arguments: 500000
(20) AdaptiveSparkPlan
Output [4]: [COL_AA7F7841_3E3F_4060_ADA9_F3C6D208A612#58925, COL_3FBC28AE_FF1C_42E4_92EC_571B2D02EF72#58988, COL_1D22AF52_43A2_430A_8D95_26A03B55F329#58936, COL_518DC08E_53D0_438D_830E_7670A19EA23C#59041]
Arguments: isFinalPlan=true