digraph G {
0 [labelType="html" label="<br><b>AdaptiveSparkPlan</b><br><br>"];
subgraph cluster1 {
isCluster="true";
label="WholeStageCodegen (2)\n \nduration: 0 ms";
2 [labelType="html" label="<b>HashAggregate</b><br><br>time in aggregation build: 0 ms<br>number of output rows: 1"];
}
3 [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: 59.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: 16.0 B<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: 59.0 B"];
subgraph cluster4 {
isCluster="true";
label="WholeStageCodegen (1)\n \nduration: 0 ms";
5 [labelType="html" label="<b>HashAggregate</b><br><br>time in aggregation build: 0 ms<br>number of output rows: 1"];
}
6 [labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 35,357"];
subgraph cluster7 {
isCluster="true";
label="WholeStageCodegen (1)\n \nduration: 5.4 s";
8 [labelType="html" label="<br><b>Project</b><br><br>"];
9 [labelType="html" label="<b>Generate</b><br><br>number of output rows: 35,357"];
10 [labelType="html" label="<br><b>Project</b><br><br>"];
}
11 [labelType="html" label="<b>Scan json </b><br><br>number of output rows: 1<br>number of files read: 1<br>metadata time: 0 ms<br>size of files read: 43.8 MiB"];
2->0;
3->2;
5->3;
6->5;
8->6;
9->8;
10->9;
11->10;
}
12
AdaptiveSparkPlan isFinalPlan=true
HashAggregate(keys=[], functions=[count(1)])
WholeStageCodegen (2)
Exchange SinglePartition, ENSURE_REQUIREMENTS, [plan_id=103855]
HashAggregate(keys=[], functions=[partial_count(1)])
WholeStageCodegen (1)
InMemoryTableScan
Project [343cd3c5-4ab7-4163-9ed2-9f8d88c9077f#339002.geometry AS 3CA8F2B5_7A47_4F4C_8FEC_E207BE4F5E8D#339089, 343cd3c5-4ab7-4163-9ed2-9f8d88c9077f#339002.properties.code AS E22536DE_090D_4DC8_8C68_0115B901E4BE#339090, 343cd3c5-4ab7-4163-9ed2-9f8d88c9077f#339002.properties.nom AS 61B6FDFC_8690_42AE_9323_0BD93388D39D#339091]
Generate explode(ffe737ef-26df-476f-a0ab-bf1ea7d7463c#338996), true, [343cd3c5-4ab7-4163-9ed2-9f8d88c9077f#339002]
Project [features#338987 AS ffe737ef-26df-476f-a0ab-bf1ea7d7463c#338996]
WholeStageCodegen (1)
FileScan json [features#338987] Batched: false, DataFilters: [], Format: JSON, Location: InMemoryFileIndex(1 paths)[file:/data/input/depot/json/execution/188025A0_DDA0_4EDF_AD73_BCF1A7CE..., PartitionFilters: [], PushedFilters: [], ReadSchema: struct<features:array<struct<geometry:string,properties:struct<code:string,nom:string>,type:strin...
== Physical Plan ==
AdaptiveSparkPlan (15)
+- == Final Plan ==
* HashAggregate (11)
+- ShuffleQueryStage (10), Statistics(sizeInBytes=16.0 B, rowCount=1)
+- Exchange (9)
+- * HashAggregate (8)
+- TableCacheQueryStage (7), Statistics(sizeInBytes=42.0 MiB, rowCount=3.54E+4)
+- InMemoryTableScan (1)
+- InMemoryRelation (2)
+- * Project (6)
+- * Generate (5)
+- * Project (4)
+- Scan json (3)
+- == Initial Plan ==
HashAggregate (14)
+- Exchange (13)
+- HashAggregate (12)
+- InMemoryTableScan (1)
+- InMemoryRelation (2)
+- * Project (6)
+- * Generate (5)
+- * Project (4)
+- Scan json (3)
(1) InMemoryTableScan
Output: []
(2) InMemoryRelation
Arguments: [3CA8F2B5_7A47_4F4C_8FEC_E207BE4F5E8D#339089, E22536DE_090D_4DC8_8C68_0115B901E4BE#339090, 61B6FDFC_8690_42AE_9323_0BD93388D39D#339091], CachedRDDBuilder(org.apache.spark.sql.execution.columnar.DefaultCachedBatchSerializer@68f4cb77,StorageLevel(disk, memory, deserialized, 1 replicas),*(1) Project [343cd3c5-4ab7-4163-9ed2-9f8d88c9077f#339002.geometry AS 3CA8F2B5_7A47_4F4C_8FEC_E207BE4F5E8D#339089, 343cd3c5-4ab7-4163-9ed2-9f8d88c9077f#339002.properties.code AS E22536DE_090D_4DC8_8C68_0115B901E4BE#339090, 343cd3c5-4ab7-4163-9ed2-9f8d88c9077f#339002.properties.nom AS 61B6FDFC_8690_42AE_9323_0BD93388D39D#339091]
+- *(1) Generate explode(ffe737ef-26df-476f-a0ab-bf1ea7d7463c#338996), true, [343cd3c5-4ab7-4163-9ed2-9f8d88c9077f#339002]
+- *(1) Project [features#338987 AS ffe737ef-26df-476f-a0ab-bf1ea7d7463c#338996]
+- FileScan json [features#338987] Batched: false, DataFilters: [], Format: JSON, Location: InMemoryFileIndex(1 paths)[file:/data/input/depot/json/execution/188025A0_DDA0_4EDF_AD73_BCF1A7CE..., PartitionFilters: [], PushedFilters: [], ReadSchema: struct<features:array<struct<geometry:string,properties:struct<code:string,nom:string>,type:strin...
,None)
(3) Scan json
Output [1]: [features#338987]
Batched: false
Location: InMemoryFileIndex [file:/data/input/depot/json/execution/188025A0_DDA0_4EDF_AD73_BCF1A7CECE59/current/communes-avec-outre-mer.geojson]
ReadSchema: struct<features:array<struct<geometry:string,properties:struct<code:string,nom:string>,type:string>>>
(4) Project [codegen id : 1]
Output [1]: [features#338987 AS ffe737ef-26df-476f-a0ab-bf1ea7d7463c#338996]
Input [1]: [features#338987]
(5) Generate [codegen id : 1]
Input [1]: [ffe737ef-26df-476f-a0ab-bf1ea7d7463c#338996]
Arguments: explode(ffe737ef-26df-476f-a0ab-bf1ea7d7463c#338996), true, [343cd3c5-4ab7-4163-9ed2-9f8d88c9077f#339002]
(6) Project [codegen id : 1]
Output [3]: [343cd3c5-4ab7-4163-9ed2-9f8d88c9077f#339002.geometry AS 3CA8F2B5_7A47_4F4C_8FEC_E207BE4F5E8D#339089, 343cd3c5-4ab7-4163-9ed2-9f8d88c9077f#339002.properties.code AS E22536DE_090D_4DC8_8C68_0115B901E4BE#339090, 343cd3c5-4ab7-4163-9ed2-9f8d88c9077f#339002.properties.nom AS 61B6FDFC_8690_42AE_9323_0BD93388D39D#339091]
Input [1]: [343cd3c5-4ab7-4163-9ed2-9f8d88c9077f#339002]
(7) TableCacheQueryStage
Output: []
Arguments: 0
(8) HashAggregate [codegen id : 1]
Input: []
Keys: []
Functions [1]: [partial_count(1)]
Aggregate Attributes [1]: [count#339161L]
Results [1]: [count#339162L]
(9) Exchange
Input [1]: [count#339162L]
Arguments: SinglePartition, ENSURE_REQUIREMENTS, [plan_id=103855]
(10) ShuffleQueryStage
Output [1]: [count#339162L]
Arguments: 1
(11) HashAggregate [codegen id : 2]
Input [1]: [count#339162L]
Keys: []
Functions [1]: [count(1)]
Aggregate Attributes [1]: [count(1)#339113L]
Results [1]: [count(1)#339113L AS count#339114L]
(12) HashAggregate
Input: []
Keys: []
Functions [1]: [partial_count(1)]
Aggregate Attributes [1]: [count#339161L]
Results [1]: [count#339162L]
(13) Exchange
Input [1]: [count#339162L]
Arguments: SinglePartition, ENSURE_REQUIREMENTS, [plan_id=103831]
(14) HashAggregate
Input [1]: [count#339162L]
Keys: []
Functions [1]: [count(1)]
Aggregate Attributes [1]: [count(1)#339113L]
Results [1]: [count(1)#339113L AS count#339114L]
(15) AdaptiveSparkPlan
Output [1]: [count#339114L]
Arguments: isFinalPlan=true