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 total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 26885.0: task 62073))<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 total (min, med, max (stageId: taskId))<br>16.0 B (0.0 B, 16.0 B, 16.0 B (stage 26885.0: task 62073))<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 total (min, med, max (stageId: taskId))<br>59.0 B (0.0 B, 59.0 B, 59.0 B (stage 26885.0: task 62073))"];
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: 11,263"];
7 [labelType="html" label="<br><b>AdaptiveSparkPlan</b><br><br>"];
subgraph cluster8 {
isCluster="true";
label="WholeStageCodegen (1)\n \nduration: total (min, med, max (stageId: taskId))\n71 ms (0 ms, 71 ms, 71 ms (stage 26884.0: task 62072))";
9 [labelType="html" label="<b>Filter</b><br><br>number of output rows: 11,263"];
}
10 [labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 11,263"];
subgraph cluster11 {
isCluster="true";
label="WholeStageCodegen (1)\n \nduration: total (min, med, max (stageId: taskId))\n0 ms (0 ms, 0 ms, 0 ms (stage 26884.0: task 62072))";
12 [labelType="html" label="<b>Scan JDBCRelation((<br> SELECT DISTINCT<br> v.brand_context_id,<br> v.supplier_id,<br> v.entity_name,<br> v.city,<br> v.state,<br> v.country,<br> v.supplier_type,<br> v.declaring_supplier_id,<br> v.canonical_id,<br> v.is_primary,<br> COALESCE(v.threshold, 0.9) AS threshold,<br> v.create_date<br> FROM vw_all_suppliers_for_dedup v<br> ) AS all_suppliers) [numPartitions=1] </b><br><br>number of output rows: 0"];
}
2->0;
3->2;
5->3;
6->5;
7->6;
9->7;
10->9;
12->10;
}
13
AdaptiveSparkPlan isFinalPlan=true
HashAggregate(keys=[], functions=[count(1)])
WholeStageCodegen (2)
Exchange SinglePartition, ENSURE_REQUIREMENTS, [plan_id=4000305]
HashAggregate(keys=[], functions=[partial_count(1)])
WholeStageCodegen (1)
InMemoryTableScan
AdaptiveSparkPlan isFinalPlan=true
Filter isnotnull(canonical_id#12050988)
WholeStageCodegen (1)
InMemoryTableScan [brand_context_id#12050980, supplier_id#12050981, canonical_id#12050988, is_primary#12050989, entity_name#12050982, city#12050983, state#12050984, country#12050985, threshold#12050990, create_date#12050991], [isnotnull(canonical_id#12050988)]
Scan JDBCRelation((
SELECT DISTINCT
v.brand_context_id,
v.supplier_id,
v.entity_name,
v.city,
v.state,
v.country,
v.supplier_type,
v.declaring_supplier_id,
v.canonical_id,
v.is_primary,
COALESCE(v.threshold, 0.9) AS threshold,
v.create_date
FROM vw_all_suppliers_for_dedup v
) AS all_suppliers) [numPartitions=1] [brand_context_id#12050980,supplier_id#12050981,entity_name#12050982,city#12050983,state#12050984,country#12050985,supplier_type#12050986,declaring_supplier_id#12050987,canonical_id#12050988,is_primary#12050989,threshold#12050990,create_date#12050991] PushedFilters: [], ReadSchema: struct<brand_context_id:string,supplier_id:string,entity_name:string,city:string,state:string,cou...
WholeStageCodegen (1)
== Physical Plan ==
AdaptiveSparkPlan (16)
+- == Final Plan ==
* HashAggregate (12)
+- ShuffleQueryStage (11), Statistics(sizeInBytes=16.0 B, rowCount=1)
+- Exchange (10)
+- * HashAggregate (9)
+- TableCacheQueryStage (8), Statistics(sizeInBytes=1643.7 KiB, rowCount=1.13E+4)
+- InMemoryTableScan (1)
+- InMemoryRelation (2)
+- AdaptiveSparkPlan (7)
+- Filter (6)
+- InMemoryTableScan (3)
+- InMemoryRelation (4)
+- * Scan JDBCRelation((
SELECT DISTINCT
v.brand_context_id,
v.supplier_id,
v.entity_name,
v.city,
v.state,
v.country,
v.supplier_type,
v.declaring_supplier_id,
v.canonical_id,
v.is_primary,
COALESCE(v.threshold, 0.9) AS threshold,
v.create_date
FROM vw_all_suppliers_for_dedup v
) AS all_suppliers) [numPartitions=1] (5)
+- == Initial Plan ==
HashAggregate (15)
+- Exchange (14)
+- HashAggregate (13)
+- InMemoryTableScan (1)
+- InMemoryRelation (2)
+- AdaptiveSparkPlan (7)
+- Filter (6)
+- InMemoryTableScan (3)
+- InMemoryRelation (4)
+- * Scan JDBCRelation((
SELECT DISTINCT
v.brand_context_id,
v.supplier_id,
v.entity_name,
v.city,
v.state,
v.country,
v.supplier_type,
v.declaring_supplier_id,
v.canonical_id,
v.is_primary,
COALESCE(v.threshold, 0.9) AS threshold,
v.create_date
FROM vw_all_suppliers_for_dedup v
) AS all_suppliers) [numPartitions=1] (5)
(1) InMemoryTableScan
Output: []
(2) InMemoryRelation
Arguments: [brand_context_id#12050980, supplier_id#12050981, canonical_id#12050988, is_primary#12050989, entity_name#12050982, city#12050983, state#12050984, country#12050985, threshold#12050990, create_date#12050991], CachedRDDBuilder(org.apache.spark.sql.execution.columnar.DefaultCachedBatchSerializer@730ae8bf,StorageLevel(disk, memory, deserialized, 1 replicas),AdaptiveSparkPlan isFinalPlan=true
+- == Final Plan ==
*(1) Filter isnotnull(canonical_id#12050988)
+- TableCacheQueryStage 0
+- InMemoryTableScan [brand_context_id#12050980, supplier_id#12050981, canonical_id#12050988, is_primary#12050989, entity_name#12050982, city#12050983, state#12050984, country#12050985, threshold#12050990, create_date#12050991], [isnotnull(canonical_id#12050988)]
+- InMemoryRelation [brand_context_id#12050980, supplier_id#12050981, entity_name#12050982, city#12050983, state#12050984, country#12050985, supplier_type#12050986, declaring_supplier_id#12050987, canonical_id#12050988, is_primary#12050989, threshold#12050990, create_date#12050991], StorageLevel(disk, memory, deserialized, 1 replicas)
+- *(1) Scan JDBCRelation((
SELECT DISTINCT
v.brand_context_id,
v.supplier_id,
v.entity_name,
v.city,
v.state,
v.country,
v.supplier_type,
v.declaring_supplier_id,
v.canonical_id,
v.is_primary,
COALESCE(v.threshold, 0.9) AS threshold,
v.create_date
FROM vw_all_suppliers_for_dedup v
) AS all_suppliers) [numPartitions=1] [brand_context_id#12050980,supplier_id#12050981,entity_name#12050982,city#12050983,state#12050984,country#12050985,supplier_type#12050986,declaring_supplier_id#12050987,canonical_id#12050988,is_primary#12050989,threshold#12050990,create_date#12050991] PushedFilters: [], ReadSchema: struct<brand_context_id:string,supplier_id:string,entity_name:string,city:string,state:string,cou...
+- == Initial Plan ==
Filter isnotnull(canonical_id#12050988)
+- InMemoryTableScan [brand_context_id#12050980, supplier_id#12050981, canonical_id#12050988, is_primary#12050989, entity_name#12050982, city#12050983, state#12050984, country#12050985, threshold#12050990, create_date#12050991], [isnotnull(canonical_id#12050988)]
+- InMemoryRelation [brand_context_id#12050980, supplier_id#12050981, entity_name#12050982, city#12050983, state#12050984, country#12050985, supplier_type#12050986, declaring_supplier_id#12050987, canonical_id#12050988, is_primary#12050989, threshold#12050990, create_date#12050991], StorageLevel(disk, memory, deserialized, 1 replicas)
+- *(1) Scan JDBCRelation((
SELECT DISTINCT
v.brand_context_id,
v.supplier_id,
v.entity_name,
v.city,
v.state,
v.country,
v.supplier_type,
v.declaring_supplier_id,
v.canonical_id,
v.is_primary,
COALESCE(v.threshold, 0.9) AS threshold,
v.create_date
FROM vw_all_suppliers_for_dedup v
) AS all_suppliers) [numPartitions=1] [brand_context_id#12050980,supplier_id#12050981,entity_name#12050982,city#12050983,state#12050984,country#12050985,supplier_type#12050986,declaring_supplier_id#12050987,canonical_id#12050988,is_primary#12050989,threshold#12050990,create_date#12050991] PushedFilters: [], ReadSchema: struct<brand_context_id:string,supplier_id:string,entity_name:string,city:string,state:string,cou...
,None)
(3) InMemoryTableScan
Output [10]: [brand_context_id#12050980, supplier_id#12050981, canonical_id#12050988, is_primary#12050989, entity_name#12050982, city#12050983, state#12050984, country#12050985, threshold#12050990, create_date#12050991]
Arguments: [brand_context_id#12050980, supplier_id#12050981, canonical_id#12050988, is_primary#12050989, entity_name#12050982, city#12050983, state#12050984, country#12050985, threshold#12050990, create_date#12050991], [isnotnull(canonical_id#12050988)]
(4) InMemoryRelation
Arguments: [brand_context_id#12050980, supplier_id#12050981, entity_name#12050982, city#12050983, state#12050984, country#12050985, supplier_type#12050986, declaring_supplier_id#12050987, canonical_id#12050988, is_primary#12050989, threshold#12050990, create_date#12050991], CachedRDDBuilder(org.apache.spark.sql.execution.columnar.DefaultCachedBatchSerializer@730ae8bf,StorageLevel(disk, memory, deserialized, 1 replicas),*(1) Scan JDBCRelation((
SELECT DISTINCT
v.brand_context_id,
v.supplier_id,
v.entity_name,
v.city,
v.state,
v.country,
v.supplier_type,
v.declaring_supplier_id,
v.canonical_id,
v.is_primary,
COALESCE(v.threshold, 0.9) AS threshold,
v.create_date
FROM vw_all_suppliers_for_dedup v
) AS all_suppliers) [numPartitions=1] [brand_context_id#12050980,supplier_id#12050981,entity_name#12050982,city#12050983,state#12050984,country#12050985,supplier_type#12050986,declaring_supplier_id#12050987,canonical_id#12050988,is_primary#12050989,threshold#12050990,create_date#12050991] PushedFilters: [], ReadSchema: struct<brand_context_id:string,supplier_id:string,entity_name:string,city:string,state:string,cou...
,None)
(5) Scan JDBCRelation((
SELECT DISTINCT
v.brand_context_id,
v.supplier_id,
v.entity_name,
v.city,
v.state,
v.country,
v.supplier_type,
v.declaring_supplier_id,
v.canonical_id,
v.is_primary,
COALESCE(v.threshold, 0.9) AS threshold,
v.create_date
FROM vw_all_suppliers_for_dedup v
) AS all_suppliers) [numPartitions=1] [codegen id : 1]
Output [12]: [brand_context_id#12050980, supplier_id#12050981, entity_name#12050982, city#12050983, state#12050984, country#12050985, supplier_type#12050986, declaring_supplier_id#12050987, canonical_id#12050988, is_primary#12050989, threshold#12050990, create_date#12050991]
ReadSchema: struct<brand_context_id:string,supplier_id:string,entity_name:string,city:string,state:string,country:string,supplier_type:string,declaring_supplier_id:string,canonical_id:string,is_primary:boolean,threshold:double,create_date:date>
(6) Filter
Input [10]: [brand_context_id#12050980, supplier_id#12050981, canonical_id#12050988, is_primary#12050989, entity_name#12050982, city#12050983, state#12050984, country#12050985, threshold#12050990, create_date#12050991]
Condition : isnotnull(canonical_id#12050988)
(7) AdaptiveSparkPlan
Output [10]: [brand_context_id#12050980, supplier_id#12050981, canonical_id#12050988, is_primary#12050989, entity_name#12050982, city#12050983, state#12050984, country#12050985, threshold#12050990, create_date#12050991]
Arguments: isFinalPlan=false
(8) TableCacheQueryStage
Output: []
Arguments: 0
(9) HashAggregate [codegen id : 1]
Input: []
Keys: []
Functions [1]: [partial_count(1)]
Aggregate Attributes [1]: [count#12052299L]
Results [1]: [count#12052300L]
(10) Exchange
Input [1]: [count#12052300L]
Arguments: SinglePartition, ENSURE_REQUIREMENTS, [plan_id=4000305]
(11) ShuffleQueryStage
Output [1]: [count#12052300L]
Arguments: 1
(12) HashAggregate [codegen id : 2]
Input [1]: [count#12052300L]
Keys: []
Functions [1]: [count(1)]
Aggregate Attributes [1]: [count(1)#12052146L]
Results [1]: [count(1)#12052146L AS count#12052147L]
(13) HashAggregate
Input: []
Keys: []
Functions [1]: [partial_count(1)]
Aggregate Attributes [1]: [count#12052299L]
Results [1]: [count#12052300L]
(14) Exchange
Input [1]: [count#12052300L]
Arguments: SinglePartition, ENSURE_REQUIREMENTS, [plan_id=4000274]
(15) HashAggregate
Input [1]: [count#12052300L]
Keys: []
Functions [1]: [count(1)]
Aggregate Attributes [1]: [count(1)#12052146L]
Results [1]: [count(1)#12052146L AS count#12052147L]
(16) AdaptiveSparkPlan
Output [1]: [count#12052147L]
Arguments: isFinalPlan=true