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))\n45 ms (13 ms, 32 ms, 32 ms (stage 51.0: task 57))";
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>38 ms (13 ms, 25 ms, 25 ms (stage 51.0: task 57))<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_23#2897 DESC NULLS LAST], output=[C_25#2884,C_22#2885,C_19#2886,C_16#2887,C_18#2888,C_13#2889,C_21#2890,C_20#2891,C_17#2892,C_14#2893,C_12#2894,C_24#2895,C_15#2896,C_23#2897])
Project [id#2898 AS C_25#2884, type#2899 AS C_22#2885, name#2900 AS C_19#2886, (round((lat#2901 * 1000.0), 0) / 1000.0) AS C_16#2887, (round((lon#2902 * 1000.0), 0) / 1000.0) AS C_18#2888, (round((elev#2903 * 1000.0), 0) / 1000.0) AS C_13#2889, continent#2904 AS C_21#2890, country#2905 AS C_20#2891, region#2906 AS C_17#2892, city#2907 AS C_14#2893, iata#2908 AS C_12#2894, code#2909 AS C_24#2895, gps#2910 AS C_15#2896, elev#2903 AS C_23#2897]
Filter (((((isnotnull(lon#2902) AND isnotnull(lat#2901)) AND (lon#2902 <= -104.05)) AND (lon#2902 >= -111.05)) AND (lat#2901 >= 41.0)) AND (lat#2901 <= 45.0))
ColumnarToRow
WholeStageCodegen (1)
FileScan parquet spark_catalog.default.airports[id#2898,type#2899,name#2900,lat#2901,lon#2902,elev#2903,continent#2904,country#2905,region#2906,city#2907,iata#2908,code#2909,gps#2910] Batched: true, DataFilters: [isnotnull(lon#2902), isnotnull(lat#2901), (lon#2902 <= -104.05), (lon#2902 >= -111.05), (lat#290..., 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#2898, type#2899, name#2900, lat#2901, lon#2902, elev#2903, continent#2904, country#2905, region#2906, city#2907, iata#2908, code#2909, gps#2910]
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#2898, type#2899, name#2900, lat#2901, lon#2902, elev#2903, continent#2904, country#2905, region#2906, city#2907, iata#2908, code#2909, gps#2910]
(3) Filter [codegen id : 1]
Input [13]: [id#2898, type#2899, name#2900, lat#2901, lon#2902, elev#2903, continent#2904, country#2905, region#2906, city#2907, iata#2908, code#2909, gps#2910]
Condition : (((((isnotnull(lon#2902) AND isnotnull(lat#2901)) AND (lon#2902 <= -104.05)) AND (lon#2902 >= -111.05)) AND (lat#2901 >= 41.0)) AND (lat#2901 <= 45.0))
(4) Project [codegen id : 1]
Output [14]: [id#2898 AS C_25#2884, type#2899 AS C_22#2885, name#2900 AS C_19#2886, (round((lat#2901 * 1000.0), 0) / 1000.0) AS C_16#2887, (round((lon#2902 * 1000.0), 0) / 1000.0) AS C_18#2888, (round((elev#2903 * 1000.0), 0) / 1000.0) AS C_13#2889, continent#2904 AS C_21#2890, country#2905 AS C_20#2891, region#2906 AS C_17#2892, city#2907 AS C_14#2893, iata#2908 AS C_12#2894, code#2909 AS C_24#2895, gps#2910 AS C_15#2896, elev#2903 AS C_23#2897]
Input [13]: [id#2898, type#2899, name#2900, lat#2901, lon#2902, elev#2903, continent#2904, country#2905, region#2906, city#2907, iata#2908, code#2909, gps#2910]
(5) TakeOrderedAndProject
Input [14]: [C_25#2884, C_22#2885, C_19#2886, C_16#2887, C_18#2888, C_13#2889, C_21#2890, C_20#2891, C_17#2892, C_14#2893, C_12#2894, C_24#2895, C_15#2896, C_23#2897]
Arguments: 5, [C_23#2897 DESC NULLS LAST], [C_25#2884, C_22#2885, C_19#2886, C_16#2887, C_18#2888, C_13#2889, C_21#2890, C_20#2891, C_17#2892, C_14#2893, C_12#2894, C_24#2895, C_15#2896, C_23#2897]