digraph G {
0 [labelType="html" label="<br><b>TakeOrderedAndProject</b><br><br>"];
subgraph cluster1 {
isCluster="true";
label="WholeStageCodegen (1)\n \nduration: total (min, med, max (stageId: taskId))\n39 ms (12 ms, 27 ms, 27 ms (stage 50.0: task 55))";
2 [labelType="html" label="<br><b>Project</b><br><br>"];
3 [labelType="html" label="<b>Filter</b><br><br>number of output rows: 125"];
4 [labelType="html" label="<b>ColumnarToRow</b><br><br>number of output rows: 46,236<br>number of input batches: 13"];
}
5 [labelType="html" label="<b>Scan parquet spark_catalog.default.airports</b><br><br>number of files read: 2<br>scan time total (min, med, max (stageId: taskId))<br>31 ms (12 ms, 19 ms, 19 ms (stage 50.0: task 55))<br>metadata time: 0 ms<br>size of files read: 2.1 MiB<br>number of output rows: 46,236"];
2->0;
3->2;
4->3;
5->4;
}
6
TakeOrderedAndProject(limit=5, orderBy=[C_14#2673 DESC NULLS LAST], output=[C_16#2660,C_17#2661,C_15#2662,C_21#2663,C_22#2664,C_19#2665,C_18#2666,C_20#2667,C_23#2668,C_25#2669,C_24#2670,C_13#2671,C_12#2672,C_14#2673])
Project [id#2674 AS C_16#2660, type#2675 AS C_17#2661, name#2676 AS C_15#2662, (round((lat#2677 * 1000.0), 0) / 1000.0) AS C_21#2663, (round((lon#2678 * 1000.0), 0) / 1000.0) AS C_22#2664, (round((elev#2679 * 1000.0), 0) / 1000.0) AS C_19#2665, continent#2680 AS C_18#2666, country#2681 AS C_20#2667, region#2682 AS C_23#2668, city#2683 AS C_25#2669, iata#2684 AS C_24#2670, code#2685 AS C_13#2671, gps#2686 AS C_12#2672, elev#2679 AS C_14#2673]
Filter (((((isnotnull(lon#2678) AND isnotnull(lat#2677)) AND (lon#2678 <= -104.05)) AND (lon#2678 >= -111.05)) AND (lat#2677 >= 41.0)) AND (lat#2677 <= 45.0))
ColumnarToRow
WholeStageCodegen (1)
FileScan parquet spark_catalog.default.airports[id#2674,type#2675,name#2676,lat#2677,lon#2678,elev#2679,continent#2680,country#2681,region#2682,city#2683,iata#2684,code#2685,gps#2686] Batched: true, DataFilters: [isnotnull(lon#2678), isnotnull(lat#2677), (lon#2678 <= -104.05), (lon#2678 >= -111.05), (lat#267..., Format: Parquet, Location: InMemoryFileIndex(1 paths)[file:/home/acdcadmin/spark-warehouse/airports], PartitionFilters: [], PushedFilters: [IsNotNull(lon), IsNotNull(lat), LessThanOrEqual(lon,-104.05), GreaterThanOrEqual(lon,-111.05), G..., ReadSchema: struct<id:string,type:string,name:string,lat:double,lon:double,elev:double,continent:string,count...
== Physical Plan ==
TakeOrderedAndProject (5)
+- * Project (4)
+- * Filter (3)
+- * ColumnarToRow (2)
+- Scan parquet spark_catalog.default.airports (1)
(1) Scan parquet spark_catalog.default.airports
Output [13]: [id#2674, type#2675, name#2676, lat#2677, lon#2678, elev#2679, continent#2680, country#2681, region#2682, city#2683, iata#2684, code#2685, gps#2686]
Batched: true
Location: InMemoryFileIndex [file:/home/acdcadmin/spark-warehouse/airports]
PushedFilters: [IsNotNull(lon), IsNotNull(lat), LessThanOrEqual(lon,-104.05), GreaterThanOrEqual(lon,-111.05), GreaterThanOrEqual(lat,41.0), LessThanOrEqual(lat,45.0)]
ReadSchema: struct<id:string,type:string,name:string,lat:double,lon:double,elev:double,continent:string,country:string,region:string,city:string,iata:string,code:string,gps:string>
(2) ColumnarToRow [codegen id : 1]
Input [13]: [id#2674, type#2675, name#2676, lat#2677, lon#2678, elev#2679, continent#2680, country#2681, region#2682, city#2683, iata#2684, code#2685, gps#2686]
(3) Filter [codegen id : 1]
Input [13]: [id#2674, type#2675, name#2676, lat#2677, lon#2678, elev#2679, continent#2680, country#2681, region#2682, city#2683, iata#2684, code#2685, gps#2686]
Condition : (((((isnotnull(lon#2678) AND isnotnull(lat#2677)) AND (lon#2678 <= -104.05)) AND (lon#2678 >= -111.05)) AND (lat#2677 >= 41.0)) AND (lat#2677 <= 45.0))
(4) Project [codegen id : 1]
Output [14]: [id#2674 AS C_16#2660, type#2675 AS C_17#2661, name#2676 AS C_15#2662, (round((lat#2677 * 1000.0), 0) / 1000.0) AS C_21#2663, (round((lon#2678 * 1000.0), 0) / 1000.0) AS C_22#2664, (round((elev#2679 * 1000.0), 0) / 1000.0) AS C_19#2665, continent#2680 AS C_18#2666, country#2681 AS C_20#2667, region#2682 AS C_23#2668, city#2683 AS C_25#2669, iata#2684 AS C_24#2670, code#2685 AS C_13#2671, gps#2686 AS C_12#2672, elev#2679 AS C_14#2673]
Input [13]: [id#2674, type#2675, name#2676, lat#2677, lon#2678, elev#2679, continent#2680, country#2681, region#2682, city#2683, iata#2684, code#2685, gps#2686]
(5) TakeOrderedAndProject
Input [14]: [C_16#2660, C_17#2661, C_15#2662, C_21#2663, C_22#2664, C_19#2665, C_18#2666, C_20#2667, C_23#2668, C_25#2669, C_24#2670, C_13#2671, C_12#2672, C_14#2673]
Arguments: 5, [C_14#2673 DESC NULLS LAST], [C_16#2660, C_17#2661, C_15#2662, C_21#2663, C_22#2664, C_19#2665, C_18#2666, C_20#2667, C_23#2668, C_25#2669, C_24#2670, C_13#2671, C_12#2672, C_14#2673]