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,228"];
subgraph cluster7 {
isCluster="true";
label="WholeStageCodegen (1)\n \nduration: 5.5 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,228"];
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.2 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=103765]
HashAggregate(keys=[], functions=[partial_count(1)])
WholeStageCodegen (1)
InMemoryTableScan
Project [2f05086f-9a9f-45b1-9a95-9e384ed8c3dc#338732.geometry AS 00233D4B_5734_4E45_957F_89AC647543A8#338819, 2f05086f-9a9f-45b1-9a95-9e384ed8c3dc#338732.properties.code AS 10AC31B7_ADCF_4C2E_B9D8_93C0B5029E02#338820, 2f05086f-9a9f-45b1-9a95-9e384ed8c3dc#338732.properties.nom AS F9E50BF6_D9BE_49CE_9AC6_FEC5D876F0B4#338821]
Generate explode(4e70a2fb-cdda-4937-88dc-a7bc7a4b31d2#338726), true, [2f05086f-9a9f-45b1-9a95-9e384ed8c3dc#338732]
Project [features#338717 AS 4e70a2fb-cdda-4937-88dc-a7bc7a4b31d2#338726]
WholeStageCodegen (1)
FileScan json [features#338717] Batched: false, DataFilters: [], Format: JSON, Location: InMemoryFileIndex(1 paths)[file:/data/input/depot/json/execution/208D3967_49FC_4FE0_8FCB_B1414FC7..., 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=41.4 MiB, rowCount=3.52E+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: [00233D4B_5734_4E45_957F_89AC647543A8#338819, 10AC31B7_ADCF_4C2E_B9D8_93C0B5029E02#338820, F9E50BF6_D9BE_49CE_9AC6_FEC5D876F0B4#338821], CachedRDDBuilder(org.apache.spark.sql.execution.columnar.DefaultCachedBatchSerializer@68f4cb77,StorageLevel(disk, memory, deserialized, 1 replicas),*(1) Project [2f05086f-9a9f-45b1-9a95-9e384ed8c3dc#338732.geometry AS 00233D4B_5734_4E45_957F_89AC647543A8#338819, 2f05086f-9a9f-45b1-9a95-9e384ed8c3dc#338732.properties.code AS 10AC31B7_ADCF_4C2E_B9D8_93C0B5029E02#338820, 2f05086f-9a9f-45b1-9a95-9e384ed8c3dc#338732.properties.nom AS F9E50BF6_D9BE_49CE_9AC6_FEC5D876F0B4#338821]
+- *(1) Generate explode(4e70a2fb-cdda-4937-88dc-a7bc7a4b31d2#338726), true, [2f05086f-9a9f-45b1-9a95-9e384ed8c3dc#338732]
+- *(1) Project [features#338717 AS 4e70a2fb-cdda-4937-88dc-a7bc7a4b31d2#338726]
+- FileScan json [features#338717] Batched: false, DataFilters: [], Format: JSON, Location: InMemoryFileIndex(1 paths)[file:/data/input/depot/json/execution/208D3967_49FC_4FE0_8FCB_B1414FC7..., PartitionFilters: [], PushedFilters: [], ReadSchema: struct<features:array<struct<geometry:string,properties:struct<code:string,nom:string>,type:strin...
,None)
(3) Scan json
Output [1]: [features#338717]
Batched: false
Location: InMemoryFileIndex [file:/data/input/depot/json/execution/208D3967_49FC_4FE0_8FCB_B1414FC7E2FE/current/communes.geojson]
ReadSchema: struct<features:array<struct<geometry:string,properties:struct<code:string,nom:string>,type:string>>>
(4) Project [codegen id : 1]
Output [1]: [features#338717 AS 4e70a2fb-cdda-4937-88dc-a7bc7a4b31d2#338726]
Input [1]: [features#338717]
(5) Generate [codegen id : 1]
Input [1]: [4e70a2fb-cdda-4937-88dc-a7bc7a4b31d2#338726]
Arguments: explode(4e70a2fb-cdda-4937-88dc-a7bc7a4b31d2#338726), true, [2f05086f-9a9f-45b1-9a95-9e384ed8c3dc#338732]
(6) Project [codegen id : 1]
Output [3]: [2f05086f-9a9f-45b1-9a95-9e384ed8c3dc#338732.geometry AS 00233D4B_5734_4E45_957F_89AC647543A8#338819, 2f05086f-9a9f-45b1-9a95-9e384ed8c3dc#338732.properties.code AS 10AC31B7_ADCF_4C2E_B9D8_93C0B5029E02#338820, 2f05086f-9a9f-45b1-9a95-9e384ed8c3dc#338732.properties.nom AS F9E50BF6_D9BE_49CE_9AC6_FEC5D876F0B4#338821]
Input [1]: [2f05086f-9a9f-45b1-9a95-9e384ed8c3dc#338732]
(7) TableCacheQueryStage
Output: []
Arguments: 0
(8) HashAggregate [codegen id : 1]
Input: []
Keys: []
Functions [1]: [partial_count(1)]
Aggregate Attributes [1]: [count#338891L]
Results [1]: [count#338892L]
(9) Exchange
Input [1]: [count#338892L]
Arguments: SinglePartition, ENSURE_REQUIREMENTS, [plan_id=103765]
(10) ShuffleQueryStage
Output [1]: [count#338892L]
Arguments: 1
(11) HashAggregate [codegen id : 2]
Input [1]: [count#338892L]
Keys: []
Functions [1]: [count(1)]
Aggregate Attributes [1]: [count(1)#338843L]
Results [1]: [count(1)#338843L AS count#338844L]
(12) HashAggregate
Input: []
Keys: []
Functions [1]: [partial_count(1)]
Aggregate Attributes [1]: [count#338891L]
Results [1]: [count#338892L]
(13) Exchange
Input [1]: [count#338892L]
Arguments: SinglePartition, ENSURE_REQUIREMENTS, [plan_id=103741]
(14) HashAggregate
Input [1]: [count#338892L]
Keys: []
Functions [1]: [count(1)]
Aggregate Attributes [1]: [count(1)#338843L]
Results [1]: [count(1)#338843L AS count#338844L]
(15) AdaptiveSparkPlan
Output [1]: [count#338844L]
Arguments: isFinalPlan=true