digraph G {
0 [labelType="html" label="<br><b>AdaptiveSparkPlan</b><br><br>"];
subgraph cluster1 {
isCluster="true";
label="WholeStageCodegen (6)\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 (5)\n \nduration: 7 ms";
5 [labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build: 7 ms<br>peak memory: 0.0 B<br>number of output rows: 1<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0"];
6 [labelType="html" label="<br><b>Project</b><br><br>"];
7 [labelType="html" label="<b>SortMergeJoin</b><br><br>number of output rows: 2,000<br>spill size: 0.0 B"];
}
subgraph cluster8 {
isCluster="true";
label="WholeStageCodegen (3)\n \nduration: 10 ms";
9 [labelType="html" label="<b>Sort</b><br><br>sort time: 1 ms<br>peak memory: 16.1 MiB<br>spill size: 0.0 B"];
}
10 [labelType="html" label="<b>AQEShuffleRead</b><br><br>number of partitions: 1<br>partition data size: 12.6 KiB<br>number of coalesced partitions: 1"];
11 [labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 2,000<br>local merged chunks fetched: 0<br>shuffle write time: 2 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: 2,000<br>local bytes read: 12.2 KiB<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: 62.5 KiB<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: 12.2 KiB"];
subgraph cluster12 {
isCluster="true";
label="WholeStageCodegen (1)\n \nduration: 5 ms";
13 [labelType="html" label="<br><b>Project</b><br><br>"];
14 [labelType="html" label="<b>Scan JDBCRelation((SELECT \"idt_patient\", \"nom_usage_patient\", \"prenom_patient\", \"nom_naissance\", \"datenais\", \"sexe\" FROM \"etab_source\".\"tb_patient\") as x) [numPartitions=1] </b><br><br>number of output rows: 2,000"];
}
subgraph cluster15 {
isCluster="true";
label="WholeStageCodegen (4)\n \nduration: 8 ms";
16 [labelType="html" label="<b>Sort</b><br><br>sort time: 1 ms<br>peak memory: 16.1 MiB<br>spill size: 0.0 B"];
}
17 [labelType="html" label="<b>AQEShuffleRead</b><br><br>number of partitions: 1<br>partition data size: 12.6 KiB<br>number of coalesced partitions: 1"];
18 [labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 2,000<br>local merged chunks fetched: 0<br>shuffle write time: 2 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: 2,000<br>local bytes read: 12.2 KiB<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: 62.5 KiB<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: 12.2 KiB"];
subgraph cluster19 {
isCluster="true";
label="WholeStageCodegen (2)\n \nduration: 5 ms";
20 [labelType="html" label="<br><b>Project</b><br><br>"];
21 [labelType="html" label="<b>Scan JDBCRelation((SELECT \"idt_patient\", \"adresse_1\", \"adresse_2\", \"code_postal\", \"ville\", \"statut\" FROM \"etab_source\".\"adresse_patient\") as x) [numPartitions=1] </b><br><br>number of output rows: 2,000"];
}
2->0;
3->2;
5->3;
6->5;
7->6;
9->7;
10->9;
11->10;
13->11;
14->13;
16->7;
17->16;
18->17;
20->18;
21->20;
}
22
AdaptiveSparkPlan isFinalPlan=true
HashAggregate(keys=[], functions=[count(1)])
WholeStageCodegen (6)
Exchange SinglePartition, ENSURE_REQUIREMENTS, [plan_id=4003]
HashAggregate(keys=[], functions=[partial_count(1)])
Project
SortMergeJoin [COL_CC28EC76_C163_4384_B287_2C28C791971E#54258], [ADRESSE_PATIENT_441212_IDT_PATIENT_441213#54279], LeftOuter
WholeStageCodegen (5)
Sort [COL_CC28EC76_C163_4384_B287_2C28C791971E#54258 ASC NULLS FIRST], false, 0
WholeStageCodegen (3)
AQEShuffleRead coalesced
Exchange hashpartitioning(COL_CC28EC76_C163_4384_B287_2C28C791971E#54258, 10), ENSURE_REQUIREMENTS, [plan_id=3909]
Project [idt_patient#54089 AS COL_CC28EC76_C163_4384_B287_2C28C791971E#54258]
Scan JDBCRelation((SELECT "idt_patient", "nom_usage_patient", "prenom_patient", "nom_naissance", "datenais", "sexe" FROM "etab_source"."tb_patient") as x) [numPartitions=1] [idt_patient#54089] PushedFilters: [], ReadSchema: struct<idt_patient:string>
WholeStageCodegen (1)
Sort [ADRESSE_PATIENT_441212_IDT_PATIENT_441213#54279 ASC NULLS FIRST], false, 0
WholeStageCodegen (4)
AQEShuffleRead coalesced
Exchange hashpartitioning(ADRESSE_PATIENT_441212_IDT_PATIENT_441213#54279, 10), ENSURE_REQUIREMENTS, [plan_id=3916]
Project [idt_patient#54029 AS ADRESSE_PATIENT_441212_IDT_PATIENT_441213#54279]
Scan JDBCRelation((SELECT "idt_patient", "adresse_1", "adresse_2", "code_postal", "ville", "statut" FROM "etab_source"."adresse_patient") as x) [numPartitions=1] [idt_patient#54029] PushedFilters: [*IsNotNull(statut), *EqualTo(statut,ACTIF), *IsNotNull(idt_patient)], ReadSchema: struct<idt_patient:string>
WholeStageCodegen (2)
== Physical Plan ==
AdaptiveSparkPlan (28)
+- == Final Plan ==
* HashAggregate (18)
+- ShuffleQueryStage (17), Statistics(sizeInBytes=16.0 B, rowCount=1)
+- Exchange (16)
+- * HashAggregate (15)
+- * Project (14)
+- * SortMergeJoin LeftOuter (13)
:- * Sort (6)
: +- AQEShuffleRead (5)
: +- ShuffleQueryStage (4), Statistics(sizeInBytes=62.5 KiB, rowCount=2.00E+3)
: +- Exchange (3)
: +- * Project (2)
: +- * Scan JDBCRelation((SELECT "idt_patient", "nom_usage_patient", "prenom_patient", "nom_naissance", "datenais", "sexe" FROM "etab_source"."tb_patient") as x) [numPartitions=1] (1)
+- * Sort (12)
+- AQEShuffleRead (11)
+- ShuffleQueryStage (10), Statistics(sizeInBytes=62.5 KiB, rowCount=2.00E+3)
+- Exchange (9)
+- * Project (8)
+- * Scan JDBCRelation((SELECT "idt_patient", "adresse_1", "adresse_2", "code_postal", "ville", "statut" FROM "etab_source"."adresse_patient") as x) [numPartitions=1] (7)
+- == Initial Plan ==
HashAggregate (27)
+- Exchange (26)
+- HashAggregate (25)
+- Project (24)
+- SortMergeJoin LeftOuter (23)
:- Sort (20)
: +- Exchange (19)
: +- Project (2)
: +- Scan JDBCRelation((SELECT "idt_patient", "nom_usage_patient", "prenom_patient", "nom_naissance", "datenais", "sexe" FROM "etab_source"."tb_patient") as x) [numPartitions=1] (1)
+- Sort (22)
+- Exchange (21)
+- Project (8)
+- Scan JDBCRelation((SELECT "idt_patient", "adresse_1", "adresse_2", "code_postal", "ville", "statut" FROM "etab_source"."adresse_patient") as x) [numPartitions=1] (7)
(1) Scan JDBCRelation((SELECT "idt_patient", "nom_usage_patient", "prenom_patient", "nom_naissance", "datenais", "sexe" FROM "etab_source"."tb_patient") as x) [numPartitions=1] [codegen id : 1]
Output [1]: [idt_patient#54089]
ReadSchema: struct<idt_patient:string>
(2) Project [codegen id : 1]
Output [1]: [idt_patient#54089 AS COL_CC28EC76_C163_4384_B287_2C28C791971E#54258]
Input [1]: [idt_patient#54089]
(3) Exchange
Input [1]: [COL_CC28EC76_C163_4384_B287_2C28C791971E#54258]
Arguments: hashpartitioning(COL_CC28EC76_C163_4384_B287_2C28C791971E#54258, 10), ENSURE_REQUIREMENTS, [plan_id=3909]
(4) ShuffleQueryStage
Output [1]: [COL_CC28EC76_C163_4384_B287_2C28C791971E#54258]
Arguments: 0
(5) AQEShuffleRead
Input [1]: [COL_CC28EC76_C163_4384_B287_2C28C791971E#54258]
Arguments: coalesced
(6) Sort [codegen id : 3]
Input [1]: [COL_CC28EC76_C163_4384_B287_2C28C791971E#54258]
Arguments: [COL_CC28EC76_C163_4384_B287_2C28C791971E#54258 ASC NULLS FIRST], false, 0
(7) Scan JDBCRelation((SELECT "idt_patient", "adresse_1", "adresse_2", "code_postal", "ville", "statut" FROM "etab_source"."adresse_patient") as x) [numPartitions=1] [codegen id : 2]
Output [1]: [idt_patient#54029]
PushedFilters: [*IsNotNull(statut), *EqualTo(statut,ACTIF), *IsNotNull(idt_patient)]
ReadSchema: struct<idt_patient:string>
(8) Project [codegen id : 2]
Output [1]: [idt_patient#54029 AS ADRESSE_PATIENT_441212_IDT_PATIENT_441213#54279]
Input [1]: [idt_patient#54029]
(9) Exchange
Input [1]: [ADRESSE_PATIENT_441212_IDT_PATIENT_441213#54279]
Arguments: hashpartitioning(ADRESSE_PATIENT_441212_IDT_PATIENT_441213#54279, 10), ENSURE_REQUIREMENTS, [plan_id=3916]
(10) ShuffleQueryStage
Output [1]: [ADRESSE_PATIENT_441212_IDT_PATIENT_441213#54279]
Arguments: 1
(11) AQEShuffleRead
Input [1]: [ADRESSE_PATIENT_441212_IDT_PATIENT_441213#54279]
Arguments: coalesced
(12) Sort [codegen id : 4]
Input [1]: [ADRESSE_PATIENT_441212_IDT_PATIENT_441213#54279]
Arguments: [ADRESSE_PATIENT_441212_IDT_PATIENT_441213#54279 ASC NULLS FIRST], false, 0
(13) SortMergeJoin [codegen id : 5]
Left keys [1]: [COL_CC28EC76_C163_4384_B287_2C28C791971E#54258]
Right keys [1]: [ADRESSE_PATIENT_441212_IDT_PATIENT_441213#54279]
Join type: LeftOuter
Join condition: None
(14) Project [codegen id : 5]
Output: []
Input [2]: [COL_CC28EC76_C163_4384_B287_2C28C791971E#54258, ADRESSE_PATIENT_441212_IDT_PATIENT_441213#54279]
(15) HashAggregate [codegen id : 5]
Input: []
Keys: []
Functions [1]: [partial_count(1)]
Aggregate Attributes [1]: [count#54359L]
Results [1]: [count#54360L]
(16) Exchange
Input [1]: [count#54360L]
Arguments: SinglePartition, ENSURE_REQUIREMENTS, [plan_id=4003]
(17) ShuffleQueryStage
Output [1]: [count#54360L]
Arguments: 2
(18) HashAggregate [codegen id : 6]
Input [1]: [count#54360L]
Keys: []
Functions [1]: [count(1)]
Aggregate Attributes [1]: [count(1)#54356L]
Results [1]: [count(1)#54356L AS count#54357L]
(19) Exchange
Input [1]: [COL_CC28EC76_C163_4384_B287_2C28C791971E#54258]
Arguments: hashpartitioning(COL_CC28EC76_C163_4384_B287_2C28C791971E#54258, 10), ENSURE_REQUIREMENTS, [plan_id=3878]
(20) Sort
Input [1]: [COL_CC28EC76_C163_4384_B287_2C28C791971E#54258]
Arguments: [COL_CC28EC76_C163_4384_B287_2C28C791971E#54258 ASC NULLS FIRST], false, 0
(21) Exchange
Input [1]: [ADRESSE_PATIENT_441212_IDT_PATIENT_441213#54279]
Arguments: hashpartitioning(ADRESSE_PATIENT_441212_IDT_PATIENT_441213#54279, 10), ENSURE_REQUIREMENTS, [plan_id=3879]
(22) Sort
Input [1]: [ADRESSE_PATIENT_441212_IDT_PATIENT_441213#54279]
Arguments: [ADRESSE_PATIENT_441212_IDT_PATIENT_441213#54279 ASC NULLS FIRST], false, 0
(23) SortMergeJoin
Left keys [1]: [COL_CC28EC76_C163_4384_B287_2C28C791971E#54258]
Right keys [1]: [ADRESSE_PATIENT_441212_IDT_PATIENT_441213#54279]
Join type: LeftOuter
Join condition: None
(24) Project
Output: []
Input [2]: [COL_CC28EC76_C163_4384_B287_2C28C791971E#54258, ADRESSE_PATIENT_441212_IDT_PATIENT_441213#54279]
(25) HashAggregate
Input: []
Keys: []
Functions [1]: [partial_count(1)]
Aggregate Attributes [1]: [count#54359L]
Results [1]: [count#54360L]
(26) Exchange
Input [1]: [count#54360L]
Arguments: SinglePartition, ENSURE_REQUIREMENTS, [plan_id=3886]
(27) HashAggregate
Input [1]: [count#54360L]
Keys: []
Functions [1]: [count(1)]
Aggregate Attributes [1]: [count(1)#54356L]
Results [1]: [count(1)#54356L AS count#54357L]
(28) AdaptiveSparkPlan
Output [1]: [count#54357L]
Arguments: isFinalPlan=true